A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 胡eason 中级黑马   /  2016-8-21 20:09  /  1417 人查看  /  14 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

a++,到底什么时候才自增
下面题里,++b会自增再运算。a++会运算再自增
可是为什么不选A

下面程序的运行后,结果正确的是:B
int a=1,b=2;
int c=(a+b>3?a++:++b);
A. a=2,b=3
B. a=1,b=3
C. a=1,b=2
D. c=2

14 个回复

倒序浏览
因为a+b不大于3所以执行++b 所以 a的值不变b的值加1
回复 使用道具 举报
好好看一下三元运算符的运算过程。
回复 使用道具 举报
wx_W1hr77lR 发表于 2016-8-21 20:14
因为a+b不大于3所以执行++b 所以 a的值不变b的值加1

明白了
回复 使用道具 举报
wx_W1hr77lR 发表于 2016-8-21 20:14
因为a+b不大于3所以执行++b 所以 a的值不变b的值加1

明白了,谢谢
回复 使用道具 举报
三元运算是 必须会被使用的  a+b = 3 并没有大于三  所以b++  a不变
回复 使用道具 举报 1 0
路过的  看了看   也明白了
回复 使用道具 举报
因为a+b不大于3,所以?后边的不执行
回复 使用道具 举报
就像if语句那样  条件错了 对应括号内的语句就不会执行了
回复 使用道具 举报
就像if语句那样  条件错了 对应括号内的语句就不会执行了
回复 使用道具 举报
东西不难,你好好看看肯定能掌握
回复 使用道具 举报
因为a++没有执行啊
回复 使用道具 举报
好好的看一下三元运算符吧,并不是每个自增都会运行
回复 使用道具 举报
三元运算符,条件语句如果为false, 就执行第二个的........
回复 使用道具 举报
a+b>3?a++:++b的意思是如果a+b>3的话,就执行a++,否则执行++b,因为a=1,b=2,所以a+b>3为false,所以c=++b,即b先自增一,然后c再等于b,所以选b
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马