(OJ)Java数组-歌手打分

歌手打分

Problem Description

在歌唱比赛中,共有10位评委进行打分,在计算歌手得分时,去掉一个最高分,去掉一个最低分,然后剩余的8位评委的分数进行平均,就是该选手的最终得分。输入每个评委的评分,求某选手的得分。

Input Description

98 91 94 89 90 92 96 88 93 95

Output Description

92

解题代码

// 导入Scanner类
import java.util.Scanner;
class Main{
    
    

    public static void main(String[] args) {
    
    
        // 创建Scanner对象
        Scanner in = new Scanner(System.in);
        // 读取输入的一行数据并存储为字符串
        String line = in.nextLine();
        // 切割字符串 得到数字的字符数组
        String[] nums = line.split(" ");
        // 定义max min 最大值 最小值变量 初始值为输入数据的第一个数字
        int max = Integer.parseInt(nums[0]);
        int min = Integer.parseInt(nums[0]);
        // 创建int数组 长度为字符数组的长度
        int [] scores = new int[nums.length];
        // 定义结果变量
        int sum = 0;
        // 循环将字符数组的数字转换为int存放到int数组
        for (int i = 0;i < nums.length;i++){
    
    
            scores[i] = Integer.parseInt(nums[i]);
            // 寻找最小值
            if (scores[i] < min) min = scores[i];
            // 寻找最大值
            if (scores[i] > max) max = scores[i];
        }
        // 求和
        for(int i = 0;i < scores.length;i++){
    
    
            sum += scores[i];
        }
        // 将总分数 减去最高分和最低分
        sum -= (max + min);
        // 输出结果
        System.out.println(sum / (nums.length-2));
        // 关闭Scanner 输入流
        in.close();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_40856560/article/details/112524072
今日推荐