您的位置:首页 > 其它

求1!+2!+3!+......+n!

2016-06-10 13:31 323 查看
求1!+2!+3!+......+n!

谭浩强教授版《C程序设计》(第二版)P120
6.4求∑n!(即求1!+2!+3!+......+20!)。

我把它改为由键盘输入n。

#include<stdio.h>
int main()
{
int i,j,n;
printf("请输入n:");
scanf("%d",&n);
fflush(stdin);

float jiecheng,sum;
for(i=1;i<=n;i++)
{
printf("第%d次i循环开始…………………………\n",i);
jiecheng=1;
for(j=1;j<=i;j++)
{
printf("第%d次j循环开始…………………………\n",j);
jiecheng=jiecheng*j;
}
printf("jiecheng=%f\n",jiecheng);
sum=sum+jiecheng;
printf("sum=%f\n",sum);
printf("第%d次i循环结束…………………………\n\n",i);
}
return 0;
}


《C程序设计题解与上机指导》(第二版)解法如下:

#include<stdio.h>//求1!+2!+3!+......+n!
int main()
{
int n,i;
float sum=0,xiang=1;
printf("请输入要计算的数:");
scanf("%d",&n);
fflush(stdin);

for(i=1;i<=n;i++)
{
printf("这是第%d次循环……\n",i);
xiang=xiang*i;
printf("xiang=%f\n",xiang);
sum=sum+xiang;
}
printf("sum=1!+2!+3!+......+%d!=%.0f\n\n",n,sum);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: