真颛 - 
方向从右至左
一点一点算就知道结果应该是0了
算a*=a 得出a=12*12=144 ,此时a已经等于144
算a-=a 得出a=144-144=0,此时a已经等于0
算a+=a得出 a=0+0=0
 
 苏萦 - 
在java中运算出来是-120
在c++中运算出来的结果是0
 
 CarieVinne  - 
不同意 烟花飘飘
a+=a-=a*=a
方向从右至左
先算 a*=a 得出a=12*12=144 ,此时a已经等于144
算a-=a 得出a=144-144=0,此时a已经等于0
算a+=a得出 a=0+0=0
结果答案是0
 
 你这是干啥嘛 - 
运算方向是自左向右去结合 最后的结果是-120
 
 兔狮喵 - 
a += a -= a *= a;等价于{a +=[ a -= (a *= a)]};
赋值运算符: 自右至左
1:a *= a的运算,相当于a = a * a,a的值为12*12=144;
2:a -= a 的运算,相当于a = a - 144,a的值为144-144=0;
3:a +=a 的运算,相当于a = a + 0, a的值为0+0=0;
所以此表达式结果为0
 
 Chen - 
严重同意…烟花飘飘…的解题过程.
赋值运算符是右结合的.不要被长式子吓倒,分步计算.
 
 二分好久没看 - 
虽然我相信结果是-120;可是实际的运行结果却是 0.
wd@0056bb5982bc477 ~/c
$ cat simple3.c
main(){ int a=12; a+=a-=a*=a; printf("%d ",a);}
wd@0056bb5982bc477 ~/c
$ gcc -o simple3.exe simple3.c
wd@0056bb5982bc477 ~/c
$ ./simple3.exe
0
 
 十年阿桑 - 
方向是从右向左
 
 北境漫步 - 
方向是从右向左288
 
 gitcloud - 
a+=a-=a*=a
先算 a*=a 得出a=12*12=144
算a-=a 得出a=12-144=-132
算a+=a得出 a=12+(-132)=-120
 
