c语言 结构体嵌套实际例子
时间: 2024-08-27 09:04:10 浏览: 48
结构体嵌套(c语言)
5星 · 资源好评率100%
好的,我可以为您提供一个 C 语言结构体嵌套的示例代码。假设我们有一个学生信息结构体,其中包括学生的姓名、年龄和课程成绩等信息,而每个学生的课程成绩又可以包含具体的课程名称和成绩等信息,那么我们就可以使用结构体嵌套来实现。
以下是一个示例代码:
```c
#include <stdio.h>
// 定义学生信息结构体
struct Student {
char name[50];
int age;
struct Course {
char course_name[50];
float score;
} courses[3];
};
int main() {
// 创建学生信息实例
struct Student s1 = {"张三", 20, {{"数学", 90.5}, {"英语", 85}, {"物理", 95}}};
printf("学生信息:\n");
printf("姓名:%s\n", s1.name);
printf("年龄:%d\n", s1.age);
for (int i = 0; i < 3; i++) {
printf("课程 %s:%0.1f\n", s1.courses[i].course_name, s1.courses[i].score);
}
return 0;
}
```
在上述代码中,我们首先定义了一个名为 `Student` 的结构体,其中包含了学生的姓名、年龄和课程成绩等信息。然后,在 `main()` 函数中,我们创建了一个名为 `s1` 的学生信息实例,并为其赋值。最后,我们使用 `printf()` 函数输出了学生信息。
在 `Student` 结构体中,我们使用了嵌套的结构体 `Course` 来表示每个学生的课程成绩。在 `s1` 实例中,我们为每个课程都赋了一个对应的名称和成绩,并在循环中输出了这些信息。
通过使用结构体嵌套,我们可以方便地表示具有层次关系的复杂数据结构,并方便地进行数据的存储和操作。
阅读全文