| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 894 人关注过本帖
标题:[求助]
只看楼主 加入收藏
飞翔男孩
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2005-3-18
收藏
 问题点数:0 回复次数:11 
[求助]
没有构成死循环的是( )

A)int    k=1000;
   do   {++k}    while(k>=1000);
B)int    s=36;
   while(s);--s;

其实A项我已经知道没有构成死循环,
请问B项为何会构成死循环
2005-03-18 20:20
flyicefire
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2005-3-17
收藏
得分:0 
回复:你的 while(s);

后面又个;号啊

所以它的循环体是没有内容的,但由于S一直都为真,所以就一直执行了,肯定就是死循环了哈
2005-03-18 20:33
aczhe
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2004-12-23
收藏
得分:0 
while(s)后多了一个

君子敬其在己者,而不慕其在天者,是已日进也。
2005-03-18 20:37
有事要做
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2005-3-19
收藏
得分:0 
A)int    k=1000;
   do   {++k}    while(k>=1000);

也构成死循环吧?

有人说: 时间是挤出来的, 但我没空去挤!
2005-03-19 10:26
shohokuooo
Rank: 1
等 级:新手上路
威 望:1
帖 子:93
专家分:0
注 册:2005-1-29
收藏
得分:0 

A确实是死循环啊
我可是亲自试的
(真受不了楼主,你是不是打错了)

2005-03-19 10:37
shohokuooo
Rank: 1
等 级:新手上路
威 望:1
帖 子:93
专家分:0
注 册:2005-1-29
收藏
得分:0 
难道版主也认为A不是死循环吗? 死循环不就是无限制的循环下去吗? 我试过的 屏幕上的数字打个没完没了的!! 见笑了!!

2005-03-19 10:40
haskio
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-3-18
收藏
得分:0 
偶也认为a是死循环了,没有让他停止的条件

2005-03-19 11:05
飞翔男孩
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2005-3-18
收藏
得分:0 

/* ±ê×¼ÎĵµÄ£°å */

#include "Stdio.h" #include "Conio.h"

main() { int k; k=1000; do {++k;} while (k>=1000); printf("%d",k); getch(); } B项改了一下 但不知为何输出‘-32768’

2005-03-19 13:18
poppylx
Rank: 1
等 级:新手上路
帖 子:367
专家分:0
注 册:2004-9-27
收藏
得分:0 
首先你的k初始化等于1000
循环体k++后k应该都是大于1000的
即出现死循环
来理论上  应该是没有输出的   程序也不会自动停止
但在计算机中  整形变量用一个16位二进制表示
范围在 -32768到 32767 之间
32767=0111111111111111   (应该是16位   没数,  其中首位表示符号 )
再加1后得到   1000000000000000
  -32768   这是k<1000
循环结束  答应-32768

动于心而静如水
2005-03-19 21:05
shohokuooo
Rank: 1
等 级:新手上路
威 望:1
帖 子:93
专家分:0
注 册:2005-1-29
收藏
得分:0 
厉害啊
原来如此
我一直以为这是个死循环呢!(汗颜啊)
高手
顶顶楼上的

2005-03-20 20:53
快速回复:[求助]
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016830 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved