JAVA三個數獲取第二大值、四個數獲取第二大值,多個數獲取第二大值
阿新 • • 發佈:2019-02-16
本方法不使用排序、陣列,獲取輸入數中第二大的值,程式碼如下:
public class GetSecond {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 儲存輸入的值
int input;
// 儲存最大值,給max的初始值是integer的最小值,所以輸入的第一個數都可以賦值給max
int max = Integer.MIN_VALUE;
// 儲存第二大值,給max的初始值是integer的最小值,所以輸入的第一個數都可以賦值給second
int second = Integer.MIN_VALUE;
int count = 1;
// count控制輸入幾個數,如果是三個數獲取第二大值,就 <=3,如果是四個數獲取第二大值,就 <= 4
while (count <= 3) {
input = scanner.nextInt();
// 如果輸入的數比 當前最大值 max 大,就把 max 值給 second,再把輸入值給 max
if (input > max) {
second = max;
max = input;
}
// 如果輸入的數比 當前最大值 max 小 並且 比第二大值 second 大,就把輸入值 給 second
if (input < max && input > second) {
second = input;
}
count++;
}
System.out.println("第二大的值是:" + second);
}
}