搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 为什么答案是2,8?我认为是0,5
标题:
为什么答案是2,8?我认为是0,5
只看楼主
北国123456
等 级:
新手上路
帖 子:69
专家分:0
注 册:2016-10-6
结帖率:
70%
楼主
已结贴
√
问题点数:16 回复次数:5
为什么答案是2,8?我认为是0,5
#include<stdio.h>
int main()
{
int a=1,b=10;
do
{
b-=a;a++;
}
while(b--<0);
printf("%d,%d",a,b);
return 0;
}
2016-10-28 22:53
炎天
来 自:桃花岛
等 级:
贵宾
威 望:
29
帖 子:1218
专家分:4986
注 册:2016-9-15
第
2
楼
得分:4
a从头到尾只进行a++运算,
b从头到尾进行 b-=a b--运算
把你的认为说出来看看
早知做人那么辛苦! 当初不应该下凡
2016-10-28 23:27
word123
等 级:
贵宾
威 望:
13
帖 子:333
专家分:1622
注 册:2014-4-5
第
3
楼
得分:4
你的循环运行一遍就over了
2016-10-28 23:32
砳砳
等 级:
新手上路
帖 子:9
专家分:5
注 册:2016-10-27
第
4
楼
得分:4
首先,b-=a等价于b=b-a,执行完do{ b-=a;a++; }后,a=2,b=9.
再看,while(b--<0),先比较b是否小于零,然后再减一;由于b=9>0,循环条件不成立,退出循环,b减一等于八。
2016-10-29 00:05
khwei
来 自:北京
等 级:
论坛游民
帖 子:11
专家分:32
注 册:2016-10-24
第
5
楼
得分:4
我觉得是1,4
2016-10-29 00:06
khwei
来 自:北京
等 级:
论坛游民
帖 子:11
专家分:32
注 册:2016-10-24
第
6
楼
得分:0
回复 3楼 word123
哦,理解了。
2016-10-29 00:08
6
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-470401-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.077377 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved