1 回答
已采納

慕移動6052691
TA貢獻22條經(jīng)驗 獲得超7個贊
#include<stdio.h>
#include<stdlib.h>
void main()
{
int sum = 0;
int n = 1;
for(int i =1;i<=20;i++)
{
n = n*i;
sum += n;
}
printf("1到20的階乘和為%d\n",sum);
system("pause");
}
或者:
#include<stdio.h>
#include<stdlib.h>
int fun(int n)
{
if(n==1)
return 1;
else
return n*fun(n-1);
}
void main()
{
int sum = 0;
int n = 1;
for(int i =1;i<=20;i++)
{
//n = n*i;
n = fun(i);
sum += n;
}
printf("1到20的階乘和為%d\n",sum);
system("pause");
}
顯然第一種效率高
- 1 回答
- 0 關(guān)注
- 1013 瀏覽
添加回答
舉報
0/150
提交
取消