输入一批学生成绩,统计成绩的平均值﹑最大值﹑最小值,进行成绩排序。编写控制台应用程序,输入一批学生成绩,以-1作为结束标记,统计成绩的平均值﹑最大值﹑最小值,并对成绩进行排序。
时间: 2023-10-09 09:11:12 浏览: 112
好的,这是一个简单的成绩统计和排序的问题。下面是一个Java控制台应用程序的代码示例:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;
public class ScoreStatistics {
public static void main(String[] args) {
List<Double> scores = new ArrayList<Double>();
Scanner scanner = new Scanner(System.in);
System.out.println("请输入学生成绩,以-1作为结束标记:");
double score = 0;
while (scanner.hasNextDouble()) {
score = scanner.nextDouble();
if (score >= 0) {
scores.add(score);
} else if (score == -1) {
break;
}
}
if (scores.size() > 0) {
double average = scores.stream().mapToDouble(Double::doubleValue).average().getAsDouble();
double max = Collections.max(scores);
double min = Collections.min(scores);
System.out.println("成绩平均值为:" + average);
System.out.println("成绩最大值为:" + max);
System.out.println("成绩最小值为:" + min);
Collections.sort(scores, Collections.reverseOrder());
System.out.println("成绩排序结果为:");
for (double s : scores) {
System.out.println(s);
}
} else {
System.out.println("没有输入任何有效成绩!");
}
scanner.close();
}
}
```
该程序首先初始化一个空的成绩列表,然后循环读取用户输入的成绩,直到输入-1为止。在输入过程中,程序会判断输入是否为有效数字,如果是,则将其添加到成绩列表中。
如果至少输入了一个有效成绩,程序会计算成绩的平均值、最大值和最小值,并进行排序。排序采用Java集合框架中的Collections.sort方法,以降序排列成绩列表。
最后,程序会输出成绩的统计结果和排序结果。如果没有输入任何有效成绩,则会输出相应的提示信息。
希望这个示例代码能够对你有所帮助!
阅读全文