下列程序段不是死循环的是( )。 并
下列程序段不是死循环的是()。并解释A.inti=100;while(1) {i=i%100+1; if(i>100)break; }...
下列程序段不是死循环的是( )。
并解释
A.
int i=100;
while(1)
{ i=i%100+1;
if(i>100)break;
}
B.
int k=0;
do{++k;} while(k>=0);
C.
for( ; ;);
D.
int s=36;
while(s) ––s; 展开
并解释
A.
int i=100;
while(1)
{ i=i%100+1;
if(i>100)break;
}
B.
int k=0;
do{++k;} while(k>=0);
C.
for( ; ;);
D.
int s=36;
while(s) ––s; 展开
4个回答
展开全部
其实题主的问题是写错了的才会有两个答案,选项D应该是:int s=36;while(s);—s。C答案各位大佬都解释了,D里面while后面有个;所以根本不会执行到—s,所以D也是死循环。这是资料上面的题目,我主要是来看C的,没想到差点让我以为资料上的D也不是死循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B和D都不是死循环。题B中int类型如果累加溢出就会变成负数,会出循环。题D中,C语言0可以表示false,当S减少到0时就会出循环
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
选BD 解释下B吧,当++k超过int的上限的时候就会溢出,变成负数。D看不懂就呵呵了。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询