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

下面代码的输出结果是:()。

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;表示什么意思?


qq_丘比特_0
浏览 2026回答 5
5回答

kstg5944571

  s1 = s1 + s2;表示将s1+s2的结果赋值给s1   s2 = s1 - s2;表示将s1-s2的结果赋值给s2    int s1 = 50;int s2 = 30;s1 = s1 + s2;//s1=50+30=80s2 = s1 - s2;//s2=80-30=50s1 = s1 - s2;//s1=80-50=30

Amos_落叶

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

乱舞的旋律

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

weibo_硪主浮沉_0

你好!分析下问题,结果如下:        s1 = s1 + s2 ;这里你要理解运算符的优先级, 这里因为+运算符的优先级大于=运算符,所以先执行的+,即先将s1+s2,这步先执行得到一个80,再将结果赋值给s1, 所以此时s1的值为80.同理可以得到以下算式。s1 = s1 + s2; 即s1=50+30=80s2 = s1 - s2; 即s2=80-30=50s1 = s1 - s2; 即s1=80-50=30所以最终结果s1 = 30, s2 =50 . 答案是B.

一切都是算计

开始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. 同理 -  也是一样
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java