这里是初级 Java 程序员。我正在尝试制作一个程序,询问用户他们想进入多少年级。然后,我想将用户输入的成绩存储到数组中。最后,我想找到输入的成绩的平均值,并打印出低于平均值的每个成绩的列表。截至目前,我的代码计算用户输入的成绩的平均值,但我不知道如何打印低于平均值的成绩。我相信问题出在我的最后一个 for 循环中,但我不知道如何解决它。另外,我是否正确实现了数组?感谢每一个花时间帮助我的人!
public static void grades() {
int q = 0;
double grades = 0;
double total = 0;
Scanner in = new Scanner(System.in);
// user input how many grades user would like to enter
System.out.println("How many grades would you like to enter? ");
q = in.nextInt();
// user enters # of grades they requested to enter
for (int counter = 0; counter < q; counter++) {
System.out.println("Enter your grades: ");
grades = in.nextInt();
// This creates an array that stores the grades the user entered
double[] scores = new double[] {grades};
// adds up all elements (grades)
for (int k = 0; k < scores.length; k++) {
total += scores[k]; //sums up entered grades
}
}
total = total / q; //calcs mean
//loops prints grades less than mean
for (grades = 0; grades < total; grades++){
System.out.println(grades);
}
}
最佳答案
public static void grades(){
Scanner in = new Scanner(System.in);
System.out.println("How many grades would you like to enter? "); //user input how many grades user would like to enter
int q = in.nextInt();
double[] grades = new double[q];
double sum = 0;
for (int counter = 0; counter < q; counter++){ //user enters # of grades they requested to enter
System.out.println("Enter your grades: ");
double grade = in.nextInt();
grades[counter] = grade;
sum += grade;
}
double mean = sum / q;
System.out.println("Mean: " + mean);
for (int i = 0; i < q; i++){ //loops prints grades less than mean
if (grades[i] < mean) {
System.out.println(grades[i]);
}
}
}
关于Java - 计算存储在数组中的成绩平均值+打印低于平均值的成绩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28259132/