求阶乘序列前N项和
#include <stdio.h>int main()
{
int i,k,sum=1,result,n;
scanf("%d",&n);
for(k=1;k<=n;++k)
{
for(i=1;i<=k;++i)
{
sum*=i;
}
result = result + sum;
sum=1;
}
printf("%d",result);
return 0;
}
{:10_266:} 求助大佬们 result = result + sum;
result这个变量需要初始值,才可以参与运算
int i,k,sum=1,result,n;
在第一句这儿可以将result 初始化一下
如 result=0; LuLD 发表于 2020-9-28 11:28
result = result + sum;
result这个变量需要初始值,才可以参与运算
啊这……不设置初始值他自己就是随机数么{:10_277:} 始不垂翅 发表于 2020-9-28 11:47
啊这……不设置初始值他自己就是随机数么
以下是我个人理解仅供参考:
在声明变量的时候 会在栈区开辟空间,
如果没初始化,这段空间如果之前有用过的,数据就会有,
没有用过的那就是未知的,
而并不是 你上文说的 随机数,
不管有没有值,最终结果肯定不是你想要的值,
所以,不管是全局变量,还是局部变量,建议 变量都做 初始化 LuLD 发表于 2020-9-28 13:31
以下是我个人理解仅供参考:
在声明变量的时候 会在栈区开辟空间,
如果没初始化,这段空间如果之前有 ...
好的谢谢辣
页:
[1]