评委打分

发布于:2025-02-23 ⋅ 阅读:(17) ⋅ 点赞:(0)

问题

Java作为使用最广泛,作为开发软件的通用语言,Java在生活中的使用也十分常见,例如近期举行的亚运会中,跳水队员全红婵选手获得了一次全满分的绝佳成绩,但在通常比赛中,选手们一般只能获得90分左右的成绩,由6位评委打分,去掉一个最高分和最低分,求取剩余4位评委打分的平均值作为选手们的最终成绩,今天我们将通过Java编程实现这一打分制。

方法

  1. 定义一个数组来记录6个评委打的分数。
  2. 用下方代码中的getMax方法来获得最大分数,getMin方法来获得最小分数。
  3. 用getSum来获得总成绩。
  4. 最后用去掉最高分和去掉最低分的总成绩来除以数组的长度length-2得到平均分。
package Ts;


import java.util.Scanner;
public class Jump {
    public static void main(String[] args) {
int[] scoreArr = getScores();
for(int i =0; i< scoreArr.length;i++){
System.out.println(scoreArr[i]);
        }
        int max = getMax(scoreArr);//求最大值
        int min = getMin(scoreArr);//求最小值
        int sum = getSum(scoreArr);//求总和以及平均分
        int average = (sum - max -min)/(scoreArr.length-2);
System.out.println("最终得分"+average);
    }
    public static int getSum(int[] scoreArr){
        int sum = 0;
        for (int i = 0; i < scoreArr.length ;i++) {
            sum+=scoreArr[i];
        }
return  sum;
    }
    public static int getMax(int[] scoreArr){
        int max = scoreArr[0];
        for (int i = 0; i<scoreArr.length ;i++) {
            if(scoreArr[i]>max){
                max = scoreArr[i];
            }
        }
        return max;//找最大分数
    }
    public static int getMin(int[] scoreArr){
        int min = scoreArr[0];
        for (int i = 0; i<scoreArr.length ;i++) {
            if(scoreArr[i]<min){
                min = scoreArr[i];
            }
        }
        return min;//找最小分数
    }
    public static int[] getScores(){
int[] scores = new int[6];
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < scores.length;) {
System.out.println("请输入你的打分:");
            int score = sc.nextInt();
            if (score>=0 && score<=100){
                scores[i] = score;
i++;
}else {
System.out.println("超出分数范围,请输入0-100的分数");
            }
}return scores;
    }
}

结语

以上是运用for循环,多种方法互相调用,数组建立,Scanner键盘录入数等来获得数组中所有元素和并且求取平均值的代码程序,最终模拟出亚运比赛中评委打分的实例。