用c语言编写:有5个学生,每个学生有3门课程的成绩,从键盘输入以上数据(包括学号、姓名、3门课成绩),计算出平均成绩(12分)
时间: 2024-10-28 20:15:11 浏览: 179
在C语言中,你可以使用结构体来表示学生的信息,并通过循环来读取和处理数据。下面是一个简单的示例程序,它定义了一个学生结构体并实现了所需的功能:
```c
#include <stdio.h>
#include <string.h>
// 定义学生信息结构体
typedef struct {
int student_id;
char name[50];
float score1;
float score2;
float score3;
} Student;
void input_student_data(Student* student) {
printf("请输入学生信息(学号,姓名,三门课成绩):\n");
scanf("%d", &student->student_id);
fgets(student->name, sizeof(student->name), stdin); // 注意fgets避免换行字符
scanf("%f", &student->score1);
scanf("%f", &student->score2);
scanf("%f", &student->score3);
}
float calculate_average_score(Student* student) {
return (student->score1 + student->score2 + student->score3) / 3.0;
}
int main() {
Student students[5]; // 学生数组
int i;
for (i = 0; i < 5; i++) {
input_student_data(&students[i]);
}
printf("\n学生的平均成绩如下:\n");
for (i = 0; i < 5; i++) {
float average = calculate_average_score(&students[i]);
printf("学生%02d %s 的平均成绩是 %.2f 分\n", students[i].student_id, students[i].name, average);
}
return 0;
}
```
当你运行这个程序时,会提示用户逐个输入五个学生的学号、姓名以及三门课程的成绩,然后计算并打印出每个学生的平均成绩。
阅读全文