文档介绍:课程设计报告
设计名称: 数据结构课程设计
选题名称: 航空客运订票系统
专业班级: 计算机科学与技术
系(院): 计算机工程学院
设计时间: ~
设计地点: 软件工程实验室、教室
成绩:
指导教师评语:
签名:
年月日
1、训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程序求解指定问题。
、系统设计、程序编码、测试等基本方法和技能;
;
,巩固、深化学生的理论知识,提高编程水平,并在此过程中培养他们严谨的科学态度和良好的工作作风。
:
任务
根据教材《数据结构-C语言描述》(耿国华主编)和参考书《数据结构题集(C语言版)》(严蔚敏、吴伟民主编)选择课程设计题目,要求通过设计,在数据结构的逻辑特性和物理表示、数据结构的选择应用、算法的设计及其实现等方面加深对课程基本内容的理解和综合运用。
设计题目从任务书所列选题表中选取,每班每题不得超过2人。
学生自选课题
学生原则上可以结合个人爱好自选课题,要求课题有一定的深度与难度,有一定的算法复杂性,能够巩固数据结构课程所学的知识。学生自选课题需在18周前报课程设计指导教师批准方可生效。
要求:
1、在处理每个题目时,要求从分析题目的需求入手,按设计抽象数据类型、构思算法、通过设计实现抽象数据类型、编制上机程序和上机调试等若干步骤完成题目,最终写出完整的分析报告。前期准备工作完备与否直接影响到后序上机调试工作的效率。在程序设计阶段应尽量利用已有的标准函数,加大代码的重用率。
2、设计的题目要求达到一定工作量(300行以上代码),并具有一定的深度和难度。
3、程序设计语言推荐使用C/C++,程序书写规范,源程序需加必要的注释;
4、每位同学需提交可独立运行的程序;
5、每位同学需独立提交设计报告书(每人一份),要求编排格式统一、规范、内容充实,不少于10页(代码不算);
6、课程设计实践作为培养学生动手能力的一种手段,单独考核。
一需求分析
:终点站名,航班号,飞机号,飞行周日(星期几),乘员定额,余票量,已订票的客户名单(包括姓名,订票量,舱位等级1,2或3)以及等候替补的客户名单(包括姓名,所需票量);
,全部数据可以只存放在内存中;
:
a)查询航线:
根据旅客提出的终点站名输出下列信息:航班号,飞机号,星期几飞行,最近一天航班的日期和余票额;
b.) 承办订票业务:
根据客户提出的要求(航班号,订票数额)查询该航班票额情况,若尚余票则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。若需要可登记排队候补;
c.) 承办退票业务:
根据客户提供的情况(日期,航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若退票额能满足他的要求,则为他办理订票手续,否则依次询问其它排队候补的客户。
二概要设计
系统结构图
主函数
航
线
信
息
客
户
信
息
查
询
航
线
订
票
办
理
退
票
办
理
剩
票
排
序
退
出
系
统
(2)简介
主函数:主要运用了switch函数和do 语句。
航线信息:显示已初始化的全部航线信息,定义了函数类型以及打印函数,运用了while 语句以及指针。
客户信息:浏览已订票客户信息,定义了函数类型,运用了if 和 while 语句。
查询航线:调用find()函数寻找航线信息,定义了函数类型,运用了if 和 while 语句以及指针。
订票办理:定义了函数类型,运用了if语句及指针。
退票办理:定义了函数类型,调用查询函数,退票成功后,重新将航线名单域指向订票单链表的头指针。根据队列中从出的客户信息判断是否满足要求,如果满足,则将该客户的信息插入到乘客信息链表中。运用了if 和 while 语句以及指针。
剩票排序:定义了函数类型,运用了if 和 for 语句及指针。
退出系统:直接退出。
三详细设计
航空客运订票系统:
主函数:
int menu_select()
/*菜单界面*/
{ int c;
char s[20];
printf("\n");
printf("\t\t\t 航空客运订票系统\n");
printf("\t