5 回答
TA贡献18条经验 获得超16个赞
s1 = s1 + s2;表示将s1+s2的结果赋值给s1
s2 = s1 - s2;表示将s1-s2的结果赋值给s2
int s1 = 50;
int s2 = 30;
s1 = s1 + s2;//s1=50+30=80
s2 = s1 - s2;//s2=80-30=50
s1 = s1 - s2;//s1=80-50=30
TA贡献3条经验 获得超3个赞
其实这个题目就是典型的 把a与b的值互换而不借用第三个参数的算法,s1 = s1+s2 就是把int s1 = 50; int s2 = 30;这两个值相加并赋给s1, s2 = s1 - s2 就是用上一步获得的s1减去s2,并赋给s2!
TA贡献2条经验 获得超1个赞
你好!分析下问题,结果如下:
s1 = s1 + s2 ;这里你要理解运算符的优先级, 这里因为+运算符的优先级大于=运算符,所以先执行的+,即先将s1+s2,这步先执行得到一个80,再将结果赋值给s1, 所以此时s1的值为80.
同理可以得到以下算式。
s1 = s1 + s2; 即s1=50+30=80
s2 = s1 - s2; 即s2=80-30=50
s1 = s1 - s2; 即s1=80-50=30
所以最终结果s1 = 30, s2 =50 . 答案是B.
TA贡献16条经验 获得超10个赞
开始s1=50 s2=30 执行s1=s1+s2 ; s1 = 50 +30;s1变为80 s2=s1 -s2 即s2=80 - 30=50 再执行s1=s1-s2 即s1=80-50=30 最终结果是 s1=30 s2=50 。 s1=s1+s2 意思是 把 s1 + s2 的值 赋值给 s1 , s1+s2=50+30=80 然后再赋值给s1,那么s1就为80. 同理 - 也是一样
添加回答
举报