用Java写一个存储学生成绩的数组,从键盘获取输入。,显示总分、平均分、最高分和最低分,按升序打印出分数。
时间: 2024-09-30 07:02:48 浏览: 38
在Java中,你可以创建一个动态数组(ArrayList)来存储学生的成绩,并利用Scanner类从键盘获取用户输入。下面是一个简单的示例程序:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;
public class StudentGrades {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ArrayList<Integer> scores = new ArrayList<>();
System.out.println("请输入学生分数,输入-1结束输入:");
while (scanner.hasNextInt()) {
int score = scanner.nextInt();
if (score != -1) {
scores.add(score);
}
}
// 计算总分、平均分、最高分和最低分
int totalScore = 0;
for (int score : scores) {
totalScore += score;
}
double averageScore = (double) totalScore / scores.size();
int maxScore = Collections.max(scores);
int minScore = Collections.min(scores);
// 打印结果
System.out.println("总分: " + totalScore);
System.out.println("平均分: " + averageScore);
System.out.println("最高分: " + maxScore);
System.out.println("最低分: " + minScore);
// 按升序打印成绩
Collections.sort(scores);
System.out.println("成绩列表(升序):");
for (int i : scores) {
System.out.println(i);
}
scanner.close();
}
}
```
在这个程序中,我们首先创建一个ArrayList来存储学生的成绩,然后通过循环不断读取用户的输入直到用户输入-1表示停止。接着计算并输出总分、平均分、最高分和最低分,最后使用Collections.sort()函数对成绩列表进行排序并打印出来。
阅读全文