给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空
白字符的非空字符串)和成绩([0,100]区间内的整数),输出最高分的学生信息。
函数接口定义:
struct Student max(struct Student stud[],int n);
void print(struct Student stud);
输入样例:
在这里给出一组输入。例如:
5
00001 zhang 70
00002 wang 80
00003 qian 90
10001 li 100
21987 chen 60
输出样例:
在这里给出相应的输出。例如:
10001 li 100
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include<stdio.h>
#define N 100
struct Student
{
int num;
char name[20];
int score;
};
int main()
{
int n;
scanf("%d",&n);
void print(struct Student stud);
struct Student max(struct Student stud[],int n);//结构体函数必须声明
struct Student stud[N],*p=stud;//不知道为啥把N改成n就会报错
for(int i=0;i<n;i++)
scanf("%d%s%d",&stud[i].num,&stud[i].name,&stud[i].score);
print(max(p,n));
return 0;
}
struct Student max(struct Student stud[],int n)
{
int i,j=0;
for(i=0;i<n;i++)
{
if(stud[i].score>stud[j].score)j=i;
}
return stud[j];
}
void print(struct Student stud)
{
printf("%d %s %d",stud.num,stud.name,stud.score);
}