假设a=1,b=1,c=2,计算以下表达式的值,以及执行表达式后a、b、c的值

问题描述:

假设a=1,b=1,c=2,计算以下表达式的值,以及执行表达式后a、b、c的值
(第123题是我做的,第45题我不知道啥意思,
1) a = b + c
表达式值为3,a=3,b=1,c=2
2) a == c && a++
表达式值为0,a=1,b=1,c=2
3) a == b || c++
表达式值为1,a=1,b=1,c=2
4) a = b && a > b a :0
5) a = b >>2 + 4
1个回答 分类:综合 2014-10-19

问题解答:

我来补答
(4)若b>0则&&左边为真,&&右边把a和b比较,若a>b则返回a,若b大则返回0,然后做与运算,把结果赋给a
(5)将b的二进制数右移6位,赋给a
再问: 题目假设a=1,b=1,c=2, 我执行了一下(4),得到a=0,为什么呀? 还有您的解释, a > b ? a : 0,这是什么意思啊,我刚学c程,啥也不懂诶
再答: b>0,因此左边为true(大多数编译器认为大于0为真,b?a:0,这是条件运算符.判断?前面的语句是否为真,若真则返回:前面的表达式,若假则返回:后面的表达式
 
 
展开全文阅读
剩余:2000