求大神指导int i=0;do printf("%d,",i);while(i++);printf("%d\n",i);详解输出结果

 我来答
lab961022
2013-01-06 · TA获得超过150个赞
知道答主
回答量:47
采纳率:0%
帮助的人:49万
展开全部
应该是输出“0,1”(不包括引号,包括逗号),do printf("%d,",i);while(i++);这句的意思是执行一次循环体printf("%d,",i);后只要while后括号内的表达式值为true,即非零就反复执行循环体,如果为false,即为零就跳出循环,执行下一条语句,但是i++为后置自加,简单来说就是先用再加,就是说先执行while的判断,跳出循环后i的值变为i+1,所以之后的printf("%d\n",i);输出1
追问
这个是不是无限循环···为什么执行一次就 不继续了····
追答
不是无限循环,刚才我已经说了,i++为“先用后加”,也就是说在i变为1之前已经被用于判断表达式i的值是否为true,如果把i++换为++i就是无限循环了
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式