c语言 设a=14则经过表达式“a+=a-=a*=a”后a的值为 答案是0 求解释 怎么算出来的?

2024年10月28日 03:37
有3个网友回答
网友(1):

首先要明白运算符优先级的概念,‘+=“,“--=’,‘*=’这些优先级都是相同的所以直接从左至右读;
a+=a得到a变为28;
a-=a得到a变为0;
a*=a得到a还是0;
所以答案为0;

网友(2):

这个式子从右向左计算,相当于
依次
a=a*a;
a=a-a;
a=a+a;
所以最终是0。

网友(3):

  • (1)计算a*=a,即a=a*a;所以a的值为198;

  • (2)计算a-=a(此时表达式化为a+=a-=a),即a=a-a,所以a得值为0;

  • (3)计算a+=a(此时的表达式就是他了),即a=a+a,所以a的值为0

  • (4)计算完了,a=0