有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据 要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩)
/*有10个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入10个学生数据 要求输出3门课程总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课程成绩)*/
#include <stdio.h>
#define N 3
struct Student{
char num[10];
char name[10];
float score[3];
}student[N];
int main()
{
int i,j,k;
float sum = 0.0,max = 0.0;
printf("请输入学生信息:\n");
for(i = 0;i < N;i++)
{
printf("学生学号:");
scanf("%s",student[i].num);
printf("学生姓名:");
scanf("%s",student[i].name);
printf("学生成绩:");
scanf("%f %f %f",&student[i].score[0],&student[i].score[1],&student[i].score[2]);
printf("\n");
}
for(i = 0;i < N;i++)
{
sum = 0.0;
for(j = 0;j < 3;j++)
{
sum += student[i].score[j];
}
printf("平均成绩是:%f\n",sum / 3);
if(sum / 3 > max)//判断是否最高
{
max = sum / 3;
k = i;
}
}
printf("\n最高分的学生学号是:%s\n姓名是:%s\n",student[k].num,student[k].name);
printf("成绩是:%f %f %f\n",student[k].score[0],student[k].score[1],student[k].score[2]);
printf("平均成绩是:%f",max);
}
谭浩强C程序设计(第四版)p330第5题
还没有评论,来说两句吧...