若有int m=5.y=2;则执行表达式y+=y-=m*=y后y的值是?y的值是-16 .

若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式x+=n++后x的值为(10),n的值为()为什么上面的y是先赋值后使用而x却是先使用后赋值?同样是?+的... 若x和n均是int型变量,且x和n的初值均为5,则执行下面表达式x+=n++ 后x的值为(10 ),n的值为( ) 为什么上面的y是先赋值后使用而x却是先使用后赋值?同样是?+的形式。初学者没人教,求大虾帮忙解决
x+=n++ 不是直接等于x=x+n=n+1?是等于 x=x+n . 而求n的时候n++才等于n=n+1 . 是这样理解吗?
展开
召走刀文
2012-10-05 · TA获得超过1204个赞
知道小有建树答主
回答量:597
采纳率:57%
帮助的人:233万
展开全部
等号是从右向左结合的
y+=y-=m*=y可以分解成3个表达式
首先,m*=y,经过计算,m=10,y=2,m*=y表达式的值为10
然后,y-=(m*=y),因为y=2,m*=y表达式的值为10,因此等价于y -= 10,所以y=-8 。y-=(m*=y)表达式的值就是-8
最后 y+=(y-=m*=y),因为y-=(m*=y)表达式的值就是-8,因此等价于y+=-8,因为y=-8,所以最后的值就是-16

这个问题的关键其实是要理解表达式的值这一概念,理解它,自然就会了。关于表达式的概念,你可以上网搜一下
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式