c语言。有10个学生,每个学生的信息包括学号、姓名、3门课的成绩,从键盘输入10个学生数据,要求打印每个学生3门课总平均成绩,以及最高分的学生的数据(包括学号、姓名、3门课成绩和平均分)。
时间: 2024-01-06 14:06:55 浏览: 208
C语言是一种通用的高级编程语言,它广泛应用于系统软件开发和嵌入式系统等领域。下面是一个实现你提到的需求的C语言代码:
```c
#include <stdio.h>
struct Student {
int id;
char name[50];
float scores[3];
float average;
};
int main() {
struct Student students[10];
float highestScore = 0;
int highestIndex = 0;
// 输入学生数据
for (int i = 0; i < 10; i++) {
printf("请输入第%d个学生的学号:", i + 1);
scanf("%d", &students[i].id);
printf("请输入第%d个学生的姓名:", i + 1);
scanf("%s", students[i].name);
printf("请输入第%d个学生的3门课成绩:\n", i + 1);
for (int j = 0; j < 3; j++) {
printf("请输入第%d门课的成绩:", j + 1);
scanf("%f", &students[i].scores[j]);
students[i].average += students[i].scores[j];
}
students[i].average /= 3;
// 更新最高分学生信息
if (students[i].average > highestScore) {
highestScore = students[i].average;
highestIndex = i;
}
}
// 打印每个学生的3门课总平均成绩
printf("\n每个学生的3门课总平均成绩如下:\n");
for (int i = 0; i < 10; i++) {
printf("学生%d:%s,平均成绩:%.2f\n", students[i].id, students[i].name, students[i].average);
}
// 打印最高分学生的信息
printf("\n最高分学生的信息如下:\n");
printf("学号:%d\n姓名:%s\n成绩:", students[highestIndex].id, students[highestIndex].name);
for (int i = 0; i < 3; i++) {
printf("%.2f ", students[highestIndex].scores[i]);
}
printf("\n平均分:%.2f\n", students[highestIndex].average);
return 0;
}
```
这段代码使用了结构体来存储学生的信息,通过循环输入学生数据,并计算每个学生的平均成绩。同时,通过比较平均成绩来找到最高分的学生,并打印其信息。
阅读全文
相关推荐

















