大众信息网

c语言 (目的是求a的阶乘和b的阶乘的和) 哪里有问题

答案:5  mip版
解决时间 2021-01-08 10:12
  • 提问者网友:嗿恋仯囡
  • 2021-01-08 04:29
#include
int main(void)
{
int a,b,c,d,e;
printf("input正整数:a,b");
scanf("%d,%d",&a,&b);
c=1;
d=1;
for(a=a;a<1;a--)
c=c*a;
for(b=b;b<1;b--)
d=d*b;
e=c+d;
printf("%d",e);
}
最佳答案
  • 二级知识专家网友:往事叫我剪短发
  • 2021-01-08 05:01
#include
int main(void)
{
int a,b,c,d,e;
printf("input正整数:a,b");
scanf("%d,%d",&a,&b);
c=1;
d=1;
for(;a>0;a--)//a应该是大于0,a=a是多余的
c=c*a;
for(;b>0;b--)//b应该是大于0,b=b是多余的。。
d=d*b;
e=c+d;
printf("%d",e);
}
全部回答
  • 1楼网友:神經兮兮
  • 2021-01-08 08:25
你试试把for后的两句放在for语句中 因为你的程序当c大于2时 d始终只能得一次值 而不会累加 而且你把应a d定义为长整型 我自己写的中间的你试试 for(i=0;i<11;i ) for(j=i;j>0;j ) s*=j; sum =s; 其中s sum都是长整型 用手机上回的 简单写了下 希望能看懂 还有你c能语言 另外,团IDC网上有许多产品团购,便宜有口碑
  • 2楼网友:清和十五
  • 2021-01-08 07:04
for循环条件改为a>=1,b>=1
  • 3楼网友:搥噚仟哖
  • 2021-01-08 05:33
阶乘的函数写得不对。 你这样的没有跳出的条件的,会无限循环 应该这样写 int fac(int p) { if(p==0||p==1) return 1; else return p*fac(p-1); } }
  • 4楼网友:对你在意
  • 2021-01-08 05:24
for(a=a;a>1;a--) c=c*a; for(b=b;b>1;b--) d=d*b; <1 改成 > 1
我要举报
如以上问答内容为低俗/色情/暴力/不良/侵权的信息,可以点下面链接进行举报,我们会做出相应处理,感谢你的支持!
点此我要举报以上问答信息
推荐资讯