设a,b,c均为int型变量且a=3,b=4,c=5,则表达式a||b+c&&b==c的值是1,为

设a,b,c均为int型变量且a=3,b=4,c=5,则表达式a||b+c&&b==c的值是1,为什么?

您好,这样的:
你这样理解吧,a||b+c&&b-c,由于+,-的优先级比&&高,所以先计算加减的,可以化简为3||9&&-1由于&&优先级比||高,所以先算&&,对于非零的数,他是代表true的,所以就变成了3||1,这部你应该清楚了,就是1。
第1算b==c,第2.算b+c,第3.算b+c的答案&&b==c的答案,最后算a||第3步的答案。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-10
c语言中逻辑运算符(&&,||)低于关系运算符(==),关系运算符低于算术运算符。所以原表达式可以写成a||(b+c)&&(b==c),本回答被提问者采纳