C语言中:int x=3,y=2;则表达式x+=x*=y+8的值为?

为什么?解释和过程!

第1个回答  2015-07-10
y+8=10

x*=10 => x=x*10 => x=30
x+=30 => x=x+30 => x=60追问

不懂..................我知道答案是对的,但过程
.......

追答

= =
赋值语句是把右边的值赋值给左边,楼主知道吧
下面解析
x+=x*=y+8
这个表达式

首先这是简写
分解一下就是
A=y+8
x*=A
x+=x
PS:A是中间值,x+=y意思就是x=x+y
再化简
A=y+8
x=x*A
x=x+x

然后第一个表达式结果是10
第二个是30
第三个是60

不知楼主懂否 = =

本回答被提问者和网友采纳