商铺出租信息发布:c语言 来解释一下5

来源:百度文库 编辑:中科新闻网 时间:2024/04/29 21:27:52
(26) 有如下程序
main0
{ int i,sum;
for(i=1;i<=3;sum++) sum+=i;
printf(“%d\n”,sum);
}
该程序的执行结果是
A) 6 B) 3 C) 死循环 D) 0
谁能说明一下个行的意思
说的越详细越好

应该是死循环。
因为:
for(i=1;i<=3;sum++) 一句有问题。

第一,sum自加,自i的值没有变化,因此,i的值永远不会大于3,因此,循环将一直持续下去,造成死循环。

第二,由于sum的值没有初始化,因此,即使不是死循环,程序也还是要出错的。

你问如果要改成正确的应该如何改。这就不好说了。因为这个程序要实现什么作用,并没有说清楚,那么就改成一般情况吧。
即把1-3的所有自然数相加,和为多少,应改成:
main()
{ int i,sum;
sum=0;
for(i=i,i<=3;i++)
sum+=i;
printf(“%d\n”,sum);
}

不知可否合你的意。