题目:!0<2&&5‖1
根据运算符的优先级及结合性,你给的表达式可以加括号如下:
(((!0)<2) && 5) || 1
所以,由于最右侧的表达式为1,非零,所以整个表达式的结果必然为1
当然,如果想要详细算的话,那就是 !0 结果为真也就是1,1小于2,所以逻辑&&运算的左侧表达式为1,由于5也是非零,所以(((!0)<2) && 5)为1,因此后面的或运算结果为1 。
(((!0)<2) && 5) || 1
所以,由于最右侧的表达式为1,非零,所以整个表达式的结果必然为1
当然,如果想要详细算的话,那就是 !0 结果为真也就是1,1小于2,所以逻辑&&运算的左侧表达式为1,由于5也是非零,所以(((!0)<2) && 5)为1,因此后面的或运算结果为1 。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2014-01-05
true 或的优先级最低 所以最后计算或,右边非零,所以恒为真
第2个回答 2014-01-05
这个式子么??
这是一个逻辑表达式,在C语言中,真值非零,假值为0;这个式子为真,所以为1
这是一个逻辑表达式,在C语言中,真值非零,假值为0;这个式子为真,所以为1
第3个回答 2014-01-05
首先我给你说一下这些符号的优先级:
!是单目操作符,高于双目优先级
<是双目关系操作符,关系操作符优先级高于位操作符
&&和||是双目位操作符,&&优先级高于||
所以这个表达式!0<2&&5||1=>>>>1<2&&5||1=>>>>1&&5||1=>>>>1||1=>>>>1
!是单目操作符,高于双目优先级
<是双目关系操作符,关系操作符优先级高于位操作符
&&和||是双目位操作符,&&优先级高于||
所以这个表达式!0<2&&5||1=>>>>1<2&&5||1=>>>>1&&5||1=>>>>1||1=>>>>1
第4个回答 2014-01-05
0<2为false,0<2&&5为false,0<2&&5‖1为true