酒店管理系统c语言程序设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

酒店管理系统c语言程序设计
以下是一个简单的酒店管理系统的 C 语言程序设计示例,包括了客户入住、退房和查询房间状态等基本功能。

请注意,这只是一个简化的示例,实际的酒店管理系统可能需要更多的功能和复杂的逻辑。

```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_ROOMS 100
#define MAX_CUSTOMERS 100
// 房间结构体
struct Room {
int roomNumber;
int isOccupied;
int customerID;
};
// 客户结构体
struct Customer {
int customerID;
char customerName[50];
};
// 房间列表
struct Room rooms[MAX_ROOMS];
// 客户列表
struct Customer customers[MAX_CUSTOMERS];
// 初始化房间列表
void initRooms() {
for (int i = 0; i < MAX_ROOMS; i++) {
rooms[i].roomNumber = i + 1;
rooms[i].isOccupied = 0;
rooms[i].customerID = 0;
}
}
// 初始化客户列表
void initCustomers() {
for (int i = 0; i < MAX_CUSTOMERS; i++) {
customers[i].customerID = i + 1;
strcpy(customers[i].customerName, "Customer");
}
}
// 查找空闲房间
int findFreeRoom() {
for (int i = 0; i < MAX_ROOMS; i++) {
if (rooms[i].isOccupied == 0) {
return i;
}
}
return -1;
}
// 客户入住
void checkIn(int customerID, int roomNumber) {
int freeRoom = findFreeRoom();
if (freeRoom != -1) {
rooms[freeRoom].isOccupied = 1;
rooms[freeRoom].customerID = customerID;
printf("Customer %d checked in to Room %d\n", customerID, roomNumber); } else {
printf("No free rooms available\n");
}
}
// 客户退房
void checkOut(int roomNumber) {
for (int i = 0; i < MAX_ROOMS; i++) {
if (rooms[i].roomNumber == roomNumber && rooms[i].isOccupied == 1) { rooms[i].isOccupied = 0;
rooms[i].customerID = 0;
printf("Customer checked out of Room %d\n", roomNumber);
return;
}
}
printf("Room not found\n");
}
// 查询房间状态
void viewRoomStatus(int roomNumber) {
for (int i = 0; i < MAX_ROOMS; i++) {
if (rooms[i].roomNumber == roomNumber) {
if (rooms[i].isOccupied == 1) {
printf("Room %d is occupied by Customer %d\n", roomNumber, rooms[i].customerID);
} else {
printf("Room %d is vacant\n", roomNumber);
}
return;
}
}
printf("Room not found\n");
}
// 主函数
int main() {
initRooms();
initCustomers();
int choice;
while (1) {
printf("1. Check In\n2. Check Out\n3. View Room Status\n4. Exit\n"); scanf("%d", &choice);
switch (choice) {
case 1:
int customerID, roomNumber;
printf("Enter customer ID: ");
scanf("%d", &customerID);
printf("Enter room number: ");
scanf("%d", &roomNumber);
checkIn(customerID, roomNumber);
break;
case 2:
printf("Enter room number: ");
scanf("%d", &roomNumber);
checkOut(roomNumber);
break;
case 3:
printf("Enter room number: ");
scanf("%d", &roomNumber);
viewRoomStatus(roomNumber);
break;
case 4:
exit(0);
break;
default:
printf("Invalid choice\n");
}
}
return 0;
}
```
上述代码实现了一个简单的酒店管理系统,包括客户入住、退房和查询房间状态等功能。

- 首先,定义了两个结构体`Room`和`Customer`,分别表示房间和客户的信息。

- 然后,初始化了房间列表和客户列表,并提供了查找空闲房间和客户入住的功能。

- 接下来,实现了客户退房和查询房间状态的功能。

- 在主函数中,通过一个循环来提供用户选择,并根据选择执行相应的操作。

请注意,这只是一个简单的示例,实际的酒店管理系统可能需要更复杂的功能和逻辑,如预订、计费、员工管理等。

根据具体需求,你可能需要进一步扩展和完善代码。

相关文档
最新文档