c语言基础:复合赋值运算符

式子a+=a*=a/=a-6;求详细的运算过程或式子从哪里开始运算!
你们两的答案都不错,给你们谁满意?

首先明白优先级顺序,从上往下依次降低

所以,题目中,先计算a-6,再计算a/=,然后a*=,最后a+=

例如,a=7

则:

1.a+=a*=a/=1

a/=1即a=a/1=7/1=7

2.a+=a*=7      现在a=7

3.a+=49         现在a=49

4.a=49+49=98

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-02
“+=”,“*=”,“/=”你应该清楚是什么意思吧,举个简单的例子,a*=2,表示的就是a=a*2。
对于赋值运算符,它是自右向左结合的.
a+=a*=a/=a-6可以先把它写成:
a=a+(a=a*(a=a/(a-6)))
这样你应该知道怎么计算了吧。

另外,一个赋值表达式的值指的是右边操作数的值。
第2个回答  2018-03-31

先从假设一个数开始。

假设a=10;

    a+=a*=a/=a-6;  此时a=10

    a+=a*=a/=4;  此时a=10

    a+=a*=2;     此时a=2

    a+=4;  此时a=4

    最后a=8

在赋值运算符当中,有一类C/C++独有的复合赋值运算符。它们实际上是一种缩写形式,使得对变量的改变更为简洁。

C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。

本回答被网友采纳
第3个回答  2018-06-22
从右到左算就完事了...
第4个回答  2013-01-02
a+=(a*=(a/=(a-6)))
这样你就知道了么……本回答被提问者采纳