为了账号安全,请及时绑定邮箱和手机立即绑定

下面的答案是选择B?为什么选择B?

下面的答案是选择B?为什么选择B?

qq_丘比特_0 2016-05-14 23:41:47
下面代码的输出结果是:()。public static void main(String[] args) {    int s1 = 50;    int s2 = 30;    s1 = s1 + s2;    s2 = s1 - s2;    s1 = s1 - s2;    System.out.println(s1 + "," + s2);}} A. 50,30 B. 30,50 C. 50,80 D. 80,30  s1 = s1 + s2;表示什么意思?   s2 = s1 - s2;表示什么意思?
查看完整描述

5 回答

已采纳
?
kstg5944571

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


查看完整回答
5 反对 回复 2016-05-14
?
Amos_落叶

TA贡献3条经验 获得超3个赞

其实这个题目就是典型的 把a与b的值互换而不借用第三个参数的算法,s1 = s1+s2 就是把int s1 = 50; int s2 = 30;这两个值相加并赋给s1,  s2 = s1 - s2 就是用上一步获得的s1减去s2,并赋给s2!

查看完整回答
2 反对 回复 2016-05-15
?
乱舞的旋律

TA贡献105条经验 获得超38个赞

看样子你完全不理解编程啊⋯⋯
这是有运算顺序的⋯⋯
先加➕
后赋值=
所以s1变成了s1加s2的值
以下同理
楼上讲的都对的

查看完整回答
1 反对 回复 2016-05-15
?
weibo_硪主浮沉_0

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.

查看完整回答
反对 回复 2016-05-15
?
一切都是算计

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. 同理 -  也是一样

查看完整回答
反对 回复 2016-05-14
  • 5 回答
  • 0 关注
  • 1940 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信