1004 成绩排名 (20 分)

Posted cqce

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1004 成绩排名 (20 分)相关的知识,希望对你有一定的参考价值。

读入 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 

输出样例:

Mike CS991301 Joe Math990112 
//成绩排名
#include <stdio.h>
#include <stdlib.h>
typedef struct{
char name[15];
char num[15];
int score;
} Student;

int main(void)
{
int n,i,j;
scanf("%d",&n);
Student stu[n],temp;
for (i=0;i<n;i++)
scanf("%s%s%d",stu[i].name,stu[i].num,&stu[i].score);
for (i=1;i<n;i++)
for (j=0;j<n-i;j++)
if (stu[j].score>stu[j+1].score)
{
temp=stu[j];
stu[j]=stu[j+1];
stu[j+1]=temp;
}
printf("%s %s ",stu[n-1].name,stu[n-1].num);
printf("%s %s ",stu[0].name,stu[0].num);
system("pause");
return 0;
}

以上是关于1004 成绩排名 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

1004 成绩排名 (20 分)

JAVA1004 成绩排名 (20分) PAT乙级 PAT (Basic Level) Practice(中文)

PATB1004 成绩排名(20 分)

1004 成绩排名 (20 分)

Java 1004 成绩排名 (20 分)

PAT乙级 1004 成绩排名 (20 分)