jmfs.net
当前位置:首页>>关于c语言中,设int型变量a=5, b=6-(-a),那么b的值为...的资料>>

c语言中,设int型变量a=5, b=6-(-a),那么b的值为...

这个问题不应该出现b=11,你要是有这样的代码,贴出来看看,到底出了什么问题,再作讨论。

设int a=5,b=6, 表达式 a=a+b, a-b 的值为 5 。 因为逗号运算符的优先级最低。原式,等价于: (a=a+b), a-b 逗号运算的结合性是从左至右,完毕之后整个表达式的值是最后一个表达式的值。即11-6=5

#include int main( int argc, char* argv ){ int a=5,b=6; (++a==b--)?++a:--b; printf("a =%d,b=%d",a,b);}a =7,b=5

(a=5,b=6,++a,b--,a+b)是所谓逗号表达式,它的计算规则是从左至右一个分表达式一个分表达式地计算,但总表达式的值是最右边的分表达式的值。在这里就是a+b的值,显然a+b=6+5=11。

最後值为7,这是一个if语句,就是 int a=5,b=6; if(++a==b--) ++a; else --b; ++ar的规则是先运算,所以括号中左值++a=6,a=6; ==的优先级低过--,所以先计算b-- b--的规则是先赋值,所以括号中右值b--=6,b=5; 左值6==右值6,即条件为真,执行++a,因为a...

这道题应该这样做(m=(a>b))&&(n=(c>d)),a>b则为假 0,m被赋值0,由于(左边)&&(右边),&&左边的已经为假了,所以&&右边的表达式不能再计算了,所以n还是等于7。 祝你学习愉快。

此为整式运行 a*b/5=2*6/5=2

先由嵌套在内部的printf("%d%d",a,b)打出56,再由外部的printf("%d",printf...);打印出嵌套在内部的printf("%d%d",a,b)的返回值2——因为内部的printf("%d%d",a,b)输出了两个数据a和b,所以返回输出数据个数是2。把这个语句拆开写就一目了然: int...

A: 声明变量并初始化时:int x=3,y=5;但是,只赋值时是不能这样写的,应该写成x=3;y=5; B: 没有分号,不是一个完整的语句。 C: 相当于 i=i-1; D:x没有定义,如果是 int x=3;int y; y=int(x);这样是对的。

A.求模运算要求所有参数都是整型6.8不合适 B.a+=b+=8;相当于a+=(b+=8);相当于b+=8; a+=b; C.++运算符要求后面的是个变量名,这里是表达式错 D.a+b=9中赋值号=要求左边是个变量名,这里是表达式错

网站首页 | 网站地图
All rights reserved Powered by www.jmfs.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com