C语言计算表达式的值10*2%3-2?5:6%3?7:8和10 != 8+7 || 2<5 && 7/4 > 6/4
展开全部
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
这个从右向左计算,相当于
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
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询