中易网

C语言:已有定义int x=3,y=4,z=5;则表达式 !(x+y)+z-1&&y+z/2的值是?

答案:6  悬赏:10  
解决时间 2021-02-13 15:54
C语言:已有定义int x=3,y=4,z=5;则表达式 !(x+y)+z-1&&y+z/2的值是?
最佳答案
答案是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语言运算符的优先级:



如果同一优先级的运算符,结合次序由结合方向所决定。
参考资料来源:百度百科-运算符优先级
全部回答
!(3+4)+5-1&&4+5/2 =!7+4&&4+2 =!11&&6 所以说那个式子的值是:不是11并且是6
1,把运算符优先级搞清楚就好了
1 优先级: 算数>条件>关系>赋值 关系中的优先级: 非>与>或
!(x+y)+z-1&&y+z/2 代入数据为!(3+4)+5-1&&4+5/2 !(3+4)为0,剩余5-1&&4+5/2,因为算术运算优先级较高,等价于4&&4+5/2,4&&4为1,结果为3.5 若赋值给执行变量,或直接打印的时用%d,则为3
只是等于1的,我是经过turbo c2.0编译过的,答案应该没什么问题的,程序是: main() { int x,y,z,k; x=3;y=4;z=5; k=0; k=!(x+y)+z-1&&y+z/2; printf("%d",k);} 答案为什么会等于1呢?那是因为运算级别的问题,根据运算级别,实现算括号里面的先,所以程序就变成!7+z-1&&y+z/2; 然后就算!运算,由于7是大于1的,也就是真,所以!真就是假,也就是0,所以函数就变成0+z-1&&y+z/2; 然后再算除号的,由于你这里两个都是整形的,所以小数点后面的数忽略,所以就变成0+z-1&&y+2; 接着计算加减运算,也就是变成4&&6; 因为4和6都是大于1的数,所以就是真,由于&&两边都是真的话,输出的就是真,所以结果就是1。 要是还有什么不明白的话,就mm我吧!嘻嘻~~~~~~
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
永辉超市苏州枫桥店这个地址在什么地方,我要
起きる,起きている区别在哪?
excel怎么根据学号提取班级
小玩逸儿甜品屋地址有知道的么?有点事想过去
OPPO r809t我手机上网几分钟又掉线,掉线了又
玫瑰小镇魅力51级要多少时间
什么叫外链?如何发布外链?外链的形式有哪些
全国有多少钓鱼频道
继电器和漏电保护器的区别
高考调剂是什么意思
福利费 职工教育经费需要计提吗
我的三星i939d用了刷机大师刷了番茄花园的ROM
请问城镇居民户口转农村居民户口合法吗?
三国史 刘备属于哪国 曹操属于哪国
君子于信义不食也什么意思
推荐资讯
河南商丘市里现在那些酒店生意最火爆啊?具体
一个不知名的制片人要投资我的剧本,还有提到
笔记本电脑怎么连无线宽带
南通如皋包商村镇银行如皋港支行这个地址在什
利群便利在什么地方啊,我要过去处理事情
笔记本电脑风扇可以关吗,怎么开?
我的世界神奇宝贝怎么生成圆怒鲨
米兰之居窗帘这个地址在什么地方,我要处理点
连云港开发区健康教育所在什么地方啊,我要过
广东农垦集团公司怎么样? 待遇多少?是不是
我女朋友怀了一个70岁老头的孩子,而且是那老
赞美月亮的诗句
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?