int x=2,y=3,z=4; 则表达式x+y&&(x=y)的值为_____. 【参考答案】 1 为什么?

2024-12-18 04:02:15
推荐回答(3个)
回答1:

表达式x+y&&(x=y)等价于(x+y)&& (x=y),x+y=5,x=y是将y赋给x,故x=3. 5 && 3 = 1
注意两点:1、运算优先级 2、x=y 与 x==y的区别,前者为赋值表达式,后者为逻辑表达式

回答2:

x+y&&(x=y) 先算x+y=5,x=y=3,两边在进行逻辑与运算,5的二进制就是101,3的二进制011,进行运算 101
011
001 也就是1了

回答3:

x+y=5,逻辑真
x=y,x=3,逻辑真,
5&&3,得1