c语言宿舍管理系统代码结构体数组
时间: 2023-10-12 18:18:03 浏览: 56
以下是一个基本的宿舍管理系统的C语言代码,使用结构体数组来存储学生信息和宿舍房间信息:
```c
#include <stdio.h>
struct Student {
char name[20];
int age;
char gender;
char major[20];
};
struct Room {
int roomNumber;
int capacity;
struct Student students[4];
};
int main() {
struct Room rooms[10]; // 有10个宿舍房间
// 初始化每个宿舍房间
for (int i = 0; i < 10; i++) {
rooms[i].roomNumber = i+1;
rooms[i].capacity = 4;
for (int j = 0; j < 4; j++) {
struct Student s = {"", 0, ' ', ""};
rooms[i].students[j] = s;
}
}
// 添加学生到宿舍房间
struct Student s1 = {"Tom", 18, 'M', "Computer Science"};
rooms[0].students[0] = s1;
struct Student s2 = {"Jerry", 19, 'M', "Mathematics"};
rooms[0].students[1] = s2;
struct Student s3 = {"Alice", 20, 'F', "Physics"};
rooms[1].students[0] = s3;
// 打印宿舍房间信息
for (int i = 0; i < 10; i++) {
printf("Room %d, capacity: %d\n", rooms[i].roomNumber, rooms[i].capacity);
for (int j = 0; j < 4; j++) {
struct Student s = rooms[i].students[j];
if (s.name[0] != '\0') {
printf("Student %d: %s, %d, %c, %s\n", j+1, s.name, s.age, s.gender, s.major);
}
}
}
return 0;
}
```
这个程序定义了两个结构体 `Student` 和 `Room`,其中 `Student` 用于存储学生信息,`Room` 用于存储宿舍房间信息。每个 `Room` 结构体中包含一个结构体数组 `students`,用于存储该宿舍房间的学生信息。
在 `main` 函数中,我们定义了一个包含10个 `Room` 结构体的数组 `rooms`,并初始化每个宿舍房间的信息。然后,我们向其中几个宿舍房间添加了一些学生信息,最后打印了每个宿舍房间的信息。
你可以根据自己的需要修改这个程序,并添加其他功能来实现一个完整的宿舍管理系统。