PAT (Basic Level) Practice (中文) 1004成绩排名
2019-03-03 15:40
459 查看
读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。
输入格式:
每个测试输入包含 1 个测试用例,格式为
第 1 行:正整数 n
第 2 行:第 1 个学生的姓名 学号 成绩
第 3 行:第 2 个学生的姓名 学号 成绩
… … …
第 n+1 行:第 n 个学生的姓名 学号 成绩
其中姓名和学号均为不超过 10 个字符的字符串,成绩为 0 到 100 之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。
输出格式:
对每个测试用例输出 2 行,第 1 行是成绩最高学生的姓名和学号,第 2 行是成绩最低学生的姓名和学号,字符串间有 1 空格。
输入样例:
3
Joe Math990112 89
Mike CS991301 100
Mary EE990830 95
1
2
3
4
输出样例:
Mike CS991301
Joe Math990112
1
2
[code]#include<stdio.h> /* 发现 struct student { char name[11]; char studentnumber[11]; int score; }; 这样的形式定义PTA只给2分 而下面的方法PTA给正确 */ typedef struct { char name[11]; char studentnumber[11]; int score; }student; int main() { int renshu=1,max=0,min=100,high=0,low=0; scanf("%d",&renshu); student stu[renshu]; for(int i=0;i<renshu;i++) { scanf("%s %s %d",stu[i].name,stu[i].studentnumber,&stu[i].score); if(stu[i].score>max) { max=stu[i].score; high=i; } if(stu[i].score<min) { min=stu[i].score; low=i; } } printf("%s %s\n",stu[high].name,stu[high].studentnumber); printf("%s %s",stu[low].name,stu[low].studentnumber); return 0;
看了大部分网上的做法都差不多这个方式
相关文章推荐
- PAT (Basic Level) Practice (中文)1004 成绩排名
- PAT (Basic Level) Practise (中文)1004. 成绩排名 (20)
- PAT (Basic Level) Practise (中文)1004. 成绩排名 (20) C语言
- PAT (Basic Level) Practise (中文)1004. 成绩排名 (20)
- PAT (Basic Level) Practise (中文)---1004 成绩排名 (20)
- PAT (Basic Level) Practise (中文)- 1004. 成绩排名 (20)
- PAT (Basic Level) Practise (中文)1004. 成绩排名 (20)
- PAT (Basic Level) Practise (中文)1004. 成绩排名 (20)
- PAT (Basic Level) Practise (中文) 1004成绩排名(20)
- Pat(Basic Level)Practice--1004(成绩排名)
- PAT (Basic Level) 1004. 成绩排名 (20)
- PAT (Basic Level) Practice (中文)-1004
- PAT (Basic Level) Practise 的C++实现-1004.成绩排名
- PAT BASIC LEVEL 1004. 成绩排名 (20)
- 【C++】浙大PAT (Basic Level)1004. 成绩排名 (20)
- 浙江大学PAT---Basic Level---1004----成绩排名
- PAT (Basic Level)1004. 成绩排名
- PAT (Basic Level) Practice (中文)1077 互评成绩计算(C语言)
- PAT (Basic Level) Practice 1036. 成绩排名
- PAT(basic level) 1004 成绩排名