在visual studio2022环境下,用数组的知识,函数的知识编写有十个学生,每个学生的数据包括学号,姓名,3门课的成绩,从键盘输入10个学生数据,要求输入3门课程总平均成绩,以及最高分的学生的数据(包括学号,姓名,3门课成绩,平均分数)
先定义学生结构体,然后for循环输入
#include <stdio.h>
typedef struct _student
{
int id;
char name[20];
float score[3];
float avg;
}student;
int main()
{
student stu[10];
int i,max;
float avg[3] = {0};
for(i=0;i<10;i++)
{
printf("请输入第%d个学生的学号:",i+1);
scanf("%d",&stu[i].id);
printf("请输入第%d个学生的姓名:",i+1);
scanf("%s",stu[i].name);
printf("请输入第%d个学生的第一门课成绩:",i+1);
scanf("%f",&stu[i].score[0]);
printf("请输入第%d个学生的第二门课成绩:",i+1);
scanf("%f",&stu[i].score[1]);
printf("请输入第%d个学生的第三门课成绩:",i+1);
scanf("%f",&stu[i].score[2]);
stu[i].avg = (stu[i].score[0] + stu[i].score[1] + stu[i].score[2])/3;
if(i==0 || stu[i].avg > stu[max].avg)
max = i;
avg[0] += stu[i].score[0]/10;
avg[1] += stu[i].score[1]/10;
avg[2] += stu[i].score[2]/10;
}
printf("\n三门课的平均分分别为: %.1f,%.1f,%.1f\n",avg[0],avg[1],avg[2]);
printf("最高分学生信息为:\n");
printf("学号: %d\n",stu[max].id);
printf("姓名: %s\n",stu[max].name);
printf("课程1成绩: %.1f\n",stu[max].score[0]);
printf("课程1成绩: %.1f\n",stu[max].score[1]);
printf("课程1成绩: %.1f\n",stu[max].score[2]);
printf("平均分: %.1f\n",stu[max].avg);
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!