航班预订系统的设计与实现。
1)学会怎样用c语言数据结构的思想及方法做一个完整的系统。
2)掌握数据结构的编辑,链接,运行等环节。
3)掌握c语言数据结构中线性表的建立,插入,删除,保存节点。熟练掌握队列、树和二叉树等的使用。
4)通过数据结构的课程设计,掌握并熟悉一个项目的开发过程,本项目利用数据结构中最基础和最重要的部分:线性表。
5)在整个开发设计过程中掌握数据结构的思想,以及各种操作和实际应用。并可以将其运用于具体问题的解决之中。加深对数据结构课程中理论和实践相结合的认识。
6)掌握并熟练线性表的创建、插入、删除、查找等各种常用算法。最终设计完成《航班预定系统》,将各种算法综合运用于具体的设计任务中。
2问题描述。
航线管理。每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员定额、余票量。
客户管理。有关订票的客房信息(包括姓名、订票量、舱位等级(1,2和3)以及等替补的客房名单(包括姓名、所需标量)。
系统实现主要操作操作和功能。系统实现的主要操作规程和功能如下:
1)查询航线。根据旅客提出的终点站名输出下列信息:航班号、飞机号、飞行日期、余标额。
2)承办订票业务。根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若有余票,则为客户办理订票手续,输出座位号;若已满或者余票少于订票额,则需要重新询问客户要求;若需要,可等待排队侯补。
3)承办退票业务。根据客户提供的情况(日期、航班),为客户输退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额满足该客户的要求,则为其订票手续,否则依次询问其他排队候补的客户。
3 概要设计。
由需求分析知,本次课程设计是航空订票系统其主要由三大模块构成,即查询模块(这部分由我负责),订票系统模块和退票系统模块构成。
该程序开始运行后。
进如航空订票系统。
用户可以进行航班。
信息的查询,订票。
图1 系统总的流程图。
该程序开始运行后进入航空订票系统用户可以进行航班信息的查询、订票和退票操作。
3.3 课程设计的思想。
由需求分析知道需要实现几个功能定义了两个结构体。这两个结构体分别用来表示顾客信息和航班信息。有结构体可以知道一些基本信息,比如顾客的姓名,定的机票和航班的时间等等信息。
使得实验**的可读性大大增强。
4 详细设计。
广州航班号005 飞机号pzh113 机票数120
天津航班号004 飞机号pzh121 机票数120
北京航班号003 飞机号pzh133 机票数120
上海航班号002 飞机号pzh132 机票数120
成都航班号001 飞机号pzh122 机票数120
void initline初始化航线信息。
airline *p,*q航线。
l=(airline *)malloc(sizeof(airline));
l->booked=null;
l->wait=null;
l->next=null;
strcpy(l->end_addr,"00000000终点站。
strcpy(l->line_num,"000航班号。
strcpy(l->plant_num,"0000000飞机号。
l->day=l->left=l->total=0;
q=l;p=(airline *)malloc(sizeof(airline));广州。
p->booked=null;
p->wait=null;
strcpy(p->end_addr,"广州");
strcpy(p->line_num,"005");
strcpy(p->plant_num,"pzh113");
p->day=5;
p->left=120;
p->total=120;
p->next=q->next;
q->next=p;
p=(airline *)malloc(sizeof(airline));天津。
p->booked=null;
p->wait=null;
strcpy(p->end_addr,"天津");
strcpy(p->line_num,"004");
strcpy(p->plant_num,"pzh121");
p->day=4;
p->left=120;
p->total=120;
p->next=q->next;
q->next=p;
p=(airline *)malloc(sizeof(airline));北京。
p->booked=null;
p->wait=null;
strcpy(p->end_addr,"北京");
strcpy(p->line_num,"003");
strcpy(p->plant_num,"pzh133");
p->day=1;
p->left=120;
p->total=120;
p->next=q->next;
q->next=p;
p=(airline *)malloc(sizeof(airline));上海。
p->booked=null;
p->wait=null;
strcpy(p->end_addr,"上海");
strcpy(p->line_num,"002");
strcpy(p->plant_num,"pzh132");
p->day=2;
p->left=120;
p->total=120;
p->next=q->next;
q->next=p;
p=(airline *)malloc(sizeof(airline));成都。
p->booked=null;
p->wait=null;
strcpy(p->end_addr,"成都");
strcpy(p->line_num,"001");
strcpy(p->plant_num,"pzh122");
p->day=3;
p->left=120;
p->total=120;
p->next=q->next;
q->next=p;
在此模块实现了查询航班的功能。当进入查询功能时,通过输入数字用户可以查询航班的基本信息,比如目的地,剩下的机票数目,出发的时间等等基本信息。如果输入的数字在界面中没有显示则会提示用户没有这次航班。
在这个模块使用了个switch语句来实现对查询方式的选择。通过判断输入的数字进入到相对应的查询方式。如果输入的信息有误的话,系统将会提示用户没有这次航班,需要重新输入。
4.2.2查询模块流程图。
图2 查询模块的流程图。
在该模块用户可以进行查询功能。用户根据提示可以按照航班号、飞机号、飞行日期和航班重点来查询航班的基本信息。这些基本信息包括了飞行航班号、飞机号、剩余票量和处罚日期等等。
在该模块用户必须根据提示进行输入,否则系统会提示输入有误,需要重新输入。
void search航班查询系统。
int i;
int flag=0;
airline *p;
pr("请输入查询航班的方式:");
pr("航班号---1");
pr("飞机号---2");
pr("飞行日期-->3");
pr("航班终点-->4");
c语言课程设计报告 课程设计报告
周口师范学院。课程设计报告。院 系 计算机科学与技术学院 班级。学生姓名学号。设计题目 职工工资管理系统。完成日期 年月日 课程设计任务书。设计题目 工资管理系统 教研室主任指导教师 年月日。摘要11设计内容 任务及具体要求2 1.1设计内容2 1.2设计任务及具体要求2 2概要设计3 2.1该系统...
c课程设计正文
目录。1 前言 1 2 需求分析 1 2.1 课程设计目的 1 2.2 课程设计任务 1 2.3 设计环境 1 2.4 开发语言 1 3 分析和设计 1 3.1 模块设计 1 3.2 系统流程图 2 3.3 主要模块的流程图 3 4 具体 实现 5 5 课程设计总结 9 5.1 程序运行结果 9 5...
C语言课程设计报告
华中科技大学计算机科学与技术学院。题目 专业 班级 学号 姓名 成绩 指导教师 完成日期 2016年月日。目录。一 系统需求分析 1 二 总体设计 2 三 数据结构设计 3 四 详细设计 4 五 系统实现 5 六 运行测试与结果分析 6 七 总结 7 八 参考文献 8 九 指导教师评语 9 对所要解...