数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统

上传人:壹****1 文档编号:476412664 上传时间:2023-05-27 格式:DOC 页数:73 大小:405KB
返回 下载 相关 举报
数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统_第1页
第1页 / 共73页
数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统_第2页
第2页 / 共73页
数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统_第3页
第3页 / 共73页
数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统_第4页
第4页 / 共73页
数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统_第5页
第5页 / 共73页
点击查看更多>>
资源描述

《数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统》由会员分享,可在线阅读,更多相关《数据结构B课程设计报告基于飞机订票系统和全国交通模拟系统(73页珍藏版)》请在金锄头文库上搜索。

1、数据结构B课程设计报告系 别: 计算机与电子系 专业班级: 电子0901 学生姓名: 指导教师: (课程设计时间2011年12月12至2011年12月24) 华中科技大学武昌分校课程设计报告撰写内容、格式与成绩评定一、课程设计报告的撰写内容与要求1.课程设计总结报告应包括:前言、基本原理或理论、设计计算书或实验报告、结论、图纸(框图、流程图)、参考资料等;或调查、访谈报告、调查问卷、调查提纲等。2.课程设计总结报告应书写工整,文句通顺、精炼、逻辑性强,图纸和曲线的绘制应符合规范。3.调查型课程设计应根据调查结果撰写调查报告。调查报告内容包括:题目、参加时间、地点、方式、过程、调查对象一般情况、

2、调查内容、发现的问题、调查结果和调查分析及体会等。调查报告要求语言简练、准确;叙述清楚、明白;数据、资料可靠;结论有理、有据。4.图纸应布局合理,比例恰当,线条分明,字体工整,符合国家制图标准。5.课程设计报告字数要求:理工、艺术类不少于2000字,其他专业不少于3000字。二、课程设计成绩评定1.学生的课程设计成绩由平时成绩、业务考核成绩两部分组成,均为百分制记分,其中平时成绩占总成绩的30%,业务考核成绩占70%。业务考核含设计报告(计算说明书、调查提纲、调查问卷等)、绘制的图纸、编制的软件、制作的模型、撰写的论文或问卷统计、调查分析等的完成及质量情况;平时成绩含设计表现、到课率等。2.

3、教师按学生实际成绩(百分制,含平时成绩和业务考核成绩两部分)登记并录入教务MIS系统,由系统自动转化为“优秀(90100分)、良好(8089分)、中等(7079分)、及格(6069分)和不及格(60分以下)”五等。 目 录1.课程设计目的12.课程设计题目描述和要求12.1航空订票系统描述与要求12.2全国交通咨询模拟系统描述与要求:23课程设计报告内容23.1航空订票系统课程设计报告内容23.1.1设计思路23.1.2主要功能函数的设计33.1.3调试分析:33.1.4源程序代码:43.1.5运行测试123.2全国交通模拟小系统课程设计报告内容143.2.1设计思路:143.2.2主要功能函

4、数的设计:153.2.3调试分析:173.2.4参考源程序:183.2.5运行测试644总结68参考文献691.课程设计目的1) 培养自己运用算法与数据结构的基本知识解决实际编程中的数据结构设计和算法设计问题。2) 培养自己独立设计程序与解决问题的能力,培养学生团队协作集成程序模块及调试能力。3) 培养自己初步的软件设计及软件测试的能力。4)培养自己分析问题,解决问题的能力。2.课程设计题目描述和要求2.1航空订票系统描述与要求【问题描述】 航空客运订票的业务活动包括;查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。【基本要求】(1)每条航线所涉及

5、的信息有:终点站名、航班名、飞机号、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需票量);(2)作为示意系统,全部数据可以只放在内存中;(3)系统能实现的操作和功能如下:a.查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;b.承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。若需要,可登记排队候补;c.承办退票业务:根据客户提供的情况(日期

6、、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足客户的要求,则为客户办理订票手续,否则依次询问其他排队候补的客户2.2全国交通咨询模拟系统描述与要求:【问题描述】出于不同目的的旅客对交通工具有不同的要求。例如,因公出差的旅客希望在旅途中的时间尽可能短,出门旅游的旅客则期望旅费尽可能省,而老年旅客则要求中转次数最少。编制一个全国城市间的交通咨询程序,为旅客提供两种或三种最优先决策的交通咨询。【基本要求】(1)提供对城市信息进行编辑(如:添加或删除)的功能。(2)城市之间有两种交通工具:火车和飞机。提供对列车时刻表和飞机航班进行编辑(增设或删除

7、)的功能。(3)提供两种最优决策:最快到达或最省钱到达。全程只考虑一种交通工具。(4)旅途中耗费的总时间应该包括中转站的等候时间。(5)咨询以用户和计算机的对话方式进行。由用户输入起始站、终点站、最优决策原则和交通工具,输出信息:最快需要多长时间才能到达或者最少需要多少旅费才能到达,并详细说明依次于何时乘坐哪一趟列车或哪一次班机到何地。3课程设计报告内容3.1航空订票系统课程设计报告内容3.1.1设计思路1)主程序伪代码:int main() 界面初始化; 输入操作命令; While(“命令” != “退出”) 接受命令(用户输入要实现功能); 进入各个处理命令函数;2)主程序的流程以及各程序

8、模块之间的调用关系:退票模块航线信息列表Main()函数订票模块查询客户信息初始化航线信息3.1.2主要功能函数的设计(1)显示已初始化的航线信息void display(struct airline *info);打印每条航线的基本信息(2)航班查询业务void search():根据客户提出的终点站名输出航线struct airline *find();根据系统提示的航班号查询并以指针形势返回。(3)航班订票业务void order():班里航班订票业务,根据客户提供的航班号查询,如为空,退出该模块;如客户订票数量乘员订票总量,则退出;若未超出乘员订票总量,则订票成功并登记信息。(4)航班

9、退票业务void return_tkt();办理退票业务,调用查询函数 ,根据客户提供的航线进行搜索,再根据客户的姓名到订票客户名单域进行查询,若信息查询成功,删除订票客户名单域的信息,若未找到,则退出该模块。(5)其他航班线路查询业务void oher_search();客户订票时,剩余票量不满足时,调用该函数模块,根据客户提供的航班目的地,显示出所有能到达目的地的航班。3.1.3调试分析:调试过程中遇到的问题是如何解决的以及对设计与实现的回顾讨论和分析,在调试的过程中碰到了一下问题:a. 引用形参应用不当;b. 有关指针参数和操作不熟悉,通过查参考资料数据结构实验指导和同学讨论最终解决(2

10、) 算法的时空分析:基本操作时间复杂度空间复杂度menu_select()O(1)O(1)void display()O(1)O(1)void search()O(n)O(1)void order()O(n)O(n)void return_tkt()O(n)O(n)void list()O(1)O(1)void pritlink()O(n)O(1)3.1.4源程序代码:#include#include#include#include#define maxsize 15#define air_maxnum 200typedef struct wat_ros char name20;/姓名 int

11、 req_amt;/订票量 struct wat_ros *next;qnode,*qptr;typedef struct pqueue qptr front; qptr rear;linkqueue;typedef struct ord_ros char name20;/客户信息 int ord_amt;/顶票量 int grade;/舱位等级 struct ord_ros *next;linklist; struct airline char ter_name20;/终点站名 char air_num20;/航班号 char plane_num20;/飞机号 char day7;/飞行日期

12、 int tkt_amt;/乘员定额 int tkt_sur;/余票数量 linklist *order;/乘员名单域 linkqueue wait;/等候客户名单域lineinfo;struct airline *start;void display(struct airline *info)/打印航线基本信息printf(%8st%3st%6st%6st%7dt%8dn,info-ter_name,info-air_num,info-plane_num,info-day,info-tkt_amt,info-tkt_sur);void list()/打印全部航线信息 struct airli

13、ne *info; int i=0; info=start; printf( 终点站 航班号 飞机号 飞行日期 乘员定额余票额数n); while(imaxsize) display(info); info+; i+; printf(nn);void search()/根据客户提供的终点站名输出航线信息 struct airline *info,*find(); char name20; int i=0; info=start; printf(请输入终点站名:); scanf(%s,name); while(iter_name) break; info+; i+; if(i=maxsize)printf(对不起没有航班); else printf( 终点站 航班号 飞机号 飞行日期 乘员定额余票额数n); display(info); void Oher_search()/订票要求不满足时提供其他航班线路 struct airline *info,*find(); char name20; int i=0,j=0; int amount; info=start; printf(请输入终点站名:); scanf(%s,name); print

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号