主题:C++中do{...}while();求指点!
V不乖O
[专家分:0] 发布于 2010-11-23 23:02:00
int main()
{
int a=0,b=10;
do{
while((a++)<10);
while((b--)>0);
cout<<"a="<<a<<"b="<<b<<endl;
}while(a<b);
return 0;
}
请问上面代码的运行结果是什么?为什么会是那样的输出结果呢?
回复列表 (共5个回复)
沙发
dongyuanxun [专家分:7180] 发布于 2010-11-24 13:24:00
a=11b=-1啊
有什么奇怪的
进入do循环
while((a++)<10); //完了a=11
while((b--)>0); // 完了b=-1
然后不满足a<b
就退出循环了
板凳
147727227 [专家分:0] 发布于 2010-11-24 15:23:00
我也是菜鸟噢,那b=10,b--,b不是应该等于9吗?
3 楼
147727227 [专家分:0] 发布于 2010-11-24 15:39:00
噢!我明白了!谢谢
4 楼
cfj469933485 [专家分:950] 发布于 2010-11-25 09:24:00
一楼回答的正解!
while((a++)<10);
while((b--)>0);
这两句执行的都是空语句,
只是把a 加到了 11
b 加到了 -1
5 楼
xdwk281 [专家分:0] 发布于 2010-11-25 12:50:00
在CSDN上也见过有人问这个程序
呵呵
我来回复