java专项练习(评分)

复制代码
package 专题练习;

import java.util.Scanner;

public class marking_by_judges {
    //需求:在唱歌比赛中,有6名评委给选手打分,范围是[0,100]的整数.
    //选手最后得分为去掉最高分和最低分的平均分
    public static void main(String[] args) {
        //储存分数数组
        int[] score_six = new int[6];
        for (int i = 0; i < 6; i++) {
            System.out.println("please input NO." + " " + (i+1) + "  " + "number :");
            score_six[i] = score();
            if(score_six[i] == -1) {
                System.out.println("No. " + (i + 1) + " is wrong");
                return;
            }
        }
        avg_score(score_six);
    }





    //打分
    public static int score(){
        Scanner k = new Scanner(System.in);
        int num = k.nextInt();
        if(num > 100 || num < 0){
            return -1;
        }

        return num;
    }



    //算均分
    public static void avg_score(int[] data){
        int temp;
        //先从小到大排序  , 当然也可以直接找到最大值和最小值
        for (int i = 0; i < data.length ; i++) {
            for (int j = i+1; j < data.length ; j++) {
                if(data[i] > data[j]){
                    temp = data[j];
                    data[j] = data[i];
                    data[i] = temp;
                }
            }
        }

        int sum = 0;
        for (int t = 1; t < data.length - 1; t++) {
            sum = sum + data[t];
        }


        System.out.println("The average number is " + sum * 1.0 / 4.0);
    }
}
相关推荐
牛艺翔1 小时前
C++基础
开发语言·c++
键盘会跳舞1 小时前
C++ :容器适配器stack源码级拆解
开发语言·c++··stack·先进后出
linux-hzh1 小时前
百日算法修炼 · Day 03
java·算法
美味蛋炒饭.1 小时前
Git 版本控制(下)
开发语言·git·学习·总结·后端开发
我星期八休息2 小时前
网络编程—网络层
开发语言·前端·网络·人工智能·智能路由器
不负岁月无痕2 小时前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
mister_guo2 小时前
Java线程池参数应该如何设置(ThreadPoolExecutor)
java
余额瞒着我当琳2 小时前
C++模板初阶与STL初探
android·java·c++
SomeB1oody2 小时前
【RustyML入门】2.9. MeanShift
开发语言·后端·机器学习·rust·教程
淡海水2 小时前
15-02-YooAsset面试篇-Unity架构设计与源码
java·unity·面试·c#·游戏引擎·yooasset