| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 272 人关注过本帖
标题:关于逻辑函数与顺序的 问题
取消只看楼主 加入收藏
qq819073730
Rank: 2
等 级:论坛游民
帖 子:50
专家分:10
注 册:2013-1-6
结帖率:90%
收藏
已结贴  问题点数:10 回复次数:2 
关于逻辑函数与顺序的 问题
int x = 2,y = 2,z = 0,a;
a = ++x || ++ y && z++;
printf("%d,%d,%d\n",x,y,z);
执行后的输出结果为:
a: 2,2,0
b:3,3,1
c:3,2,0
d:3,2,1
答案为C
求教教。。我很不明白为什么y,z的值不变 我之前看过有人回答说“由于++x,故x的值变为3。由于判定了++x为真,对于或运算不再继续判断。故y,x的值不变”
但是不是说逻辑运算符&&比||高级吗?  怎么会先实行||
2013-03-05 12:50
qq819073730
Rank: 2
等 级:论坛游民
帖 子:50
专家分:10
注 册:2013-1-6
收藏
得分:0 
回复 2楼 简单学习
我还是不太明白,你说 a=++x ||(++y && z++);与题目一样这个我懂,但是执行程序的时候应该先实行()里面的先啊。
2013-03-05 15:11
qq819073730
Rank: 2
等 级:论坛游民
帖 子:50
专家分:10
注 册:2013-1-6
收藏
得分:0 
呵呵。这样可以了。谢谢啊
2013-03-05 23:51
快速回复:关于逻辑函数与顺序的 问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011477 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved