一个学生具有学号、姓名、3门课程成绩共5个信息。定义结构体变量,调用函数求3门课程的平均分。
时间: 2024-10-08 17:24:25 浏览: 48
你可以使用结构体(struct)来定义一个学生的信息,包括学号、姓名以及三门课程的成绩。首先,创建一个名为`Student`的结构体,如下所示:
```c
typedef struct {
int student_id; // 学生学号
char name[50]; // 学生姓名
float score1; // 第一门课程成绩
float score2; // 第二门课程成绩
float score3; // 第三门课程成绩
} Student;
```
接下来,定义一个函数`calculate_average_score(Student* student)`来计算学生的平均成绩:
```c
float calculate_average_score(Student* student) {
return (student->score1 + student->score2 + student->score3) / 3.0;
}
```
为了使用这个函数,你需要实例化一个`Student`结构体,并传递给`calculate_average_score`函数,例如:
```c
int main() {
Student stu = {1001, "张三", 85.0, 90.0, 95.0}; // 假设这是学生的成绩
float avg_score = calculate_average_score(&stu);
printf("学生 %s 的平均成绩是 %.2f 分。\n", stu.name, avg_score);
return 0;
}
```
在这个例子中,`&stu`是一个指向`Student`结构体的指针,函数通过它来访问和修改结构体内的数据。
阅读全文