c语言中 a+=a-=a*a和a+=a-=a*=a这两个式子有什么区别 它们分别该怎么算??int

c语言中 a+=a-=a*a和a+=a-=a*=a这两个式子有什么区别 它们分别该怎么算??int a=2的话 它们分别又该等于多少呢??求大神指导55555555

a+=a-=a*a等效与a=a-a*a,a=a+a; a+=a-=a*=a等效与a=a*a,a=a-a,a=a+a;
结果1:-4 2:0
温馨提示:内容为网友见解,仅供参考
无其他回答

...a+=a-=a*a和a+=a-=a*=a这两个式子有什么区别 它们分别该怎么算??int...
a+=a-=a*a等效与a=a-a*a,a=a+a; a+=a-=a*=a等效与a=a*a,a=a-a,a=a+a;结果1:-4 2:0

c语言中a+=a-=a*a如何计算
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。

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+=a-=a*a”和"z+=x++||y++||++z"什么意思
a-=()是a=a-()这个应该从右向左看 先看后半部分:a=a-a*a 再看前面:a=a+a-a*a=2a-a*a;第二个 或者关系分开看 z+=x++:z=z+x++(x++自增,每次加一)y++:自增,例如y=0,y++后y仍然=0,下次再执行时会每次加一(常用于for循环中)++z:也是自增但与z++的区别就在于当...

...int 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初值为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语言中int a=5怎么计算 a+=a-=a*a 要带个解释…
-40。a+=a-=a*a→a+=a-=25→a+=-20→-40。

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

C语言中定义int a=6,则表达式a+=a-=a*a等于多少? 请说明计算过程 谢谢...
a+=a-=a*a等于-60 自右向左执行 a+=a-=a*a相当于a=a+(a-=a*a)a-=a*a相当于a=a-a*a 执行1:a*a=36 执行2:a=a-36,代入a=6得,a=-30 执行3:a=a-30,代入a=-30得,a=-60

相似回答