C语言中a+=a-=a*=a答案是多少?

写出具体算法a值为12... 写出具体算法
a值为12
展开
 我来答
墨蓝ii
推荐于2019-08-18
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部
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。
风若远去何人留
推荐于2017-09-27 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450132
专业C/C++软件开发

向TA提问 私信TA
展开全部
结果为0.
连续赋值运算,计算顺序是自右至左的。
所以 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。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2c42cd0
推荐于2019-08-25 · TA获得超过5859个赞
知道小有建树答主
回答量:88
采纳率:83%
帮助的人:1.4万
展开全部
2a-a²
具体计算步骤如下:
1、公式拆分,按照C语言计算方法和原则,这里的“=”意思是赋值,即将等号右边的数值赋值到左边去。
所以公式可以依次拆分为
(1)a1=a*a
(2)a2=a-a1
(3)a3=a2+a
a是原来的赋值
2、以此计算原来的(1)(2)(3)式

结果为2a-a²
拓展资料:
C语言中计算或者赋值式是从右往左进行计算,但是计算具有一定的优先级,以下是对优先级的分类:
1、最高级
出现同级别运算符时的结合方向是从左往右(下面级别没写结合顺序时,默认是从左往右)。
( )圆括号
[ ]下标运算符号
->指向结构体成员运算符
.结构体成员运算符
2、第二级
!、~、++、--、-、(类型)、*、&、sizeof。
这一级都是单目运算符号,这一级的结合方向是从右向左。
比如出现*p++,这时*和++同级别,先算右边,再左边。
所以*p++等价于*(p++),而不是(*p)++。
3、第三级
+、-、*、/、%
这一级都是算术运算符,结合顺序和数学学习中一致的,先乘除取余数,后加减。
4、第四级
<<、>>
这是左移、右移运算符,位运算时可能需要用到。
5、第五级
<、<=、>、>=、!=、==
这些运算符也称为关系运算符,其中<、<=、>、>=高于!=、==。
6、第六级
&、^、|
这三个符号也是位运算符号,其中内优先级,&>^>|。
7、第七级
&&、||
逻辑与&&优先级大于逻辑或||。
8、第八级
? :
也称为条件运算符号,是C语言中唯一的一个三目运算符,结合顺序是从右往左。
9、第九级
=、+=、-+、*=、/=、%=
这些运算符也叫做赋值运算符,除此之外,>>=、<<=、&=、^=、|=这些赋值运算符也在这一级别内,结合顺序是从右往左。
10、最低级


逗号运算符也称为顺序求值运算符,在C语言中,运算级别最低。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-01-13
展开全部
a的初值呢?
a初值为12时,a+=a-=a*=a结果为0

步骤:
这个表达式的运算是从右向左的:
1. a*=a:a=a*a=12*12=144
2. a-=144: a=a-144=144-144=0
3. a+=0: a=a+0=0+0=0
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
析灵凡ig
2009-01-13 · TA获得超过175个赞
知道小有建树答主
回答量:127
采纳率:0%
帮助的人:114万
展开全部
在这里说明一点,赋值运算,从右往左开始
记住:只要a被重新赋值过,那么意味着下次运算a的值已经变了。
首先a=a*a;12*12=144,a被重新赋值为144;
然后a=a-a;144-144=0,a被重新赋值为0;
最后a=a+a;0+0=0,a的值依然赋值为0;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(16)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式