c语言结构体二维
时间: 2023-07-09 22:08:53 浏览: 42
C语言中的结构体可以使用二维数组来定义,下面是一个例子:
```c
#include <stdio.h>
// 定义一个结构体
struct Student {
char name[20];
int age;
};
int main() {
struct Student students[3][4]; // 定义一个3行4列的结构体数组
int i, j;
// 循环输入学生信息
for (i = 0; i < 3; i++) {
for (j = 0; j < 4; j++) {
printf("请输入第%d行第%d列学生的姓名和年龄:", i+1, j+1);
scanf("%s%d", students[i][j].name, &students[i][j].age);
}
}
// 循环输出学生信息
for (i = 0; i < 3; i++) {
for (j = 0; j < 4; j++) {
printf("第%d行第%d列学生的姓名是:%s,年龄是:%d\n", i+1, j+1, students[i][j].name, students[i][j].age);
}
}
return 0;
}
```
在上面的例子中,我们定义了一个结构体 `Student`,包含了学生的姓名和年龄两个成员变量。然后我们定义了一个3行4列的结构体数组 `students`,可以存储12个学生的信息。接着我们使用两个循环来输入每一个学生的姓名和年龄,并使用另外两个循环来输出每一个学生的信息。
需要注意的是,二维结构体数组的元素可以使用下标来访问,例如 `students[1][2].name` 表示第2行第3列学生的姓名。