飞机订票系统课程设计报告讲解.doc
《飞机订票系统课程设计报告讲解.doc》由会员分享,可在线阅读,更多相关《飞机订票系统课程设计报告讲解.doc(36页珍藏版)》请在三一办公上搜索。
1、内蒙古科技大学本科生课程设计说明书题 目:C语言课程设计 飞机订票系统学生姓名:XXX学 号:XXXX专 业:计算机科学与技术班 级:计2014-2指导教师:XXXX日 期: 2015 年 1 月 9日内蒙古科技大学课程设计任务书课程名称C语言课程设计设计题目飞机订票系统指导教师XXX时间2015.1.52015.1.9一、教学要求1. 巩固和加深学生对C语言课程的基本知识的理解和掌握2. 掌握C语言编程和程序调试的基本技能3. 利用C语言进行基本的软件设计4. 掌握书写程序设计说明文档的能力5. 提高运用C语言解决实际问题的能力二、设计资料及参数每个学生在教师提供的课程设计题目中任意选择一题
2、,独立完成,题目选定后不可更换。飞机订票系统设计假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。试设计一民航订票系统,使之能提供下列服务:v 航班信息录入功能(航班信息用文件保存)输入v 航班信息浏览功能输出v 查询航线:(至少两种查询方式)算法按航班号查询 按终点站查询v 承办订票和退票业务三、设计要求及成果1. 分析课程设计题目的功能需求(可选用数组或链表实现,可多人(最多3人)协作完成一个题目)2. 写出详细设计说明(至少包括功能实现分析和模块流程图)3. 编写程序代码,调试程序使其能正确运行(代码书写要规范,标示符要
3、见名知意,要有必要的注释,每人至少500行代码,不包括注释和花括号)4. 设计完成的软件要便于操作和使用5. 设计完成后提交课程设计报告四、进度安排第一天 选择课程设计题目,分析课题的要求第二天 编程第三天 编程及调试第四天 写课程设计报告第五天 提交课程设计报告(打印稿及电子稿)五、评分标准1. 根据平时上机考勤、表现和进度,教师将每天点名和检查2. 根据课程设计完成情况,必须有可运行的软件。3. 根据课程设计报告的质量,如有雷同,则所有雷同的所有人均判为不及格六、建议参考资料1C语言程序设计,谭浩强,清华大学出版社目 录内蒙古科技大学课程设计任务书I目 录II第一章 需求分析31.1引言3
4、1.2任务概述41.3数据描述41.4功能需求41.5性能需求41.6运行需求41.7任务计划5第二章概要设计62.1总体设计62.2数据类型设计(或数据结构设计)62.3接口设计72.4运行界面设计7第三章详细设计103.1输入模块设计103.2输出模块设计113.3查找模块设计123.4排序模块设计143.5保存及读取模块设计15第四章测试分析174.1测试程序执行情况174.2测试结果及出现的问题和解决的方法17第五章课程设计总结22附录:程序代码23参考文献35鸣谢错误!未定义书签。第一章 需求分析1.1 引言随着时代的进步社会分工的不断细化,各个行业联系的不断密切,人们出行越来越多,
5、出行的方式也是百花齐放,作为空中重要的交通工具,飞机航空系统也在不断地得到优化,其中重要的一项就是飞机航空订票系统,因此好的订票系统关系着人们的日常出行方便与否,设计并编制出符合人们需要的航空订票系统是一项繁重而艰巨的任务。订票系统在现实生活中应用很广泛,通过这个系统可以使订票、退票等变得简便。与传统的人工用纸、笔来记录办理订票、退票等相比,使用这个系统也会增加工作效率随着科学技术的不断发展,计算机科学日渐成熟,其强大功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量各个国家科学化和现代化的重要标志,而交通方式的全面自动化、信息化则是
6、其中重要的组成部分,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的航空订票系统具有一定的使用价值和现实意义。随着科技与经济的发展,越来越多的人选择乘飞机,这跟我国的经济增长有很大关系,人们在追求快节奏的生活方式,所以做飞机无疑成了首选。而且随着网络的盛行,航空订票系统就显得尤为重要,这个系统主要是为了方便大家,让大家能够快速、清晰、准确地了解航班信息,而不至于像以前那样排队等候,从而避免耽搁乘客大量的等待时间。完成此系统,需要综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言(C语言),自行实现一个较为完整的应用系统的设计与开发。通过课程设计,自己通过系统分析、系统
7、设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。1.2 任务概述假定民航机场共有n个航班,每个航班有一航班号、确定的航线(起始站、终点站)、确定的飞行时间(星期几)和一定的成员订额。试设计一民航订票系统,使之能提供下列服务:v 航班信息录入功能(航班信息用文件保存)输入v 航班信息浏览功能输出v 查询航线:(至少两种查询方式)算法按航班号查 按终点站查询v 承办订票和退票业务1.3 数据描述航班管理系统有如下数据:(1班号(2.机票数(3.时间(4.起点站
8、(5.终点站(6.航线1.4 功能需求1. 新建文件,读取文件,保存到文件2. 添加3. 修改4. 查找5. 删除1.5 性能需求开发环境:PC机,windows系统使用软件:制 作 程 序:Microsoft Visual C+ 6.0硬件要求:1M以上扩充内存,10M以上的显示内存1.6 运行需求本文所采用的开发环境主要是基于VC6.0和基于面向对象程序设计的c+。VC是个平台开工具。该软件使用TC2为内核,提供WINDOWS平台的开发界面,因此也就支持WINDOWS平台下的功能,软件环境:内置MS-DOS5.或者windows98及以上系统。且有中文平台,如:UCDOS等。1.7 任务计
9、划(1) 每条航线所涉及带的信息有:终点站名、航班号、飞行日期、余票量。(2)输出形式为:= 1.航班信息录入 2.航班信息浏览 3.查询航线(按航班号)4.查询航线(按终点站)5.查询航线(按起点站)6.航班排序(按航班号)7.订票业务 8.退票业务 0.退出 =(3)系统能实现的操作功能如下: 查询航线:根据旅客提出的终点站名输出下列信息:航班号、起点站、终点站、星期几飞行、余票额; 承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班的票额情况,若尚有余票,则为客户办理订票手续;若已满员或余票额少于订票额,则需重新询问客户要求。若需要,可登记排队候补; 承办退票业务:根据客户提
10、供的情况为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的需求,则为他办理订票手续,否则,依次询问其他排队候补客户。测试实例:例子某客户输入订票信息:北京到上海 ,星期一,所需票数3张;系统输出:航班号 余票该客户选择航班号为1000的航班;则该航班余票变为37张。第二章 概要设计2.1 总体设计飞机航班订票系统增加航班信息浏览航班信息航班排序模块退票系统增加机票保存查找函数排序函数查找函数减少机票数目查找函数增加机票数目查找航班信息订票系统输出函数2.2 数据类型设计(或数据结构设计)struct air /定义结构体数组 int num;cha
11、r start20;char over20;char time10;int count;sN;2.3 接口设计 表2.1:函数列表函数名函数格式 /即函数首部函数功能main()void主函数add()void声明增加航班信息print()void显示航班信息search()void查找航班信息(按航班号)search2()void查找航班信息(按终点站)search3()void查找航班信息(按起点站)dingpiao()void订票业务tuipiao()void退票read()void读取文件save()void保存文件output()void输出格式paixu()void航班排序chus
12、hihua()void系统初始化build()void建立数据文件paixu1();void按航班号从小到大排序paixu2();void从大到小2.4 运行界面设计1运行主菜单: printf(=n); printf(1.航班信息录入 n 2.航班信息浏览 n 3.查询航线(按航班号)n 4.查询航线(按终点站)n 5.查询航线(按起点站)n 6.航班排序(按航班号)n 7.订票业务 n 8.退票业务 n 0.退出 n); printf(=n); printf(请在0-8中选择以回车键结束: );界面如下:1子主菜单:printf(请依次输入航班信息(以回车键结束):n); printf(-
13、n);for(i=0;iN;i+)printf(请输入航班号: ); scanf(%d,&si.num);printf(请输入起始站: );scanf(%s,si.start);printf(请输入终点站: );scanf(%s,si.over);printf(请输入时间(星期几): );scanf(%s,si.time);printf(请输入机票数: );scanf(%d,&si.count);fwrite(&si,sizeof(struct air),1,fp);m+;printf(添加完毕,是否继续添加?请键入y或n以回车键结束:);scanf(%s,ii); 2.航班显示菜单:void
14、 output()/定义输出格式函数printf(航班号tt起始站tt终点站tt时间tt机票数n); for(i=0;im;i+)printf(PRINT);/打印出信息第三章 详细设计3.1 输入模块设计输入模块1:void build()/定义建立数据文件函数FILE *fp;/定义文件指针if(fp=fopen(hangban.txt,wb)=NULL)/打开文件并判定是否出错 printf(创建文件失败! );getchar();return;printf(请依次输入航班信息(以回车键结束):n); printf(-n);for(i=0;iN;i+)printf(请输入航班号: );
15、scanf(%d,&si.num);printf(请输入起始站: );scanf(%s,si.start);printf(请输入终点站: );scanf(%s,si.over);printf(请输入时间(星期几): );scanf(%s,si.time);printf(请输入机票数: );scanf(%d,&si.count);fwrite(&si,sizeof(struct air),1,fp);m+;printf(添加完毕,是否继续添加?请键入y或n以回车键结束:);scanf(%s,ii);if(strcmp(ii,y)!=0)/判断是否继续添加航班信息fclose(fp);/关闭文件r
16、eturn;输入模块2:void add()/定义增加航班信息函数char ch;doprintf(请依次输入您要增加的航班信息(以回车键结束): n); /打印提示信息printf(-n);printf(请输入航班号: ); scanf(%d,&sm.num);printf(请输入起始站: );scanf(%s,sm.start);printf(请输入终点站: );scanf(%s,sm.over);printf(请输入时间: );scanf(%s,sm.time);printf(请输入机票数: );scanf(%d,&sm.count);m+;printf(添加完毕,是否继续添加?请键入y
17、或n以回车键结束:);scanf( %c,&ch); /%前有一个空格while(ch=y|ch=Y);/判断是否继续添加3.2 输出模块设计输出模块1:输出格式函数void output()printf(航班号tt起始站tt终点站tt时间tt机票数n); for(i=0;im;i+)printf(PRINT);/打印出信息输出模块2:显示航班信息函数void print()printf(n目前我们有如下航班:n);output();/调用输出格式函数printf(n请按回车键返回上层菜单);getchar();3.3 查找模块设计查找模块(按航班号查询):查询函数void search()i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 飞机 订票 系统 课程设计 报告 讲解

链接地址:https://www.31ppt.com/p-4298941.html