我要求1!+2!+3!+......+20!的值,写出来后结果始终不对。请问怎么改?

2025-04-06 23:23:26
推荐回答(3个)
回答1:

#include 
main()
{
int i, n;
double sum = 1, su = 0;
for (i = 5; i >= 1; i--)
{
n = i;
sum = 1;//每次循环开始,sum都要初始化
for (; n >= 1; n--)
{
sum = sum*n;

}

su = su + sum;
}
printf("su=%.0lf", su);
printf("\n");
return 0;
}
#include 
main()
{
int i, n;
double sum = 1, su = 0;
for (i = 1; i <= 5; i++)
{

sum = sum*i;

su = su + sum;
}
printf("su=%.0lf", su);
printf("\n");
return 0;
}

回答2:

程序 su = su + sum; 后面增加一个sum的初始化 sum=1;

回答3:

把在 n=i; 后添加一个语句:sum=1;