JAVA PTA 7-1 作品评分 (10 分)

全国中小学生Scratch作品大赛拉开了序幕。每个参赛选手可以通过网络直接上传作品。本次比赛人人可做评委。每个网络评委可以通过网络对每一件作品进行打分。评分系统也是请程序高手设计的,能自动去掉一个最高分和一个最低分,求出平均分。

输入格式:

输入数据包括两行: 第一行为n,表示n个评委,n>2。 第二行是n个评委的打分,分数之间有一个空格。打分是可以带有小数部分的。

输出格式:

输出平均分,结果保留两位小数。

输入样例:

6
10 9 8 7.9 9 9.5

输出样例:

8.88

 

import java.util.*;
 
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);//通过new Scanner(System.in)创建一个新的Scanner命名为in,控制台会一直等待输入,直到敲回车键结束,
                                            //把所输入的内容传给Scanner,作为扫描对象。
        int n = in.nextInt();//只能输入int类型的字符串
        in.nextLine();//返回Enter键之前的所有字符,所以可以得到带空格的字符串
        float sum = 0;
        List nums = new ArrayList();//是泛型,表示该List中只能放Float对象
        String[] line = in.nextLine().split(" ");//根据空格,将字符串拆分为字符串数组。
        for (String str : line) {
            nums.add(Float.valueOf(str));//Float.valueOf(String)是把String字符串转换成float的封装类Float
        }
        Collections.sort(nums);//由小到大对List集合中的元素进行排序
        nums.remove(0);//去掉最小值
        nums.remove(nums.size() - 1);//去掉最大值
        for (double num : nums) {
            sum += num;
        }//求去掉最小数和最大数后的和
        System.out.println(String.format("%.2f", sum / (n - 2)));//.format将平均分转换为两位小数的浮点数
    }
}

 

你可能感兴趣的:(JAVA PTA 7-1 作品评分 (10 分))