输入30位学生的姓名及数学、英语成绩,输出平均分最高的学生的姓名及其数学和英语成绩。用c语言编写
时间: 2023-09-06 08:08:51 浏览: 139
输出学生成绩(C语言)
这是一段 C 语言代码,可以实现输入 30 位学生的姓名及数学、英语成绩,并输出平均分最高的学生的姓名及其数学和英语成绩。
```c
#include <stdio.h>
#include <string.h>
struct Student {
char name[20];
float math_score;
float eng_score;
float avg_score;
};
int main() {
struct Student students[30];
float max_avg_score = 0;
int max_index = 0;
// 输入学生信息
for (int i = 0; i < 30; i++) {
printf("请输入第 %d 位学生的姓名、数学成绩和英语成绩,用空格隔开:", i + 1);
scanf("%s %f %f", students[i].name, &students[i].math_score, &students[i].eng_score);
students[i].avg_score = (students[i].math_score + students[i].eng_score) / 2;
if (students[i].avg_score > max_avg_score) {
max_avg_score = students[i].avg_score;
max_index = i;
}
}
// 输出平均分最高的学生信息
printf("平均分最高的学生是:%s,数学成绩为:%.2f,英语成绩为:%.2f,平均分为:%.2f\n",
students[max_index].name, students[max_index].math_score, students[max_index].eng_score, students[max_index].avg_score);
return 0;
}
```
代码中使用了一个结构体 Student 来存储每个学生的信息,包括姓名、数学成绩、英语成绩和平均分。通过循环输入 30 位学生的信息,并计算平均分,同时记录平均分最高的学生的下标。最后输出平均分最高的学生的信息。
阅读全文