用C++数据结构写一个酒店入住的增删改查,写出示例代码
时间: 2023-03-08 15:10:12 浏览: 53
#include <stdio.h>struct Hotel {
int num;
char name[20];
int cost;
};void printHotel(struct Hotel h) {
printf("酒店号:%d\n", h.num);
printf("酒店名称:%s\n", h.name);
printf("酒店价格:%d\n", h.cost);
}int main() {
// 增加
struct Hotel h1 = {1, "哈尔滨宾馆", 250};
// 删除
struct Hotel h2 = {2, "", 0};
// 修改
struct Hotel h3 = {3, "普吉岛度假村", 500};
// 查询
printHotel(h3);
return 0;
}
相关问题
用C++数据结构写一个酒店入住的增删改查
可以使用以下数据结构来实现:1. 数组:可以用来存储酒店的入住记录,其中的每一项都可以包含客人的姓名,房间号,入住时间等信息;2. 链表:可以用来存储酒店的入住记录,其中的每一项都可以包含客人的姓名,房间号,入住时间等信息;3. 树:可以用来存储酒店的入住记录,其中的每一项都可以包含客人的姓名,房间号,入住时间等信息;4. 哈希表:可以用来快速查找酒店的入住信息,比如根据客人的姓名或房间号来快速查找入住记录。
用C++写一个酒店入住的增删改查
好的,以下是一个简单的酒店入住增删改查的C++代码示例:
```c++
#include <iostream>
#include <string>
using namespace std;
// 定义酒店房间结构体
struct HotelRoom {
string roomNumber; // 房间号
string guestName; // 客人姓名
int guestNumber; // 客人人数
};
// 定义酒店房间数组和当前房间数
const int MAX_ROOMS = 100;
HotelRoom rooms[MAX_ROOMS];
int currentRoomNum = 0;
// 添加房间函数
void addRoom() {
if (currentRoomNum >= MAX_ROOMS) {
cout << "酒店房间已满,无法添加!" << endl;
return;
}
HotelRoom newRoom;
cout << "请输入房间号:";
cin >> newRoom.roomNumber;
cout << "请输入客人姓名:";
cin >> newRoom.guestName;
cout << "请输入客人人数:";
cin >> newRoom.guestNumber;
rooms[currentRoomNum++] = newRoom;
cout << "添加成功!" << endl;
}
// 查找房间函数
void searchRoom() {
string roomNumber;
cout << "请输入要查找的房间号:";
cin >> roomNumber;
for (int i = 0; i < currentRoomNum; i++) {
if (rooms[i].roomNumber == roomNumber) {
cout << "房间号:" << rooms[i].roomNumber << endl;
cout << "客人姓名:" << rooms[i].guestName << endl;
cout << "客人人数:" << rooms[i].guestNumber << endl;
return;
}
}
cout << "未找到该房间!" << endl;
}
// 修改房间函数
void modifyRoom() {
string roomNumber;
cout << "请输入要修改的房间号:";
cin >> roomNumber;
for (int i = 0; i < currentRoomNum; i++) {
if (rooms[i].roomNumber == roomNumber) {
cout << "请输入新的客人姓名:";
cin >> rooms[i].guestName;
cout << "请输入新的客人人数:";
cin >> rooms[i].guestNumber;
cout << "修改成功!" << endl;
return;
}
}
cout << "未找到该房间!" << endl;
}
// 删除房间函数
void deleteRoom() {
string roomNumber;
cout << "请输入要删除的房间号:";
cin >> roomNumber;
for (int i = 0; i < currentRoomNum; i++) {
if (rooms[i].roomNumber == roomNumber) {
for (int j = i; j < currentRoomNum - 1; j++) {
rooms[j] = rooms[j + 1];
}
currentRoomNum--;
cout << "删除成功!" << endl;
return;
}
}
cout << "未找到该房间!" << endl;
}
// 主函数
int main() {
int choice;
while (true) {
cout << "请选择操作:1.添加房间 2.查找房间 3.修改房间 4.删除房间 5.退出" << endl;
cin >> choice;
switch (choice) {
case 1:
addRoom();
break;
case 2:
searchRoom();
break;
case 3:
modifyRoom();
break;
case 4:
deleteRoom();
break;
case 5:
return 0;
default:
cout << "输入有误,请重新选择!" << endl;
}
}
}
```
这个程序中,我们定义了一个酒店房间结构体 `HotelRoom`,包括房间号、客人姓名和客人人数。然后定义了一个 `rooms` 数组来存储酒店的房间信息,以及一个 `currentRoomNum` 变量来记录当前房间数。程序主体部分是一个循环,根据用户输入的选择执行不同的操作,包括添加房间、查找房间、修改房间和删除房间。在每个函数中,我们通过输入输出来与用户交互,最后实现了一个简单的酒店入住增删改查的功能。