C语言问题!

x=10;x+=x-=x-x;X等于多少?能帮我讲解下么?... x = 10;
x += x -= x - x;
X等于多少?
能帮我讲解下么?
展开
 我来答
载荷之周
高粉答主

2010-09-28 · 每个回答都超有意思的
知道顶级答主
回答量:3万
采纳率:93%
帮助的人:1.2亿
展开全部
你好,最终x的值为20.

详细过程,x += x -= x - x其实相当于x=x+(x -= x - x),这个就是把+=去掉,比如k+=5实际上就是k=k+5,注意+=后面的运算是一个整体,不能拆开。

同理x -= x - x实际上就相当于x=x-(x-x);这样很容易看出x=x-0,所以x=x,那么着这一步中x最后等于10,然后返回到+=那一步就成了x=x+10,所以结果x=20.

对这种+=的符号,你要学会把它变成平常那种加法的形式,注意的是+=后面的是一个整体。
songwanqiang
2010-09-28 · TA获得超过2399个赞
知道小有建树答主
回答量:603
采纳率:0%
帮助的人:939万
展开全部
20
x += x -= x - x;
涉及到三个运算符,+=、-=和-,-优先级要高于+=和-=。而+=和-=优先级相同,结合性是右到左,有了这些就可以分析了。
也就是说:
先执行: x - x = 0
然后:x-=0,这里0是上面计算结果,执行完以后x还是10
最后:x+=x,执行完这句x就是20了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Nomat
2010-09-28 · TA获得超过314个赞
知道小有建树答主
回答量:342
采纳率:0%
帮助的人:321万
展开全部
从左算到右 x=x-0,x=10
x=x+x,x=20 最后20吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
予恋寻十1K
2010-09-28 · TA获得超过941个赞
知道小有建树答主
回答量:977
采纳率:50%
帮助的人:848万
展开全部
#include<stdio.h>
main()
{
int x=10;
x+=x-=x-x;//从右到左,先x-=x-x,即x=x-(x-x)=x=10;然后x+=x,即x=x+x=20。
printf("%d",x);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xf小粉
2010-09-28 · TA获得超过592个赞
知道答主
回答量:47
采纳率:0%
帮助的人:47.3万
展开全部
结果为20,
你把赋值分2部分来写
x += x -= x - x;
可以写成 1:x=x-(x-x),结果x等于10; 2:x=x+x,所以最后结果为20
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式