第二十五题为什么是这样啊

img

已知a=4 b=5 c=6 d=7 m=1 n=1 e
e=(m=a>b)&&(n=c>d)
(m=a>b)&&(n=c>d)当执行完m=a>b之后,返回的值是0,也就是false,就不去执行&&后面的表达式,只有m的值发生了改变n的值不变,所以是m=0,n=1。
本题考察的其实就是运算符优先级的问题
希望对题主有所帮助,望采纳!

第一步先看m=a>b,因为a=4,b=5,所以a>b为false,赋值给int型的m就是0,因为&&前面部分为0,所以后面部分就不再执行,所以n=1

m=a>b 得m=0
&&逻辑:表达式为假不计算后面的表达式
n=1

B