游乐场预约代码c语言
时间: 2024-06-30 18:00:26 浏览: 148
在C语言中,创建一个简单的游乐场预约系统可能涉及到数据结构、文件操作以及用户交互。以下是一个简化的概念性示例,使用结构体和基本控制流程:
```c
#include <stdio.h>
#include <stdlib.h>
// 定义游乐项目结构体
typedef struct {
char name[50];
int capacity;
int available_spots;
} Amusement;
// 预约函数
void reserve(Amusement *park, char *project, int spots) {
if (spots > park->available_spots) {
printf("该项目当前剩余座位不足!\n");
return;
}
park->available_spots -= spots;
printf("您成功预约了 %s, 剩余座位 %d。\n", project, park->available_spots);
}
int main() {
// 初始化游乐场数据
Amusement ferris_wheel = {"摩天轮", 50, 40};
Amusement roller_coaster = {"过山车", 30, 20};
// 文件操作(这里简化为硬编码,实际应用中可能需要读取或写入数据库)
FILE *fp = fopen("amusement_parks.txt", "w+"); // 假设存在文件用于存储公园信息
fprintf(fp, "项目\t剩余座位\n");
fprintf(fp, "%s\t%d\n", ferris_wheel.name, ferris_wheel.available_spots);
fprintf(fp, "%s\t%d\n", roller_coaster.name, roller_coaster.available_spots);
fclose(fp);
// 用户输入
char *project, choice;
int spots;
while (1) {
printf("\n请选择游乐项目(F摩天轮/C过山车/Q退出): ");
scanf(" %c", &choice);
switch (choice) {
case 'F':
printf("请输入想要预约的摩天轮座位数: ");
scanf("%d", &spots);
reserve(&ferris_wheel, ferris_wheel.name, spots);
break;
case 'C':
printf("请输入想要预约的过山车座位数: ");
scanf("%d", &spots);
reserve(&roller_coaster, roller_coaster.name, spots);
break;
case 'Q':
printf("预约结束,感谢使用!\n");
return 0;
default:
printf("无效选择,请重新输入!\n");
}
}
return 0;
}
```