若定义:int x=3,y=4,z=5; 那么表达式 (x+y)+z-1&&y+z/2的值?1
来源:学生作业帮助网 编辑:六六作业网 时间:2024/05/06 07:26:31
若定义:int x=3,y=4,z=5; 那么表达式 (x+y)+z-1&&y+z/2的值?1
若定义:int x=3,y=4,z=5; 那么表达式 (x+y)+z-1&&y+z/2的值?1
若定义:int x=3,y=4,z=5; 那么表达式 (x+y)+z-1&&y+z/2的值?1
做这样的题首先应对C运算符的优先运算级别吃透,括号的优先级别最高,逻辑非高于乘除,乘除的优先级别高于加减运算符,加减高于逻辑与,逻辑与高于逻辑或.非零就是真,真就是1,假就是0,做这样的题还要注意结合性,-,++,--,!是右结合性;×,/,+,-是左结合性;>,>=,﹤,﹤=,==,!=,&&,‖,左结合性;=,+=,-=,×=,/=,“,”这些是右结合性.注意消化有助于做这样类型的题目.
!(x+y)+z-1&&y+z/2
= !(3+4)+5-1&&4+5/2
= !7+5-1&&4+2
=!1+5-1&&6
=0+5-1&&6 (非0就是真,真就是1,假就是0)
=4&&1
=1&&1
=1
——贤子.
这里涉及到的运算符: ! () + - && /
优先级:() ! / + - &&
x=3,y=4,z=5
!(x+y)+z-1&&y+z/2
!(3+4)+5-1&&4+5/2
所以表达式计算步骤为
!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2
!7为 0
-> 0+5-1&&4+5/2 <...
全部展开
这里涉及到的运算符: ! () + - && /
优先级:() ! / + - &&
x=3,y=4,z=5
!(x+y)+z-1&&y+z/2
!(3+4)+5-1&&4+5/2
所以表达式计算步骤为
!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2
!7为 0
-> 0+5-1&&4+5/2
5/2 整数除整数得整数 2
-> 0+5-1&&4+2
-> 4&&6
逻辑运算 &&
所以是1
收起