C语言酒店管理系统 增加顾客信息
时间: 2023-05-29 09:07:08 浏览: 163
C语言课程设计《酒店和顾客信息管理系统》
5星 · 资源好评率100%
以下是一个简单的C语言酒店管理系统,可以用来增加顾客信息:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define HOTEL_SIZE 10
typedef struct {
int room_number;
char name[50];
} Guest;
void print_guest(Guest g) {
printf("Room Number: %d\nName: %s\n", g.room_number, g.name);
}
int main() {
Guest hotel[HOTEL_SIZE];
int choice = 0;
while (choice != 4) {
printf("\n\n*** Hotel Management System Menu ***\n");
printf("1. Add Guest\n");
printf("2. Remove Guest\n");
printf("3. View Guest List\n");
printf("4. Quit\n");
printf("Enter your choice: ");
scanf("%d", &choice);
switch (choice) {
case 1: {
int room_number;
char name[50];
printf("Enter room number: ");
scanf("%d", &room_number);
printf("Enter name: ");
scanf("%s", name);
Guest new_guest = {room_number, name};
hotel[room_number - 1] = new_guest;
printf("Guest added successfully!\n");
break;
}
case 2: {
int room_number;
printf("Enter room number: ");
scanf("%d", &room_number);
if (hotel[room_number - 1].room_number == 0) {
printf("No guest found in room %d.\n", room_number);
} else {
hotel[room_number - 1] = (Guest) {0, ""};
printf("Guest removed successfully!\n");
}
break;
}
case 3: {
printf("*** Guest List ***\n");
for (int i = 0; i < HOTEL_SIZE; i++) {
Guest current_guest = hotel[i];
if (current_guest.room_number != 0) {
print_guest(current_guest);
}
}
break;
}
case 4:
printf("Exiting...\n");
break;
default:
printf("Invalid choice.\n");
}
}
return 0;
}
```
在这个程序中,`Guest` 结构体用于存储顾客信息,包括房间号和姓名。`HOTEL_SIZE` 宏定义了酒店的房间数。`print_guest` 函数用于打印单个顾客的信息。
程序的主体是一个 `while` 循环,它显示一个菜单供用户选择。用户可以选择添加、删除或查看顾客信息,或者退出程序。在选择添加顾客时,程序会提示用户输入房间号和姓名,然后创建一个新的 `Guest` 结构体并将其添加到 `hotel` 数组中。在选择删除顾客时,程序会提示用户输入房间号,并将该房间号的 `Guest` 结构体的值重置为零。在选择查看顾客信息时,程序会遍历 `hotel` 数组并打印每个非零 `Guest` 结构体的信息。
您可以根据需要修改该程序以满足您的需求。例如,您可以添加其他功能,如修改顾客信息或按姓名或房间号排序顾客列表。
阅读全文