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语言中提供常用赋值运算符:等号运算符。
1.计算赋值运算符右侧表达式的值。(“=”为赋值运算符)。
2.将赋值运算符右侧表达式的值赋给左侧的变量。
3.将赋值运算符左侧的变量的值作为表达式的值。
赋值表达式是类似这样的句子:a=5 注意后边没有分号, a=5; 这就是一个赋值语句了。
赋值表达式的结果是最左边的赋值运算符(最左边的等号)左边的变量(或者表达式)的值。
赋值运算符的优先级和结合性:
1.优先级较低,只比逗号运算符高。
2.从右向左结合。
例如:x=y=3 就相当于 x=(y=3) 结果都为3。
C语言中a+= a-=a*a是什么意思?
!表示“非”,是一种逻辑运算。若a的真值为1,则!a为0;若a的真值为0,则!a为1。
c语言中a+=a-=a*a如何计算
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+=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。
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。整数的除法法则 1)从被除数的高...
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+=a-=a*a,这里是如何拆分的,还有+=-=是怎么来算的...
连续赋值运算,计算顺序是自右至左的。所以 a+=a-=a*=a计算顺序是 1 a*=a;2 a-=a;3 a+=a;也就是 1 a=a*a;2 a=a-a;3 a=a+a;可以看到,无论a值是多少,第一步的结果是多少,到第二步的时候,a的值都会是0.所以最终结果,也就是第三步的结果,仍为0。最终a为0。
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
赋值表达式: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,...
若有定义int a =10,则表达式a+=a-=a*=a的值是多少啊
a+=a-=a*=a的值为0 解析:左结合:先做a*=a, 因为a=10,a*=可写为a=a*a=100 此时a的值为100 a-=a 可写为a=a-a=0,此时a 的值为0 a+=a可写为a=a+a=0 综上:a+=a-=a*=a的值为0
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