当前位置: 首页 > article >正文

考试排名(一)(结构体专题)

#include<stdio.h>
#include<string.h>
typedef struct
{
    char xuehao[20];
    int passnum;//过题数
    int s;//总分
}p;
int main()
{
    
    int N,M,G;
    scanf("%d %d %d",&N,&M,&G);
    p a[N];
    int b[M];
    for(int i=0;i<M;i++)
    {
        scanf("%d",&b[i]);//录入每题分数
    }
    for(int i=0;i<N;i++)
    {
        a[i].s=0;//将每个人的总分初始化为0
    }
    for(int i=0;i<N;i++)
    {
        scanf("%s %d",a[i].xuehao,&a[i].passnum);//录入学号  过题数
        for(int j=0;j<a[i].passnum;j++)
        {
            int x;//过题编号
            scanf("%d",&x);
            a[i].s=a[i].s+b[x-1];//求和
        }
    }
    int count=0;//计数
    for(int i=0;i<N;i++)
    {
        if(a[i].s>=G)
        {
            count++;
        }
    }
    for(int i=0;i<N-1;i++)
    {
        for(int j=i+1;j<N;j++)
        {
            if(a[i].s>=G&&a[i].s<a[j].s)
            {
                    p t=a[i];
                    a[i]=a[j];
                    a[j]=t;
            }
            else if(a[i].s==a[j].s&&a[i].s>=G&&strcmp(a[i].xuehao,a[j].xuehao)>0))
            {
                p t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
            
        }
    }
    printf("%d\n",count);
    for(int i=0;i<N;i++)
    {
      if(a[i].s>=G)
      {
          printf("%s %d\n",a[i].xuehao,a[i].s);
      }
    }
    
    return 0;
}

题目描述

今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总成绩。现给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的成绩按降序打印。

输入描述

第1行给出考生人数N ( 1<= N<=100 )、考题数M (1<=M<=10 )、分数线(正整数)G;
第2行排序给出第1题至第M题的正整数分值;
以下N行,每行给出一名考生的准考证号(长度不超过20的字符串)、该生解决的题目总数m、以及这m道题的题号
(题目号由1到M)。

输出描述

首先在第1行输出不低于分数线的考生人数n,随后n行按分数从高到低输出上线考生的考号与分数,其间用1空格分隔。若有多名考生分数相同,则按他们考号的升序输出。

样例输入

4 5 25
10 10 12 13 15
CS004 3 5 1 3
CS003 5 2 4 1 3 5
CS002 2 1 2
CS001 3 2 3 5

样例输出

3
CS003 60
CS001 37
CS004 37

 


http://www.kler.cn/a/416539.html

相关文章:

  • 最小有向包围盒——2D平面
  • 【Java基础面试题001】Java中序列化和反序列化是什么?
  • 机载视频流回传+编解码方案
  • 当测试时间与测试资源有限时,你会如何优化测试策略?
  • 重塑视频新语言,让每一帧都焕发新生——Video-Retalking,开启数字人沉浸式交流新纪元!
  • llamaindex实战-ChatEngine-ReAct Agent模式
  • 2024年11月一区SCI-Alpha evolution-附Matlab免费代码
  • javax.net.ssl.SSLHandshakeException: Received fatal alert: protocol_version
  • DM-VIO(ROS)+t265配置运行记录(ubuntu18.04+ros melodic)
  • Maven - 优雅的管理多模块应用的统一版本号
  • 利用Java爬虫精准获取淘宝商品详情的探索之旅
  • Mac 环境下类Xshell 的客户端介绍
  • 周期性移动模式地铁乘客流量预测
  • git 本地同步远端分支
  • 记录一次 k8s 节点内存不足的排查过程
  • requests文件上传和表单参数
  • Golang 构建学习
  • Java爬虫:深入探索1688接口的奥秘
  • Elasticsearch实战:从搜索到数据分析的全面应用指南
  • Vue封装组件
  • 详解collections库常用的数据结构
  • hive和spark读写分区表NULL列
  • 哈希表算法题
  • Oracle系列---【关闭归档日志】
  • RL78/G15 Fast Prototyping Board Arduino IDE 平台开发过程
  • 【数据湖仓】-- 阿里云 EMR 和 AWS EMR 工具对比