我是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);
}
}
答案 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;
保持代码的其余部分不变。