import java.util.Arrays;
import java.util.Scanner;
public class ScoreDemo {
public static void main(String[] args) {
double[] scores = new double[5];
Scanner input = new Scanner(System.in);//扫描器用于读取控制台输入
for (int i = 0; i < scores.length; i++) {//输入分数
System.out.print("请输入第" + (i + 1) + "位评委的分数");
String temp = input.nextLine().trim();
scores[i] = Double.parseDouble(temp);
}
getScore(scores);//对分数进行处理的函数
}
private static void getScore(double[] scores) {
//对分数进行排序
double temp;
for (int i = 0; i < scores.length - 1; i++) {
for (int j = i + 1; j < scores.length; j++) {
if (scores[i] > scores[j]) {
temp = scores[i];
scores[i] = scores[j];
scores[j] = temp;
}
}
}
//去掉一个高分,一个低分后的平均分
double sum =0;
for (int i = 1; i < scores.length-1; i++) {
sum+=scores[i];
}
double pjf = sum/(scores.length-2);
System.out.println("排序后的分数:"+Arrays.toString(scores));
System.out.println("去掉一个最高分:"+scores[scores.length-1]);
System.out.println("去掉一个最低分:"+scores[0]);
System.out.println("最后的平均分是:"+String.format("%.2f",pjf));//平均分保留2位小数
}
}
运行测试
请输入第1位评委的分数92.5
请输入第2位评委的分数90.0
请输入第3位评委的分数93.8
请输入第4位评委的分数95.9
请输入第5位评委的分数97.9
排序后的分数:[90.0, 92.5, 93.8, 95.9, 97.9]
去掉一个最高分:97.9
去掉一个最低分:90.0
最后的平均分是:94.07