求助:C语言中int定义初始值问题
下面是我的代码, 不给i和sum赋初始值,为什么默认初始值不一样:代码:
# include <stdio.h>
int main()
{
int sum,i;
printf("initial value of i is:%d\n",i);
printf("initial value of sum is:%d\n",sum);
while(i<=100)
{
sum+=i;
i++;
}
printf("final value of sum is:%d",sum);
return 0;
}
运行结果 i的初始值是0,sum的初始值是1, 虽然正确计算了1+到100的,但是这个没有赋初值的默认值不太理解。
应该是编译器问题。我这里试了一下,i 的初始值是 1,而 sum 的初始值是 0。 zltzlt 发表于 2020-2-2 16:37
应该是编译器问题。我这里试了一下,i 的初始值是 1,而 sum 的初始值是 0。
不好意思写反了,我的运行结果也是i=1,sum=0.我的疑问是为什么初始值不一样?您的答案是说这个是编译器使 sum和i初始值不一样? 不同编程语言默认值不同
在 visual c++2010 中 该题 若sum,i 不赋予初值,则会报错 不赋初始值,变量值应该是个随机大数
页:
[1]