中易网

a=-2,b=0: do{ ++b; } while(a++) 为什么执行后a=1,b=3

答案:3  悬赏:80  
解决时间 2021-01-12 19:23
  • 提问者网友:最美的风景
  • 2021-01-12 06:13
a=-2,b=0: do{ ++b; } while(a++) 为什么执行后a=1,b=3
最佳答案
  • 二级知识专家网友:轮獄道
  • 2021-01-12 07:53
while 是执行的条件开关 while必须先开始追问不是要先执行do吗追答不好意思。。没注意看
是要先do while是相当是结束
第一次 ++b b=1 while a++ 判断时a = -2 ++ 后 a = -1
第二次 ++b b=2 while a++ 判断时a = -1 ++ 后 a = 0
第三次 ++b b=3 while a++ 判断时a = 0 ++ 后 a = 1 由于a=0 结束生效追问while是等于0的时候退出循环,非0时执行吗。追答看语言的机制
基本上 0是false 就是假
看你说3次就知道了。
while需要true才能继续运行追问谢谢你,太感谢了
全部回答
  • 1楼网友:山君与见山
  • 2021-01-12 10:28
不对吗?
不是多执行一次,而是先执行再判断
最后a还要自加一次
  • 2楼网友:神也偏爱
  • 2021-01-12 09:18
这句话或许对你有用,程序是按照步骤来的,如果是a++的话,在那一行代码中,a的值是不变的,下一行才发生变化,++a则是在那一行已经发生了变化追问对呀,就是应为这个原因b应该等于4追答你看a,分析好a什么时候跳出来
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息