(1)编写一个函数fun,功能是:根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。S=1+1/(1+2)+1/(1+2+3)+…….+1/(1+2+3+4+…… +n)
(2)编写一个函数fun,它的功能是;根据以下公式求p的值,结果作为函数的数值返回。“m 与n为两个正整数,且要求m>n。 p=m!/n!(m-n)!
(1)编写一个函数fun,功能是:根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。S=1+1/(1+2)+1/(1+2+3)+…….+1/(1+2+3+4+…… +n)
(2)编写一个函数fun,它的功能是;根据以下公式求p的值,结果作为函数的数值返回。“m 与n为两个正整数,且要求m>n。 p=m!/n!(m-n)!
#include<stdio.h>
int fun(int n)//阶乘
{
if(n==1||n==0) return 1;//如果参数是0或者1返回1
return n*fun(n-1);//否则返回n和下次递归的积
}
double fun1(int n){
int _sum=0;
double sum=0;
for(int i =1;i<=n;i++){
_sum+=i;
sum+=1.0/_sum;
}
return sum;
}
double fun2(int m,int n){
return 1.0*fun(m)/fun(n)/fun(m-n);
}
int main()
{
int n,m;
printf("请输入n:");
scanf("%d",&n);
printf("fun1():%.2lf\n",fun1(n)); //控制输出两位小数
while(1){ //循环输入直到m>n
printf("请输入m n:");
scanf("%d %d",&m,&n);
if(m>n) break;
}
printf("fun2():%.2lf",fun2(m,n));
return 0;
}
fun1是第一题
fun2是第二题
有帮助的话采纳一下