求C语言语句运行结果 a+=a-=a*=a;

a+=a-=a*=a;
谁能告诉我上面语句详细的运算过程和最终结果
格式如A=2*5+3/2

a+=a-=a*=a;
相当于三步:
a=a*a;
a=a-a;//a肯定等于0了
a=a+a;//a还是等于0
结果当然是0啦
温馨提示:内容为网友见解,仅供参考
第1个回答  2008-07-11
运算结果等于0
此题结合性为右结合,也就是说从右至左来计算的,先算a*a,后再计算a-a,最后计算a+a;从结果来分析,第一次算完乘法后,再计算减法时相同的数相减结果成0了,最后加法时只有0去加和,故结果为0.
第2个回答  2008-07-11
a+=a-=a*=a; 不管a一开始等于多少,a最后都等于0。

这个表达式是从右往左执行的。
设a一开始等于2;
a*= a 这条语句执行后a = 4;
然后 a-=a 就变为a = 4 - 4 = 0;
最后再执行 a+=a , a = 0 + 0 =0;

关键在中间a-=a,这条赋值表达式执行完毕a=0,所以不管a一开始为多少,这个表达式结果始终为0。
第3个回答  2008-07-11
0
逆向:
a=a*a;
然后:
a=a-a;
无论a为何值,到这步一定为0
最终:
a=0+0=0;
第4个回答  2008-07-11
a=a*a
a=a-a*a
a=a+(a-a*a)=2a-a*a
第5个回答  2008-07-11
先a*=a,此时a值为a*a;
再计算a-=a,即a*a=a*a-a*a,结果为0;
再计算a+=a,即a*a=a*a+a*a。由于a*a的值为0,故表达式值为0。

C语言中a+=a-=a*=a答案是多少?
a初值为12时,a+=a-=a*=a结果为0步骤:这个表达式的运算是从右向左的:1. a*=a:a=a*a=12*12=1442. a-=144: a=a-144=144-144=03. a+=0: a=a+0=0+0=0。

c语言中a+=a-=a*a如何计算
a=a-a*a;a=a+a;例如,a=5;那么 a=a-a*a=5-5*5=-20;a=a+a=-20 + (-20) = -40;最终a为-40,表达式整体值也就是a最终值,一样是-40。

c语言中a+=a-=a*a如何计算
a-=a*a;a+=a;也就是:a=a-a*a;a=a+a;例如a=5;那么:a=a-a*a=5-5*5=-20;a=a+a=-20 + (-20) = -40;最终a为-40,表达式整体值也就是a最终值,一样是-40。

...a=10,则表达式a+=a-=a*=a的值是多少?怎么算出来的?
a+=a-=a*=a展开后应该为:a=a+a=a-a=a*a;首先计算a=a*a,结果a=100,接着计算a=a-a,结果a=0,再计算a=a+a,结果还是0。OK,就是这样计算的。

c语言a+= a-= a* a是什么意思?
a+=a-=a*a是一个连续赋值运算,计算顺序是自右至左的。如果int a=2;a+=a-=a*a;相当于:1.a-=a*a;2.a+=a;然后相当于:1.a=a-a*a;2.a=a+a;由于a初始化为2:1.a=a-a*a=2-2*2=-2;2.a=a+a=-2+(-2)==-4;所以最后结果就是-4。

c语言中 a=2时 a+=a-=a*=a的值是多少 a的值是多少
a+=a-=a*=a折分:赋值运算是自右向左的首先a*a=4,a=4,然后a-a=0,这时a=0,最后a+a=0 结果a=0

关于C 语言中运算问题 a=12 a+=a-=a*=a 怎么计算的 要过程 谢谢_百度...
最终答案为0啊,首先是从右往左计算。a*=a就是a=a*a=12x12=144;此时a的值为144.a-=a*=a就是a=a-144=144-144=0.此时a的值为0.那么后面的计算就无意义了。

赋值表达式:a+=a-=a*=a; 设a=12,请问它的计算过程是什么?
a += a -= a *= a;这是一个赋值表达式它包含复合的赋值运算符;由于赋值运算符结合方向是 \\"自由至左\\" 因为a的初值为12,此赋值表达式的求解步骤如下:S1:先进行\\"a *= a\\"的运算,它相当于a = a * a,a的值为12*12=144;S2:再进行\\"a -= 144\\"的运算,相当于a = a - 144,...

C语言 a*= 2+3 该怎么算呢 还有a+=a-=a*=a
a*= 2+3的结果为a=a*(2+3)=5*a。a+=a-=a*=a的结果为:0。语句的执行分析:a*= 2+3,首先加法的优先级大于赋值运算符的优先级,所以限制性2+3=5然后执行*=,表达式可以转化为a=a*5,所以说a*= 2+3的结果为5*a。a+=a-=a*=a,表达式中全部都是赋值运算符,所以说运算是自...

设有语句int a=3,执行语句a+=a-=a*a后,变量a的值是多少啊?
执行该语句的结果为-12,没有错误。注意赋值运算符的顺序为自右到左。计算过程如下:首先执行a*a=9,然后a-=9=(a=a-9)=-6,执行后a=-6,然后执行a+=a=(a=a+a)=-12。所以说正确答案是-12。

相似回答
大家正在搜