作业帮 > 综合 > 作业

定义函数求F=(m+n)!+m!,m,n均是任意正整数,要求使用递归调用.请问错误在哪 正确的应该怎么写

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 00:27:38
定义函数求F=(m+n)!+m!,m,n均是任意正整数,要求使用递归调用.请问错误在哪 正确的应该怎么写
二.定义函数求F=(m+n)!+m!,m,n均是任意正整数,要求使用递归调用.
#include
float fact(float n)
{float f=0;
if(n==0||n==1)
f=1;
else f=fact(n-1)*n;
return(f);}
float wei(float p,float q)
{float m=p+q,f1=0,f2=0,f3=0;
f1=fact(p);
f2=fact(m);
f3=f1+f2;
return(f3);}
main()
{float n,m;float y;
printf("input n,m:\n");
scanf("%f","%f",&n,&m);
y=wei(n,m);
printf("%lf",y);}
错在scanf里字符串之间的逗号.改为scanf("%f %f", &n, &m)就好了.另外我相信你的m,n的对应关系搞错了.

float wei(float n,float m) {
  float f1=0,f2=0,f3=0;
  f1=fact(m+n);
  f2=fact(m);
  f3=f1+f2;
  return(f3);
}