原题链接:[编程入门]结构体之成绩统计2
#include <stdio.h>
// 定义学生结构体
typedef struct
{
char id[20];
char name[20];
int score[3];
} Student;
int main()
{
int N;
scanf("%d", &N);
Student students[N];
double avg_score[3] = {0}; // 保存三门课的总成绩
int max_score = 0; // 最高分
int max_index = 0; // 最高分学生的索引
// 输入学生数据记录
for (int i = 0; i < N; i++)
{
scanf("%s %s %d %d %d", students[i].id, students[i].name, &students[i].score[0], &students[i].score[1], &students[i].score[2]);
// 统计总成绩
for (int j = 0; j < 3; j++)
{
avg_score[j] += students[i].score[j];
}
// 寻找最高分学生
int total_score = students[i].score[0] + students[i].score[1] + students[i].score[2];
if (total_score > max_score)
{
max_score = total_score;
max_index = i;
}
}
// 计算平均成绩
for (int i = 0; i < 3; i++)
{
avg_score[i] /= N;
printf("%.0f ", avg_score[i]);
}
// 输出最高分学生数据
printf("\n%s %s %d %d %d\n", students[max_index].id, students[max_index].name, students[max_index].score[0], students[max_index].score[1], students[max_index].score[2]);
return 0;
} 0.0分
0 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复