Moira Eisenhower 2021-11-29 00:29 采纳率: 50%
浏览 134
已结题

选手的个人得分与排名

评分与排名题目描述:在PK造船大赛的半决赛现场,有一批选手(假设为7人)参加比赛,并有5位评委给选手打分。打完分后,所有评委分数的和为该选手的最后得分。排名次有一条规则是:最后得分越高,名次越低(靠前)。当半决赛结束时,要在现场按照选手的出场顺序宣布最后得分和最后名次,获得相同分数的选手具有相同的名次,名次连续排,不用考虑同名次的选手人数。请编程实现组委会的评分和排名工作。输入:7行,每行5个数,表示5个评委对7位选手的评分。输出:2行,第1行为7位选手的最后得分(按出场顺序);第2行为每位选手的最后排名。

  • 写回答

2条回答 默认 最新

  • 关注

    代码如下:

    #include <stdio.h>
    int main()
    {
        int a[7][5],i,j,t;
        int total[7],pm[7],mc=1,index[7];
        for(i=0;i<7;i++)
        {
            total[i]=0;
            index[i]=i;
            for(j=0;j<5;j++)
            {
                scanf("%d",&a[i][j]);
                total[i] += a[i][j];
            }
        }
    
        //显示总成绩
        for(i=0;i<7;i++)
        {
            if(i<6)
                printf("%d ",total[i]);
            else
                printf("%d\n",total[i]);
        }
    
    
        //根据总成绩排名
        for (i=0;i<6;i++)
        {
            for (j=0;j<6-i;j++)
            {
                if(total[j]<total[j+1])
                {
                    t=total[j];
                    total[j]=total[j+1];
                    total[j+1] = t;
                    //交换索引
                    t = index[j];
                    index[j]=index[j+1];
                    index[j+1]=t;
                }
            }
        }
        //显示名次
        t = index[i];
        pm[t] = mc;
        for (i=1;i<7;i++)
        {
            t = index[i];
            if(total[i]== total[i-1])
            {
                pm[t]=mc;
            }else
            {
                mc++;
                pm[t]=mc;
            }
            
        }
        for (i=0;i<7;i++)
        {
            if(i<6)
                printf("%d ",pm[i]);
            else
                printf("%d\n",pm[i]);
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月24日
  • 已采纳回答 5月16日
  • 创建了问题 11月29日

悬赏问题

  • ¥15 公交车和无人机协同运输
  • ¥15 stm32代码移植没反应
  • ¥15 matlab基于pde算法图像修复,为什么只能对示例图像有效
  • ¥100 连续两帧图像高速减法
  • ¥15 组策略中的计算机配置策略无法下发
  • ¥15 如何绘制动力学系统的相图
  • ¥15 对接wps接口实现获取元数据
  • ¥20 给自己本科IT专业毕业的妹m找个实习工作
  • ¥15 用友U8:向一个无法连接的网络尝试了一个套接字操作,如何解决?
  • ¥30 我的代码按理说完成了模型的搭建、训练、验证测试等工作(标签-网络|关键词-变化检测)