99问答网
所有问题
c语言中 有定义 a=b=c=10; 那么 a==(b=c++*2)应该怎么判断
这个输出的答案是a=1,b=20,c=11,我不理解为什么a=1不是0呢
举报该问题
推荐答案 2017-11-14
先算c*2=20,所以b=20。
赋值运算符结果等于左值,所以返回b的值20
a=10,故a==20为假,整个表达式返回0。
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/ezXXtWXOzveOjtv7te.html
其他回答
第1个回答 2020-04-04
0为假,一切非0值都是“真”,(b=c++*2)即为真,就是1,然后a在第一步a=b==c ;里结果为1,1==1,所以a结果还是1
相似回答
大家正在搜
相关问题
c语言问题。 a=b!=c什么意思? a==(b=c++*3...
c语言中 a==(b=c++*2)是什么意思
求解c语言 有定义int a=2 b=3 c=10;则计算表...
C语言a=b==c怎么运算的
C语言,请问这个程序里if (a = b + c) 应该怎么...
在C语言中(b+=a;a+=2;b%=10)是什么意思?
c语言问题,a=b=c=2,a+++b+++c+++的值为多...
C语言中(a>b)?a:b和(a<b)?b:a有什么区别