造梦西游3八戒攻略大全:int a=2,b=3,c=4;a*=10+(b++)-(++c);执行完语句后a的值是多少?
来源:百度文库 编辑:查人人中国名人网 时间:2024/05/08 12:01:09
假如是18的话,怎么解释
int a=12; a+=a-=a*=a的值是0
int a=12; a+=a-=a*=a的值是0
在TC2.0中执行的结果是a=16,原因是自加运算符++的位置对计算结果的影响,b++是先把b的值赋给表达式后再自加,++c是先自加再把值赋给表达式,所以a=(10+3-5)*2=16
int a=12; a+=a-=a*=a的值是0没有错,
a+=a-=a*=a的执行次序为
a=a*a=12*12=144
a=a-a=144-144=0
a=a+a=0+0=0
第二个,(a*=a)为144,执行后a也被赋值144,那么a-=144,就是0了,此时a已被赋值0。再执行a+=0还是0
第一个不知道为什么是18
<1>
a+=a-=(a=a*a)
a+=a-=(a=12*12=144) 注意a已经不是原来的a了,此时的a为144.
<2>
a+=(a=a-a)
a+=(a=144-144=0)注意a已经又不是原来的a了,此时的a为0.
<3>
a+=a
a=a+a=0+0=0
换成了18的话还是0.
int a=3,b=4,b=5; !(++c-1&&b+c/2)等于什么?为什么?谢谢
unsigned int a=2;int b = -3;
int a=2,b=3,c=4;a*=10+(b++)-(++c);执行完语句后a的值是多少?
int a=5,b; b=++a*--a;
执行 int x,a=2,c=4;x=++a+b+++c++;后a的结果是?b的结果是? c的结果是? x的结果是?
在C语言中 { int a=4,b=5,c=0,d; d=!a && !b || !c;
执行 int x,a=2,b=3,c=4;x=++a+b+++c++;后a的结果是?b的结果是? c的结果是? x的结果是
C语言:int a=2; a+=a-=a*a 执行后.......
C语言:int a=2; a+=a-=a*a 执行后.......
为什么不能定义成int a=b=c=2;而要定义成int a=2,b=2,c=2;