Fraternity_ 2023-11-18 23:44 采纳率: 0%
浏览 39

7-19 求出歌手的得分ptaC语言详解

在歌手大赛中,有n个评委为参赛的歌手打分,分数为0~100分。歌手最后得分为去掉m个最高分和m个最低分后,剩余的n−2m个分数的平均值。

输入格式:
输入数据的第一行为一个正整数T,表示测试数据的组数,然后是T组测试数据。对于每组测试数据,第一行输入两个整数n,m(3<n<100,m<n/2),含义如上;第二行输入n个整数。

输出格式:
对于每组测试数据,输出一行,包含一个实数,表示歌手的最后得分。结果保留两位小数。

输入样例:
2
10 1
20 20 80 80 10 10 10 40 40 60
10 2
20 20 80 80 10 10 10 40 40 60
输出样例:
35.00
31.67
怎么做?

  • 写回答

2条回答 默认 最新

  • threenewbee 2023-11-19 00:10
    关注
    #include <stdio.h>
     
    int main()
    {
        int cnt;
        scanf("%d", &cnt);
        for (int i = 0; i < cnt; i++)
        {
            int n, m;
            scanf("%d%d", &n, &m);
            int a[n];
            for (int i = 0; i < n; i++)
            {
                scanf("%d", &a[i]);
            }
            for (int i = 0; i < n - 1; i++)
            {
                for (int j = 0; j < n - i - 1; j++)
                {
                    if (a[j] > a[j + 1])
                    {
                        int t = a[j];
                        a[j] = a[j + 1];
                        a[j + 1] = t;
                    }
                }
            }
            int sum = 0;
            for (int i = 0 + m; i < n - m; i++)
                sum += a[i];
            printf("%.2f\n", sum * 1.0 / (n - 2 * m));
        }
        return 0;
    }
    

    img

    评论

报告相同问题?

问题事件

  • 创建了问题 11月18日

悬赏问题

  • ¥20 指导如何跑通以下两个Github代码
  • ¥15 大家知道这个后备文件怎么删吗,为啥这些文件我只看到一份,没有后备呀
  • ¥15 C++为什么这个代码没报错运行不出来啊
  • ¥15 一道ban了很多东西的pyjail题
  • ¥15 关于#r语言#的问题:如何将生成的四幅图排在一起,且对变量的赋值进行更改,让组合的图漂亮、美观@(相关搜索:森林图)
  • ¥15 C++识别堆叠物体异常
  • ¥15 微软硬件驱动认证账号申请
  • ¥15 GPT写作提示指令词
  • ¥20 根据动态演化博弈支付矩阵完成复制动态方程求解和演化相图分析等
  • ¥15 华为超融合部署环境下RedHat虚拟机分区扩容问题