A-A+
有以下程序()main(){int i s=0;for(i=1;i<10;i+=2)s+=i
问题详情
有以下程序()
main()
{int i,s=0;
for(i=1;i<10;i+=2)s+=i+1;
printf("%dn",s);
}
程序执行后的输出结果是
A.自然数1~9的累加和
B.自然数1~10的累加和
C.自然数1~9中的奇数之和
D.自然数1~10中的偶数之和
参考答案
正确答案:D
D
[解析]
main()
{int i,s=0;
for(i=1;i<10;i+=2)/*i的初始值为1,步进值为2,循环条件是i<10*/
s+=i+1;/*从上述循环条件来看,应为求自然数1~9中的奇数之和;但是有意思的是"s+=i+1"改变了现状,"+"的运算优先级别高于"+=",故"1"在每次s的求和运算中都有一份功劳。现实是,每次s的求和运算都多加了一个1,结果就成了自然数1~10中的偶数之和*/
printf("%d\n",s);
}