这一条题该怎么做呀

来源:百度知道 编辑:UC知道 时间:2024/06/10 23:59:12
如果int a=1,b=2,c=3,d=4;,则条件表达式a<b?a:c<d?c:d的值为( )?
该怎么做呀?谁能给我讲解一下

a<b?a:c
就是a < b的话值为a否则为b
a<b?a:c<d?c:d

就是(a<b?a:c)<d?c:d

这样明白了吧
1<2所以a<b?a:c = a = 1
1<4所以最后的答案是c就是3

==================================

刚经过测试,答案不对
a<b?a:c<d?c:d
=a<b?a:(c<d?c:d)
=1<2?1:3 = 1

如果int a=1,b=2,c=3,d=4;,则条件表达式a<b?a:c<d?c:d的值为( )?

应该是逻辑判断题,?是什么意思?:什么意思?
你干脆写出或or、与and、非not哪种类型

a<b为真=1
c<d为真=1

QQ上帮你解决

1.a<b吗?是的话表达式为a
2.不是的话表达式的值为:c<d?c:d
3.在a<b不成立的基础上,判断c<d吗?是的话表达式值为c
4.不是的话表达式的值为d

a<b?a:c<d?c:d
搞优先顺序就等于:
(a<b)?a:(c<d)?c:d
再由左到右。
因为(a<b)为真,所以后面的不用执行。
返回a,即是1