在Java中,如何读取第一个[closed]的第二个变量

问题描述 投票:-2回答:1

我是Java的新手,我正在尝试编写一个程序,您必须输入10个数字,并且该程序需要计算并打印两个数字最大的那个。

这是我的输出:

Enter 10 integers
1
20
30
40
50
60
70
80
90
100
Largest integer: 100
Second Largest integer: 0

这里是代码:

import java.util.Scanner;

public class TwoLargest {

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        int number, largest1 = 0, largest2 = 0;
        System.out.println("Enter 10 integers");
        for (int i = 0; i < 10; i++) {
            number = input.nextInt();
            if (number > largest1)
                largest1 = number;
            else if (number < largest1 && number > largest2)
                largest2 = number;
        }

        System.out.printf("Largest integer: %d\n", largest1);
        System.out.printf("Second Largest integer: %d\n", largest2);
    }
}
java
1个回答
0
投票

这里的问题是,在输入中增加数字时,永远不会输入elseif语句,因为'number'总是大于'largest1'。

您需要在'if'语句中添加一行,如果'largest1'已更新,则将'largest2'设置为'largest1'。这会将“ largest2”设置为旧的“ largest1”,并跟踪第二大数字。

© www.soinside.com 2019 - 2024. All rights reserved.