编写程序以显示最小和最高值 - 不工作

时间:2014-07-07 13:16:46

标签: java numbers

我是Java的新手,并且一直在尝试编写一个程序,该程序采用用户输入的5个整数,然后将这些整数存储在数组中。完成后,我希望显示输入的最小值和最大值。

目前我的代码能够显示最高值,但仍然显示0表示最低值。如果有人能够就如何解决这个问题提出任何建议,我将不胜感激。

以下是代码:

import java.util.Scanner;

public class program {

  public static void main(String[] args) {

    int Numbers[] = new int[5];
    int lowest = Numbers[0];
    int highest = Numbers[0];

    Scanner input = new Scanner(System.in);

    for(int c = 0; c < Numbers.length; c++){
        System.out.print("Please enter a number to enter: ");
        Numbers[c] = input.nextInt();
        if(Numbers[c] < lowest){
            lowest = Numbers[c];
        }
        if(Numbers[c] > highest){
            highest = Numbers[c];
        }
    }

    System.out.println("The highest number is: " + highest);
    System.out.println("The lowest number is: " + lowest);

}

}

3 个答案:

答案 0 :(得分:0)

尝试:

import java.util.Scanner;

public class program {

  public static void main(String[] args) {

    int numbers[] = new int[5];
    int lowest;
    int highest;

    Scanner input = new Scanner(System.in);

    for(int c = 0; c < numbers.length; c++){
        System.out.print("Please enter a number to enter: ");
        int number = input.nextInt();

        if (c == 0) {
            lowest = number;
            highest = number;
        } else {
            if(number < lowest) {
                lowest = number;
            }
            if(number > highest){
                highest = number;
            }
        }

        numbers[c] = number;
    }

    System.out.println("The highest number is: " + highest);
    System.out.println("The lowest number is: " + lowest);

}

另外,为什么你需要所有的价值观?该程序不使用它们。

答案 1 :(得分:0)

这是因为你用0

初始化它
int lowest = Numbers[0];

并且您输入的所有值都大于0

答案 2 :(得分:0)

数字最小的问题是因为它已在数组中初始化为0。我建议改为将这两个数字初始化为

int numbers[] = new int[5];
int lowest = 0;
int highest = 0;

保持代码的其余部分不变。