c语言输入酒店客户信息
时间: 2023-03-27 18:04:04 浏览: 66
您好,我可以回答这个问题。C语言可以通过使用结构体来输入酒店客户信息,例如定义一个包含姓名、性别、年龄、身份证号、入住时间等信息的结构体,然后通过scanf函数等输入函数来获取用户输入的信息,最后将信息存储在结构体变量中。具体实现可以参考相关的C语言教程和示例代码。
相关问题
C语言 酒店管理系统 增加顾客信息
以下是一个简单的C语言酒店管理系统增加顾客信息的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_CUSTOMERS 10 // 最大顾客数
typedef struct {
char name[50]; // 姓名
int age; // 年龄
char gender[10]; // 性别
char phone[20]; // 电话号码
} Customer;
int main() {
Customer customers[MAX_CUSTOMERS]; // 顾客数组
int num_customers = 0; // 当前顾客数
printf("欢迎使用酒店管理系统!\n");
while (1) {
printf("请选择要进行的操作:\n");
printf("1. 增加顾客信息\n");
printf("2. 显示所有顾客信息\n");
printf("3. 退出程序\n");
int choice;
scanf("%d", &choice);
switch (choice) {
case 1:
if (num_customers >= MAX_CUSTOMERS) {
printf("顾客数已达到最大值,无法继续添加!\n");
break;
}
printf("请输入顾客姓名:");
scanf("%s", customers[num_customers].name);
printf("请输入顾客年龄:");
scanf("%d", &customers[num_customers].age);
printf("请输入顾客性别:");
scanf("%s", customers[num_customers].gender);
printf("请输入顾客电话号码:");
scanf("%s", customers[num_customers].phone);
num_customers++;
printf("添加成功!\n");
break;
case 2:
if (num_customers == 0) {
printf("当前没有任何顾客信息!\n");
break;
}
printf("所有顾客信息如下:\n");
for (int i = 0; i < num_customers; i++) {
printf("姓名:%s,年龄:%d,性别:%s,电话号码:%s\n",
customers[i].name, customers[i].age,
customers[i].gender, customers[i].phone);
}
break;
case 3:
printf("谢谢使用酒店管理系统,再见!\n");
exit(0);
default:
printf("无效的选择,请重新输入!\n");
break;
}
}
return 0;
}
```
在该示例代码中,我们定义了一个`Customer`结构体来表示顾客信息,其中包含了姓名、年龄、性别、电话号码四个字段。我们还定义了一个最大顾客数`MAX_CUSTOMERS`,以及一个顾客数组`customers`和当前顾客数`num_customers`来存储顾客信息。
在程序运行时,我们通过一个`while`循环来不断接收用户的输入,根据用户选择的操作执行相应的代码。当用户选择“增加顾客信息”时,我们先判断当前顾客数是否已达到最大值,如果是则提示无法继续添加;否则,我们依次提示用户输入顾客的姓名、年龄、性别和电话号码,并将这些信息保存到下一个空闲的位置。当用户选择“显示所有顾客信息”时,我们依次遍历所有顾客信息,并将每个顾客的姓名、年龄、性别和电话号码输出到屏幕上。当用户选择“退出程序”时,我们直接调用`exit`函数结束程序。
需要注意的是,上述代码中我们使用了`scanf`函数来读取用户的输入,这种方法虽然简单,但也存在一些安全隐患。如果用户输入的字符串超过了我们定义的缓冲区大小,就会导致缓冲区溢出,从而可能导致程序崩溃或被攻击。为了避免这种情况,我们应该在读取用户输入时使用安全的输入函数,例如`fgets`和`scanf_s`等。
C语言酒店管理系统 增加顾客信息
以下是一个简单的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` 结构体的信息。
您可以根据需要修改该程序以满足您的需求。例如,您可以添加其他功能,如修改顾客信息或按姓名或房间号排序顾客列表。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.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)