8.若a=4,b=10,c=2,则执行b=a
最后为1
因为b=a<c<b ,我们将右边简写为表达式E=a<c<b,b=E
那么对于E从左往右,a<c即4<2为假,而假就是0,然后(a<c)<b表示为0<b即 0<10 这为真,即E=1
所以b=E=1
比较运算符优先级比赋值运算符高,所以先直行比较运算符。比较运算符等级相同,从左到右执行,a<c为假,结果为0,0再与b比较,结果为真,也就是1,再将1赋值给b,所以b等于1。
表达式b=a<c<b的含义是:判断c是否小于b,b是否小于a,若成立则表达式值为1,否则为0。
因此,执行完该语句后变量b的值为0,即b=false。