输入三名学生学号和三门课程成绩 输出学生平均成绩 用结构体
时间: 2024-09-14 13:13:13 浏览: 46
为了实现这个功能,我们可以使用C语言中的结构体(struct)来存储学生的学号、姓名以及三门课程的成绩。首先,定义一个名为`Student`的结构体:
```c
typedef struct {
int student_id; // 学号
char name[50]; // 姓名
float course1_score; // 第一门课程成绩
float course2_score; // 第二门课程成绩
float course3_score; // 第三门课程成绩
} Student;
```
接下来,你可以创建一个函数,接收三个`Student`类型的元素,并计算每个学生的平均成绩:
```c
void calculate_average(Student students[], int num_students) {
for (int i = 0; i < num_students; i++) {
double total_score = students[i].course1_score +
students[i].course2_score +
students[i].course3_score;
double average = total_score / 3.0;
printf("学生 %d 的平均成绩: %.2f\n", students[i].student_id, average);
}
}
```
最后,你可以在主程序中创建学生数据并调用这个函数:
```c
int main() {
Student students[3] = {
{1, "小明", 85.0, 90.0, 95.0},
{2, "小红", 92.0, 88.0, 98.0},
{3, "小刚", 78.0, 80.0, 85.0}
};
int num_students = sizeof(students) / sizeof(students[0]);
calculate_average(students, num_students);
return 0;
}
```
运行这个程序,会输出每位学生的平均成绩。
阅读全文