宿舍管理系统毕业设计c语言
时间: 2023-12-21 18:30:45 浏览: 45
宿舍管理系统是一种常见的毕业设计题目,可以使用C语言进行编写。该系统的主要功能包括学生信息的录入、添加、删除、修改、查询、统计等。其中查询可以分别以姓名、学号、宿舍号为关键字查询学生信息。统计可以分别以学号、宿舍号、性别、班级、专业为关键字进行统计,并且输出信息按学号大小从小到大输出。
在编写宿舍管理系统时,需要使用C语言的文件操作、结构体、指针等知识。可以使用Microsoft Visual C++ 6.0等集成开发环境进行开发,也可以使用其他的C语言开发工具。
以下是一个简单的宿舍管理系统的代码示例,仅供参考:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENT_NUM 100 // 最大学生数
#define MAX_NAME_LEN 20 // 姓名最大长度
#define MAX_ID_LEN 10 // 学号最大长度
#define MAX_ROOM_NUM 50 // 最大宿舍数
// 学生结构体
typedef struct {
char name[MAX_NAME_LEN]; // 姓名
char id[MAX_ID_LEN]; // 学号
char sex; // 性别
char major[MAX_NAME_LEN]; // 专业
char cls[MAX_NAME_LEN]; // 班级
char room[MAX_NAME_LEN]; // 宿舍号
} Student;
// 学生数组
Student students[MAX_STUDENT_NUM];
int student_num = 0; // 学生数
// 宿舍数组
int rooms[MAX_ROOM_NUM];
int room_num = 0; // 宿舍数
// 添加学生
void add_student() {
if (student_num >= MAX_STUDENT_NUM) {
printf("学生数已达到最大值,无法添加!\n");
return;
}
Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生学号:");
scanf("%s", student.id);
printf("请输入学生性别:");
scanf(" %c", &student.sex);
printf("请输入学生专业:");
scanf("%s", student.major);
printf("请输入学生班级:");
scanf("%s", student.cls);
printf("请输入学生宿舍号:");
scanf("%s", student.room);
students[student_num++] = student;
printf("添加成功!\n");
}
// 删除学生
void delete_student() {
char id[MAX_ID_LEN];
printf("请输入要删除的学生学号:");
scanf("%s", id);
int i;
for (i = 0; i < student_num; i++) {
if (strcmp(students[i].id, id) == 0) {
int j;
for (j = i; j < student_num - 1; j++) {
students[j] = students[j + 1];
}
student_num--;
printf("删除成功!\n");
return;
}
}
printf("未找到该学生!\n");
}
// 修改学生信息
void modify_student() {
char id[MAX_ID_LEN];
printf("请输入要修改的学生学号:");
scanf("%s", id);
int i;
for (i = 0; i < student_num; i++) {
if (strcmp(students[i].id, id) == 0) {
printf("请输入学生姓名:");
scanf("%s", students[i].name);
printf("请输入学生学号:");
scanf("%s", students[i].id);
printf("请输入学生性别:");
scanf(" %c", &students[i].sex);
printf("请输入学生专业:");
scanf("%s", students[i].major);
printf("请输入学生班级:");
scanf("%s", students[i].cls);
printf("请输入学生宿舍号:");
scanf("%s", students[i].room);
printf("修改成功!\n");
return;
}
}
printf("未找到该学生!\n");
}
// 查询学生信息
void query_student() {
char keyword[MAX_NAME_LEN];
printf("请输入查询关键字:");
scanf("%s", keyword);
int i;
for (i = 0; i < student_num; i++) {
if (strcmp(students[i].name, keyword) == 0 ||
strcmp(students[i].id, keyword) == 0 ||
strcmp(students[i].room, keyword) == 0) {
printf("姓名:%s 学号:%s 性别:%c 专业:%s 班级:%s 宿舍号:%s\n",
students[i].name, students[i].id, students[i].sex,
students[i].major, students[i].cls, students[i].room);
}
}
}
// 统计学生信息
void count_student() {
int i, j;
for (i = 0; i < room_num; i++) {
int count = 0;
for (j = 0; j < student_num; j++) {
if (strcmp(students[j].room, rooms[i]) == 0) {
count++;
}
}
printf("宿舍号:%s 学生数:%d\n", rooms[i], count);
}
}
// 添加宿舍
void add_room() {
if (room_num >= MAX_ROOM_NUM) {
printf("宿舍数已达到最大值,无法添加!\n");
return;
}
char room[MAX_NAME_LEN];
printf("请输入宿舍号:");
scanf("%s", room);
rooms[room_num++] = room;
printf("添加成功!\n");
}
// 删除宿舍
void delete_room() {
char room[MAX_NAME_LEN];
printf("请输入要删除的宿舍号:");
scanf("%s", room);
int i;
for (i = 0; i < room_num; i++) {
if (strcmp(rooms[i], room) == 0) {
int j;
for (j = i; j < room_num - 1; j++) {
rooms[j] = rooms[j + 1];
}
room_num--;
printf("删除成功!\n");
return;
}
}
printf("未找到该宿舍!\n");
}
// 主函数
int main() {
int choice;
while (1) {
printf("请选择操作:\n");
printf("1. 添加学生\n");
printf("2. 删除学生\n");
printf("3. 修改学生信息\n");
printf("4. 查询学生信息\n");
printf("5. 统计学生信息\n");
printf("6. 添加宿舍\n");
printf("7. 删除宿舍\n");
printf("8. 退出\n");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student();
break;
case 2:
delete_student();
break;
case 3:
modify_student();
break;
case 4:
query_student();
break;
case 5:
count_student();
break;
case 6:
add_room();
break;
case 7:
delete_room();
break;
case 8:
exit(0);
default:
printf("无效操作!\n");
break;
}
}
return 0;
}
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)