#include<stdio.h>
#define n 3
struct student{
int num;
char name[20];
float cj[3];
float pj;
};
int main()
{
void input(struct student a[]);
struct student max(struct student a[]);
void print(struct student a);
struct student a[n],*p=a;
input(p);
print(max(p));
return 0;
}
void input(struct student a[])
{
int i;
printf("请输入学生数据:\n");
for(i=0;i<n;i++)
{
scanf("%d %s %f %f %f",&a[i].num,&a[i].name,&a[i].cj[0],&a[i].cj[1],&a[i].cj[2]);
a[i].pj=(a[i].cj[0]+a[i].cj[1]+a[i].cj[2])/3.0;
}
}
struct student max(struct student a[])
{
int i,m=0;
for(i=0;i<n;i++)
{
if(a[i].pj>a[m].pj)
m=i;
}
return a[m];
}
void print(struct student a)
{
printf("成就最高的学生:");
printf("学号:%d\n姓名:%s\n三门课成绩:%5.1f,%5.1f,%5.1f\n平均成绩:%6.2f\n",
a.num,a.name,a.cj[0],a.cj[1],a.cj[2],a.pj);
}
(结构体指针和结构体变量作函数参数)有3个结构体变量,内含学生学号,姓名,三门成绩。按照要求输出成绩最高学生的信息
于 2022-05-21 22:59:53 首次发布