问题 单项选择题

有以下程序:
#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,无终止条件,进入死循环。

解答题
填空题