C语言 int x=3,y=4,z=5; 那 !((x<y)&&!z||1) 是什么意思?
4个回答
展开全部
答案是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
5/2 整数除整数得整数 2
-> 0+5-1&&4+2
-> 4&&6
逻辑运算 &&
扩展资料
C语言运算符的优先级:
如果同一优先级的运算符,结合次序由结合方向所决定。
参考资料来源:百度百科-运算符优先级
展开全部
根据运算符的优先级和结合性来看
!((x<y)&&!z||1)
先算(x<y)为true,!z为false,
然后(x<y)和!z相&&,结果为false,
然后刚才的false和1相||,结果是true,
整体取反,最终结果是false。
好吧。。。看到最后发现不用算,||那有个1,必为true,然后取反,是false。。。
!((x<y)&&!z||1)
先算(x<y)为true,!z为false,
然后(x<y)和!z相&&,结果为false,
然后刚才的false和1相||,结果是true,
整体取反,最终结果是false。
好吧。。。看到最后发现不用算,||那有个1,必为true,然后取反,是false。。。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐于2016-03-23
展开全部
!是非
&&是与
|| 是或
根据运算符号的优先级!>&&>||
先运算x<y和!z
然后运算&& 、其结果运算|| ,可以理解为(x<y&&!z)||1
&&是与
|| 是或
根据运算符号的优先级!>&&>||
先运算x<y和!z
然后运算&& 、其结果运算|| ,可以理解为(x<y&&!z)||1
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
声明int类型变量x.y.并初始化
先判断
先判断
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |