有五个学生,每个学生的数据包括学号、姓名、三门课的成绩,从键盘输入五个学生的数据,要求打印三门课总平均
成绩,以及最高分的学生的数据。。要求:用input函数输入五个学生数据;用一个average函数求总平均分;用max函数找出最高分学生数据;总平均和最高分的学生的数据都在...
成绩,以及最高分的学生的数据。。要求:用input函数输入五个学生数据;用一个average函数求总平均分;用max函数找出最高分学生数据;总平均和最高分的学生的数据都在主函数中输出
展开
1个回答
展开全部
#include "stdio.h"
struct student{
char id[6],name[8];
int score[3];
}stu[5];
void input(student stu[])
{
int i,j;
for(i=0;i<5;++i)
{
printf("Id: "); scanf("%s",&stu[i].id);
printf("Name: "); scanf("%s",&stu[i].name);
for(j=0;j<3;++j)
{
printf("Score[%d]: ",j+1); scanf("%d",&stu[i].score[j]);
}
}
}
void average (student stu[])
{
int i,j,ave,sum;
for(i=0;i<3;++i)
{
sum=0;
for(j=0;j<5;++j)
sum+=stu[j].score[i];
ave=sum/5;
printf("Average%d=%d\n",i+1,ave);
}
}
void max(student stu[])
{
int i,j,max=0,sum,maxi;
for(i=0;i<5;++i)
{
sum=0;
for(j=0;j<3;++j)
sum+=stu[i].score[j];
if (max<sum)
{
max=sum;
maxi=i;
}
}
printf("Max Score:\nid:%s\nname:%s\nscore[1]:%d\nscore[2]:%d\nscore[3]:%d\n",stu[maxi].id,stu[maxi].name,stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2]);
}
void main()
{
input(stu);
average(stu);
max(stu);
}
struct student{
char id[6],name[8];
int score[3];
}stu[5];
void input(student stu[])
{
int i,j;
for(i=0;i<5;++i)
{
printf("Id: "); scanf("%s",&stu[i].id);
printf("Name: "); scanf("%s",&stu[i].name);
for(j=0;j<3;++j)
{
printf("Score[%d]: ",j+1); scanf("%d",&stu[i].score[j]);
}
}
}
void average (student stu[])
{
int i,j,ave,sum;
for(i=0;i<3;++i)
{
sum=0;
for(j=0;j<5;++j)
sum+=stu[j].score[i];
ave=sum/5;
printf("Average%d=%d\n",i+1,ave);
}
}
void max(student stu[])
{
int i,j,max=0,sum,maxi;
for(i=0;i<5;++i)
{
sum=0;
for(j=0;j<3;++j)
sum+=stu[i].score[j];
if (max<sum)
{
max=sum;
maxi=i;
}
}
printf("Max Score:\nid:%s\nname:%s\nscore[1]:%d\nscore[2]:%d\nscore[3]:%d\n",stu[maxi].id,stu[maxi].name,stu[maxi].score[0],stu[maxi].score[1],stu[maxi].score[2]);
}
void main()
{
input(stu);
average(stu);
max(stu);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询