C语言计算表达式的值10*2%3-2?5:6%3?7:8和10 != 8+7 || 2<5 && 7⼀4 > 6⼀4

2024-11-26 16:45:09
推荐回答(1个)
回答1:

10*2%3-2?5:6%3?7:8
这个从右向左计算,相当于
10*2%3-2?5:(6%3?7:8)
10*2%3-2?5:(0?7:8)
10*2%3-2?5:8
20%3-2?5:8
2-2?5:8
0?5:8
8
10
!=
8+7
||
2<5
&&
7/4
>
6/4
相当于
(
10
!=
(
8+7
)
)
||
(
(
2<5
)
&&
(
7/4
>
6/4
)
)
括号中先算,根据逻辑或运算的规定,如果左边的逻辑值是1,右边的就不计算了。
左边的
10
!=
(
8+7
)
也就是10!=15,是成立的,逻辑值是1,所以
||
右边的与运算就不进行了,整个表达式的值就是1