问题
单项选择题
有以下程序:
#include <stdio. h>
main ( )
inti=0.s=0;
for(;;)
if( i = = 3 ‖ i = = 5 ) continue;
if (i ==6) break;
i++; s+ =i;
printf(" % d \n" ,s);
程序运行后的输出结果是( )。
A.10
B.13
C.21
D.程序进入列循环
答案
参考答案:D
解析: 程序第1次执行for循环时,i=0,两条if语句中的表达式都不成立,执行i++;s+ =i;此时i为1,s为1第2次循环,两条if语句中的表达式也不成立,执行i++,s+=i,此时i为2,s为3;……;当i=3时,执行continue,结束本轮循环,不执行i++;继续执行下一轮循环,这样一来i值始终为3,继续continue,无终止条件,进入死循环。