#include<stdio.h>
#define N 5 //N的值可以发生改变
typedef struct student
{
long number;
char name[20];
int score;
}STU;
void fun(STU a[], STU* s)//STU* s指形参m
{
int i;
*s = a[0];//假设数组中第一个元素,就是我门要找的值
for (i = 1; i < N; i++)//通过for循环来遍历这个a
{
if (a[i].score > s->score)//遍历的元素与当前s指向的元素比较
{
*s = a[i];//来替换掉当前指向的元素
}
}
// printf("%d %s %d\n",s->number,s->name,s->score);
}
void fun2(STU b[],int m)
{
int i;
for(i=0;i<m;i++)
{
printf("%d %s %d\n",b[i].number,b[i].name,b[i].score);
}
}
int main()
{ int i;
int sum=0;
double ave;
STU a[N]={
{19040301,“zhang liang”,87,},
{19040302,“li long”,92,},
{20040302,“yan feng”,83,}};
STU m;
fun(a,&m);
printf("%d %s %d\n",m.number,m.name,m.score);
fun2(a,N);
for(i=0;i<N;i++)
{
sum=sum+a[i].score;
}
printf(“N个学生的平均成绩为:%d”,sum/N);
//由于没有输入其余学生的成绩,这里其他学生的成绩按0计算,请尝试使用scanf函数补足其余学生的成绩
return 0;
}