问题 单项选择题

在下列选项中,没有构成死循环的程序段是( )。

A.int i=100; for(;;) {i=i%10+1; if(i>10)break; }

B.while(1);

C.int k=0; do{++k;}while(k<=10);

D.int s=12; while(s); --s;

答案

参考答案:C

解析: 本题考查死循环的知识。选项A)中,for循环没有任何控制语句就会一直执行下去,所以不可能通过控制表达式的值结束循环。循环体内,i=i%10+1这个表达式的值永远小于10,所以永远不会跳出循环,是死循环;选项B)中,while中表达式永远是非0,不会结束循环;选项C)中,当k>10时,结束循环;选项D)中,while(s);后面没有任何表达式而是直接加了一个分号,会一直执行,形成死循环。

选择题
选择题