Java程序设计计算分数求解

代码港湾 其他问答 1

【问题描述】

青年歌手大奖赛中,评委给参赛选手打分。选手得分规则为:去掉一个最高分和一个最低分,然后计算平均得分。编写程序,输出某选手的得分;输入数据中的第一个数是评委的人数,然后是这些评委的打分,数值之间用空格分隔。

【输入形式】

通过键盘依次输入评委的人数及各个评委的打分,数值之间以空格分隔。

【输出形式】

去掉一个最高分和一个最低分,计算平均分并在控制台打印出来。平均分取整数。

【样例输入】

5 7 8 9 8 7 【样例输出】

7 【样例说明】 输入 5 个评委的打分是:7 8 9 8 7,去掉一个最高分 9 分,再去掉一个最低分 7 分,计算平均分 = (8 + 8 + 7) / 3 = 7 分。

回复

共2条回复 我来回复
  • 源码港湾
    这个人很懒,什么都没有留下~
    评论
    import java.util.Scanner;
    class Main{
        public static void main(String args[]){
            Scanner in = new Scanner(System.in);
            int a,i,max=0,min=10,sum=0,b;
            a=in.nextInt();
            for(i=0;i<a;i++){
                b=in.nextInt();
                if(b>max){
                    max=b;
                }if(b<min){
                    min=b;
                }sum+=b;
            }System.out.printf("%d",(sum-max-min)/(a-2));
        }
    }
    
    0条评论
  • 代码项目助手
    这个人很懒,什么都没有留下~
    评论
            Scanner in = new Scanner(System.in);
            int a,i,max=0,min=Integer.MAX_VALUE,sum=0,b;
            a=in.nextInt();
            for(i=0;i<a;i++){
                b=in.nextInt();
                max = Math.max(max,b);
                min = Math.min(min,b);
                sum+=b;
            }
    
            if(a < 3)
                System.out.printf("%d",0);
            System.out.printf("%d",(sum-max-min)/(a-2));
    
    0条评论

发表回复

登录后才能评论