zoukankan      html  css  js  c++  java
  • 1073-成绩排名

    描述

     

    每学期考试结束,教务处老师都要对学生成绩进行一些统计。请你帮助教务处老师对学生成绩从高到低进行排名。成绩相同,排名序号相同,先后出现顺序与原始次序相同。

    输入

     

    第一行是一个正整数:测试用例数目,最多为100。之后,每个测试用例包括:

    l       第1行,含一个整数n:1≤n≤100,表示学生数

    l       n行,每一行含一个字符串(长度不超过10)、一个整数,分别表示学生的学号、成绩

    输出

     

    对于每个测试用例:

    l       输出“Case #:”,#表示序号

    l       输出n行,每一行含排名序号、学生学号、成绩

    注意:输出部分的结尾要求包含一个多余的空行。

    样例输入

    2

    5

    B05021924 90

    B07030901 91

    B07030419 90

    B07021027 93

    B06060606 87

    1

    D0408 100

    样例输出

    Case 1:

    1 B07021027 93

    2 B07030901 91

    3 B05021924 90

    3 B07030419 90

    5 B06060606 87

    Case 2:

    1 D0408 100

    #include<iostream>
    using namespace std;
    struct node
    {
        char name[11];
        int num;
        struct node *next;
    };
    int main()
    {
        //freopen("a.txt","r",stdin);
        struct node str[101];
        struct node *pt,*p;
        char a[11];
        int b;
        int N,n,i,j,k;
        scanf("%d",&N);
        for(k=1;k<=N;k++)
        {
            for(i=0;i<=100;i++)
            {
                str[i].num=0;
                str[i].next=NULL;
            }
            scanf("%d",&n);
            for(i=0;i<n;i++)
            {
                scanf("%s%d",&a,&b);
                pt=&str[b];
                for(j=0;j<str[b].num;j++)
                {
                    pt=pt->next;
                }
                p=new struct node;
                strcpy(p->name,a);
                p->next=NULL;
                str[b].num++;
                pt->next=p;
            }
            cout<<"Case "<<k<<":"<<endl;
            for(i=100,j=1;i>=0;i--)
            {
                if(str[i].num!=0)
                {
                    pt=str[i].next;
                    while(pt!=NULL)
                    {
                        cout<<j<<' ';
                        cout<<pt->name<<' '<<i<<endl;
                        pt=pt->next;
                    }
                    j+=str[i].num;
                }
            }
        }
        return 0;
    } 
    

      

    题目来源

  • 相关阅读:
    谈谈vertical-align的text-bottom和text-top
    【golang】代码学习
    【golang】json相关:unmarshal
    【tidb】相关的调研
    【php】sort函数整理
    【hive学习笔记1】-开始
    python2和python3区别
    python: 类型转换(int,long,float->string)
    【java】查找应用程序的资源
    【java】已经学习的部分
  • 原文地址:https://www.cnblogs.com/Rosanna/p/3436842.html
Copyright © 2011-2022 走看看