int a=1,b=2,c=3,d=4;则表达式a++<b?a:c<d?--a:--d的结果是什么
栗阑改凌青
2019-05-15
·
TA获得超过3648个赞
知道大有可为答主
回答量:3100
采纳率:28%
帮助的人:192万
关注
在这个
表达式中,
三目运算符的执行顺序是从左往右的
但整个表达式的执行顺序是从右向左执行的
初始值a=1,b=2,c=3,d=4
先执行--a和--d,得到a=0,d=3
再判断c<d是否为真,因为c=3=d=3
所以表达式c<d?--a:--d的值是3
此时a的值是0
则原表达式简化为
a++<b?a:3
对于a++<b是先判断a<b的真值,然后a再增1
由于a=0<b=2,且a++之后a=1
最终的运算结果是1
希望回答对你有帮助!
【原创答人】
收起
为你推荐: