#include<iostream.h>
int fan(int n)
{int sum1=1;
for(int i=1;i<=n;i++)
sum1=sum1*i;
return sum1;
}
void main()
{
int c; int sum=0;
cout<<"请输入要想加的阶乘数字:"<<endl;
cout<<"输入0结束."<<endl;
for(int i=0;;i++)
{cin>>c;
if(c==0)break;
else
sum=sum+fan(c);
}
cout<<sum;
}
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int fan(int n)
{int sum1=1;
for(int i=1;i<=n;i++)
sum1=sum1*i;
return sum1;
}
void main()
{
int c; int sum=0;
printf("请输入要想加的阶乘数字:\n");
printf("输入0结束.\n");
for(int i=0;;i++)
{scanf("%d",&c);
if(c==0)break;
else
sum=sum+fan(c);
}
printf("%d",sum);
}
----------------解决方案--------------------------------------------------------
MJ
----------------解决方案--------------------------------------------------------
老潭书上第六章有这样的一道题:求1!+2!+3!+...+19!+20!
是一样的道理了。
----------------解决方案--------------------------------------------------------
12楼的朋友,我用你的程序运行时,系统提示编译错误。我初学C,没看出错在哪里,你能否检查一下?
----------------解决方案--------------------------------------------------------
12楼的你好像用的是c++把,tc是编译不出来得
还有就是这题能用递归做吗?
我知道可以用二层嵌套来做既:
for(sum=0,i=1;i<=3;i++)
{t=1;
for(j=1;,j<=i;,j++)
{t=t * j;
}
sum=sum+t;
}
(我现在没编译器不好验证,请楼主试一试!)
----------------解决方案--------------------------------------------------------
啊!!!不会吧!我用的平台是 c++6.0的!!
----------------解决方案--------------------------------------------------------
#include<stdio.h>
main()
{
int i,j,t=1,sum=0;
for(i=1;i<=3;i++)
{
for(j=1;j<=i;j++)
t*=j;
sum+=t;
}
printf("%d",sum);
}
为什么运行的结果是15
----------------解决方案--------------------------------------------------------
我用的是WIN-TC,不同的系统,可能结果不一样吧。
----------------解决方案--------------------------------------------------------
用它能实现1000!吗?
just try !
所以一定要考虑适用范围!
----------------解决方案--------------------------------------------------------