c语言 a+=a-=a*=a

如题所述

c语言中,表达式"a+=a-=a*=a"的等价表达式为"a=a+a=a-a=a*a"。在这个表达式中,"+"和"-"符号表示加法和减法操作,"*"表示乘法操作。值得注意的是,"="符号在c语言中用于赋值操作,它的左边不能是表达式或常量,只能是变量。

具体到"a+=a-=a*=a",我们可以依次拆解:首先执行"a*=a",将a与自身相乘得到新的值并赋给a,然后执行"a-=a",将当前a值减去自身得到0并赋给a,接着执行"a+=a",将当前a值加上自身得到0并赋给a。因此,最终a的值为0。

在等价表达式"a=a+a=a-a=a*a"中,"a+a"表示将a与自身相加,"a-a"表示将a与自身相减,得到0,"a*a"表示将a与自身相乘。这个表达式同样将a的初始值修改为0。

因此,无论是原始表达式"a+=a-=a*=a",还是等价表达式"a=a+a=a-a=a*a",最终的结果都是将变量a的值修改为0。
温馨提示:内容为网友见解,仅供参考
无其他回答

C语言a+=a-=a*=a怎么等于0啊,具体怎么算的,请教高手
第一步:执行 a*=a,a变为144 第二步:执行 a-=a,a变为 0 第三步:执行 a+=a,a还是 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等效与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;相当于三步:a=a*a;a=a-a;\/\/a肯定等于0了 a=a+a;\/\/a还是等于0 结果当然是0啦

c语言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

...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 最后a+=a

C语言,此算术表达式如何运算?a+=a-=a*=a;
c语言中,计算的顺序,大多是从右向左的。建议你上机试一下,结果总是0;include<iostream> using namespace std;int main(){ double a;cout<<"请输入a的值:"<<endl;cin>>a;double m=a+=a-=a*=a;cout<<"a+=a-=a*=a:的值是:"<<m<<endl;} 原因是输入一个值,经过一次运算,a...

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是什么意思,求c语言大神解释一下
实际上是赋值复合运算。a是初始赋值,但是也是变量 从右往左做赋值运算 a(被赋值)=a*a(初始值)a(再次被赋值)=a(初始值)-a(上一赋值)a(最后被赋值)=a(初始值)+a(上一赋值)

相似回答
大家正在搜