/*编写程序处理10个学生的信息,每个学生的信息包括:学号、姓名、三门成绩。
要求从键盘输入学生的数据用一个函数实现,输出成绩表(包括每个学生的学号、姓名、三门成绩及平均分数)
用一个函数,再用一个函数输出平均分在前3名的学生姓名及平均分。
*/
#include<stdio.h>
#define N 10
struct student
{
int xuehao;
char xingming[20];
float chengji1;
float chengji2;
float chengji3;
};
struct pj
{
float pingjun;
};
int main()
{
struct student data[N];
struct pj chengji[N];
int i,j;
float m1=0,m2=0,m3=0,p;
printf("输入学生学号、姓名、语文成绩、数学成绩、英语成绩:\n");
for(i=0;i<N;i++)
scanf("%d %s %f %f %f",&data[i].xuehao,&data[i].xingming,
&data[i].chengji1,&data[i].chengji2,&data[i].chengji3);
printf("---------------------------------------------------------\n");
printf("输出学生学号、姓名、三门成绩及平均分数:\n");
for(j=0;j<N;j++)
{
chengji[j].pingjun=(data[j].chengji1+data[j].chengji2+data[j].chengji3)/3;
printf("学号:%d 姓名:%s 成绩:%-3.1f %-3.1f %-3.1f 平均分数:%-3.1f\n",data[j].xuehao,data[j].xingming,
data[j].chengji1,data[j].chengji2,data[j].chengji3,chengji[j].pingjun);
}
for(i=0;i<N;i++)
{
for(j=0;j<N-i-1;j++)
{
if(chengji[j].pingjun<chengji[j+1].pingjun)
{
p=chengji[j].pingjun;
chengji[j].pingjun=chengji[j+1].pingjun;
chengji[j+1].pingjun=p;
}
}
}
printf("\n\n");
for(i=0;i<3;i++)
printf("第%d名的姓名:%s 平均成绩:%-3.1f\n",i+1,data[i].xingming,chengji[i].pingjun);
}
要求从键盘输入学生的数据用一个函数实现,输出成绩表(包括每个学生的学号、姓名、三门成绩及平均分数)
用一个函数,再用一个函数输出平均分在前3名的学生姓名及平均分。
*/
#include<stdio.h>
#define N 10
struct student
{
int xuehao;
char xingming[20];
float chengji1;
float chengji2;
float chengji3;
};
struct pj
{
float pingjun;
};
int main()
{
struct student data[N];
struct pj chengji[N];
int i,j;
float m1=0,m2=0,m3=0,p;
printf("输入学生学号、姓名、语文成绩、数学成绩、英语成绩:\n");
for(i=0;i<N;i++)
scanf("%d %s %f %f %f",&data[i].xuehao,&data[i].xingming,
&data[i].chengji1,&data[i].chengji2,&data[i].chengji3);
printf("---------------------------------------------------------\n");
printf("输出学生学号、姓名、三门成绩及平均分数:\n");
for(j=0;j<N;j++)
{
chengji[j].pingjun=(data[j].chengji1+data[j].chengji2+data[j].chengji3)/3;
printf("学号:%d 姓名:%s 成绩:%-3.1f %-3.1f %-3.1f 平均分数:%-3.1f\n",data[j].xuehao,data[j].xingming,
data[j].chengji1,data[j].chengji2,data[j].chengji3,chengji[j].pingjun);
}
for(i=0;i<N;i++)
{
for(j=0;j<N-i-1;j++)
{
if(chengji[j].pingjun<chengji[j+1].pingjun)
{
p=chengji[j].pingjun;
chengji[j].pingjun=chengji[j+1].pingjun;
chengji[j+1].pingjun=p;
}
}
}
printf("\n\n");
for(i=0;i<3;i++)
printf("第%d名的姓名:%s 平均成绩:%-3.1f\n",i+1,data[i].xingming,chengji[i].pingjun);
}