在下列选项中,没有构成死循环的是
A) int i=100;
while(1)
i=1%100+1;
if(i>100) break;B) for(;;);
C) int k=10000;
dok++; while(k>10000);
D) int s=36;
while(s) --s;
参考答案:D
解析: 选项A)的循环表达式的条件永久为1,并且小于100的数与100取余不超过99,所以在循环体内表达式i%100 +1的值永远不大于100,break语句永远不会执行,所以是死循环;选项B)的括号内没有能使循环停下来的变量增量,是死循环;选项C)中先执行k++,使k=10001,从而使循环陷入死循环。