PAT乙级1004

迈不过友情╰ 2022-05-17 11:57 393阅读 0赞

1004 成绩排名 (20)(20 分)

读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。

输入格式:每个测试输入包含1个测试用例,格式为\

  1. 1行:正整数n
  2. 2行:第1个学生的姓名 学号 成绩
  3. 3行:第2个学生的姓名 学号 成绩
  4. ... ... ...
  5. n+1行:第n个学生的姓名 学号 成绩

其中姓名和学号均为不超过10个字符的字符串,成绩为0到100之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。

输出格式:对每个测试用例输出2行,第1行是成绩最高学生的姓名和学号,第2行是成绩最低学生的姓名和学号,字符串间有1空格。

输入样例:

  1. 3
  2. Joe Math990112 89
  3. Mike CS991301 100
  4. Mary EE990830 95

输出样例:

  1. Mike CS991301
  2. Joe Math990112
  3. #include<iostream>
  4. using namespace std;
  5. typedef struct
  6. {
  7. char name[11];
  8. char number[11];
  9. int score;
  10. }student;
  11. int main()
  12. {
  13. int n,i;
  14. cin>>n;
  15. student a[n];
  16. for(i=0;i<n;i++)
  17. {
  18. cin>>a[i].name>>a[i].number>>a[i].score;
  19. }
  20. int min=101,max=-1,maxnumber,minnumber;
  21. for(i=0;i<n;i++)
  22. {
  23. if(max<a[i].score)
  24. {
  25. max=a[i].score;
  26. maxnumber=i;
  27. }
  28. if(min>a[i].score)
  29. {
  30. min=a[i].score;
  31. minnumber=i;
  32. }
  33. }
  34. cout<<a[maxnumber].name<<' '<<a[maxnumber].number<<endl;
  35. cout<<a[minnumber].name<<' '<<a[minnumber].number;
  36. return 0;
  37. }

发表评论

表情:
评论列表 (有 0 条评论,393人围观)

还没有评论,来说两句吧...

相关阅读

    相关 PAT乙级1004

    1004 成绩排名 (20)(20 分) 读入n名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。 输入格式:每个测试输入包含1个测试用例,格式为\\

    相关 PAT乙级1013

    1013 数素数(20 分) 令 Pi 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 PM 到 PN 的所有素数。 输入格式: 输入在一行中给出 M

    相关 PAT乙级1031

    1031 查验身份证 (15 分) 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下: 首先对前17位数字加权求和,权重分配为:\

    相关 PAT乙级1044

    1044 火星数字 (20 分) 火星人是以 13 进制计数的: 地球人的 0 被火星人称为 tret。 地球人数字 1 到 12 的火星文分别为:jan, f

    相关 PAT~乙级~1004 成绩排名~C++

    题目链接:[成绩排名][Link 1] 题目描述: 读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。 输入格式: 每个测试输入

    相关 PAT A1004

    ![clipboard.png][] 还是数层数和数节点的问题,个人觉得用BFS比较好; 当然用DFS也能做,具体的思路就是建立层数数组,深度遍历到x层的时候,如果是叶子