回 帖 发 新 帖 刷新版面

主题:[讨论]为什么会有这样的结果?

main()
{
  int i,sum;
  for(i=1;i<=100;i++)
  sum=i+sum;
  printf("%d",sum);
}
在没有给sum赋值的情况下,我运行结果是7168
大家知道为什么?[em10]

回复列表 (共4个回复)

沙发

sum没有赋值是一个随机数

板凳

[quote]sum没有赋值是一个随机数[/quote]

既然是随机的,为什么输出的是定值?

3 楼


随机数的阿~~~
---------------------------------
linn@pirate:~/ccode$ cc -o sum sum.c
linn@pirate:~/ccode$ ./sum
-1208483942
linn@pirate:~/ccode$ ./sum
-1208840294
linn@pirate:~/ccode$ ./sum
-1208008806
linn@pirate:~/ccode$ ./sum
-1208467558
linn@pirate:~/ccode$ ./sum
-1208254566
linn@pirate:~/ccode$ ./sum
-1208885350
linn@pirate:~/ccode$ ./sum
-1208471654
linn@pirate:~/ccode$ ./sum
-1208930406
linn@pirate:~/ccode$ ./sum
-1208176742
linn@pirate:~/ccode$ ./sum
-1208729702
linn@pirate:~/ccode$ ./sum
-1208508518
linn@pirate:~/ccode$ ./sum
-1208008806

4 楼


毛啊,谁说的啊,运行不出来.

我来回复

您尚未登录,请登录后再回复。点此登录或注册