-
大小: 559KB文件类型: .zip金币: 1下载: 0 次发布日期: 2021-06-24
- 语言: 其他
- 标签:
资源简介
航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。
[基本要求]
(1) 每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需票量);
代码片段和文件信息
#include
#include
#include
#define LEN 3 //用于标识航班数
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALSE 0
int firstEnter = 1;//标识是否第一次进入系统,用于控制菜单栏出现与否
typedef int Status;
/*--------------------已订票的乘客信息------------------*/
typedef struct AlreadyBuyClient{
char clientName[10];//乘客姓名
char PhoneNum[12];//乘客手机号
int bookedTicketNum;//订票量
char Rank;//舱位等级
struct AlreadyBuyClient *Next;//指向下一个乘客
}AlreadyBuyClient;
/*--------------------等候的乘客信息------------------*/
typedef struct WaitClient {//链队列
char clientName[10];//乘客姓名
int wantedTicketNum;// 需要票量
struct WaitClient *next; //指向下一个乘客
}WaitClient*WaitClientinfo;
typedef struct {
WaitClientinfo front;//排队的对头
WaitClientinfo rear;// 排队的队尾
}ClientQueue; //排队等票的队列
/*--------------------航班信息------------------*/
struct Flight{
char stopName[10];//终点站
char flightNum[5]; //航班号
char flyNum[5]; //飞机号
char flyTime[4];//飞行时间(周日)
char RecentTime[11];//最近一次飞行时间
int max;//乘员定额
int leftTicket;//剩余票量
int Price[3]; //舱位等级的价格
AlreadyBuyClient *Client;//已订票名单
ClientQueue waitclient;//等候名单
};
typedef struct { //顺序表
Flight* flight;//航班
int length;//航班数
}Line;
void Flight_Watch(Line flyLine) {//航班信息
printf(“\n\n\t\t航班信息:“);
printf(“\n________________________________________________________________________________\n“);
printf(“终点站 航班号 飞机号 飞行日 成员定额 剩余票量 一等舱价 二等舱价 三等舱价\n“);
for(int j = 0;j printf(“%-10s%-5s %-5s %-4s %5d %5d %5d %5d %5d\n“
flyLine.flight[j].stopNameflyLine.flight[j].flightNumflyLine.flight[j].flyNumflyLine.flight[j].flyTime
flyLine.flight[j].maxflyLine.flight[j].leftTicketflyLine.flight[j].Price[0]flyLine.flight[j].Price[1]flyLine.flight[j].Price[2]);
}//输出航班相关信息
}
void Flight_Search(Line flyLine) {//查询特定地点航班信息
char station[10];//终点站
Status hasResults = FALSE; //用于标识是否查询到对应的数据
printf(“\n请输入需要查询的终点站名:“);
getchar();//读取了前面输入的回车键
scanf(“%s“station);
for(int i = 0;i if(strcmp(stationflyLine.flight[i].stopName)==0) {//输入的终点站存在
if(hasResults == FALSE) {
hasResults = TRUE; //表示查询到数据
printf(“终点站 航班号 飞机号 飞行日 最近航班日期 剩余票量\n“);
}
printf(“%-10s%-5s %-5s %-4s %-10s %5d\n“
flyLine.flight[i].stopNameflyLine.flight[i].flightNumflyLine.flight[i].flyNumflyLine.flight[i].flyTimeflyLine.flight[i].RecentTimeflyLine.flight[i].leftTicket);
}
}
if(hasResults == FALSE) {
printf(“\n不存在该航班!!!\n“);
}
}
Status FindLine(Line flyLinechar *keyint &n) { //根据终点站寻找航班,n为航班序号
for(int i = 0;i if(strcmp(keyflyLine.flight[i].flightNum)==0) {//找到该航班
n = i;
return OK;
}
}
n = -1;
return ERROR;
}
void FlightManage(Line flyLine) {//航班信息管理界面
char select; //选择功能序号
system(“CLS“);
printf(“\n\n\t航班管理菜单:“);
printf(“\n_________________________________________________________
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-09-07 17:58 航空客运订票系统\
文件 12655 2016-01-12 16:57 航空客运订票系统\FlightManager.cpp
文件 171767 2016-01-12 16:58 航空客运订票系统\FlightManager.exe
文件 556960 2016-09-07 17:58 航空客运订票系统\实验报告.doc
文件 16791 2016-01-12 16:54 航空客运订票系统\测试用例.docx
相关资源
- 迷宫的数据结构课程设计报告
- 数据结构课程设计停车场管理实验报
- 数据结构课程设计——收藏夹和购物
- 数据结构课程设计-城市链表
- 数据结构课程设计—利用栈求表达式
- 数据结构课程设计模板
- 数据结构课程设计B树
- 人事档案管理系统——数据结构课设
- 简单的文章编辑器数据结构课设
- 数据结构课本代码和课后答案
- 数据结构课程设计 关键路径
- 石大远程在线考试——《数据结构课
- 数据结构课设拓扑排序源代码教学计
- 顺序结构、动态链表结构下的一元多
- 数据结构课程设计--汽车租赁
- 数据结构课程设计表达式求值
- 数据结构课程设计二叉树的非递归遍
- 山东大学数据结构课设箱子装箱问题
- 用单链表和双向链表实现的航空订票
- 数据结构课设——教学计划编制问题
- 数据结构课程设计报告电表计费系统
- 数据结构课程设计建立词索引表
- 校园网布线方案数据结构课程设计
- 全国交通咨询模拟数据结构课程设计
- 数据结构课程设计——压缩软件Huff
- 数据结构课程设计-二叉排序树附详细
- 神秘国度的爱情故事 算法与数据结构
- 航空订票系统数据库版全套毕业设计
- 数据结构课设模拟银行业务
- 数据结构课程设计 线索二叉树
评论
共有 条评论