为了账号安全,请及时绑定邮箱和手机立即绑定

我还是没看懂这个b++>=a*2为什么是0

看你们的意思就是这个b++里面的b>=a*2之后++就没用了吗

正在回答

4 回答

要注意自增自减运算符的运算规律。

b++就是先运算后自增,++b就是先自增后运算。

b++>=a*2的运算顺序是:

>=左边:第一步:b=9;自增后的结果是10。但是要用第一次输出的b的值去和右式比较。

>=右边;易得结果为10

9>10不成立,所以结果为0。

但是如果程序中要求输出b的值,那么b=10。


如果是++b-a*2,那么运算顺序是:

第一步:b=9,

第二步:b=10,

第三步:式子=0


不知道我这样举例你可有明白?



1 回复 有任何疑惑可以回复我~

先计算中间部分,即a*2 && b-a,然后最后带值,比较大小。b++=b=9,a*2&&b-a为假,所以错误;a*2||b-a=10或1,当取1时符合条件,因此正确答案为b。同学还有什么疑问吗?

0 回复 有任何疑惑可以回复我~

b++>=a*2计算过程是先判断b>=a*2,再执行b++即b=b+1,所以在这确实没什么意义

0 回复 有任何疑惑可以回复我~

就是b在b++>=a*2这个式子运算中还是9,但是这个式子一运算完b的值就变成10了即b+1=10。所以在接下来的运算中b所被付的值就是10了

1 回复 有任何疑惑可以回复我~
#1

慕粉1454107902 提问者

意思就是整个b++>=a*2 && b-a<=a都运算完才变吗
2016-09-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

我还是没看懂这个b++>=a*2为什么是0

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信