数据结构设计C语言航空订票系统.doc
《数据结构设计C语言航空订票系统.doc》由会员分享,可在线阅读,更多相关《数据结构设计C语言航空订票系统.doc(26页珍藏版)》请在沃文网上搜索。
1、 目 录一、设计题目 (3)二、任务(3)三、功能要求和测试数据 (3)四、需求分析 (4) 4.1 宏观需求分析 (4) 4.2 具体需求分析 (4)五、 概要设计(5) 5.1系统的流程框图(5) 5.2系统各函数的功能、相互调用关系 (6)六、 详细设计(8) 6.1 各变量的定义和作用 (8) 6.2 系统各函数的功能 (8)七、 调试分析(21)八、 用户手册 (22)九、测试结果(22)十、心得体会与参考文献(22)设计题目 航空订票系统任务航空客运定票的业务活动包括:查询航线、客票预定和办理退票等。试设计一个航空客运定票系统,以使上述业务可以借助计算机来完成。功能要求1) 录入:
2、可以录入航班情况2) 查询:可以查询某个航线的情况(如输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;3) 订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;4) 退票: 可退票,退票后修改相关数据文件;5) 客户资料:有姓名,证件号,订票数量及航班情况,订单要有编号;6) 修改航班信息:当航班信息改变可以修改航班数据文件。测试数据航班数据航班号出发城市到达城市起飞时间到达时间价格折扣率(%)总票数剩余票数MU5103上海虹桥北京7:009:20106394202C
3、A1590上海虹桥北京8:5511:1586475200FM9307上海虹桥广州10:3012:5060848205HO1241上海浦东青岛19:5021:204185620113U8964上海浦东成都15:4519:0592257201客户数据姓名证件号订票数航班号张三丰3100001213U8964张翠山310000251FM9307张无忌310000331MU5103需求分析宏观需求分析采用现有的软硬件环境及先进的管理系统方案,从而达到充分利用现有资源,提高系统应用效果的目的。尽量达到系统操作过程中的直观、方便、实用、安全等要求。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改
4、,又便于未参与开发的技术维护人员补充、维护。系统应具备维护功能,及时根据用户需求进行数据的添加、删除、修改等操作。具体需求分析 菜单是应用程序中非常重要的组成部分,通过菜单,应用程序可以实现不同的功能,通过本系统的设计,可以实现应用程序的菜单。(1)程序运行时,首先给出两个菜单选项的内容和输入提示:管理员进入输入1,客户进入输入2。用户输入1或者2,以不同身份进入系统,如果输入1和2以外的其他字符,则显示输入错误,请重新输入。 (2) 若用户选择是管理员身份进入,需要输入密码(首次设定密码为1111),验证正确后,则可进入系统,显示如下7个菜单选项(后有截图)。若密码验证错误,则提示密码错误,
5、并返回主界面让用户重新选择身份。1. 输入航班信息 2.查询航班信息 3.输入乘客信息 4.查询乘客信息 5.修改航班信息 6.查找航线 7.返回上一界面 (3)若用户是以客户身份进入,则进入系统后,将显示如下7个菜单选项(后有截图)。进入系统后,用户可以根据需要输入选项实现不同功能。若输入其它字符,则显示输入错误,1.查询航班信息 2.输入乘客个人信息 3.查询乘客个人信息 4.订票信息 5.退票信息 6.查找航线 7.返回上一界面 (4)用户根据需要输入(1-7),若输入其他字符,则提示输入错误,要求重新选择。(5)用户选择(1-7)实现不同功能,如果要返回上级菜单界面,则需要根据提示操作
6、返回。概要设计4.1系统的流程框图 图1 系统流程框图(二)实现函数的具体功能: (通过定义函数来实现客户端订票,退票等功能) struct air char airnum20; /航班号 char set_off20;/起飞的城市 char get_to20;/终点城市 char start_time20;/起飞时间 char arrive_time20;/到达时间 float price;/票价 float discount;/折扣 int ticketnum;/票的编号 int ticketleft;/剩余的票数airA; struct customer char custnum20;
7、/证件号 char name40;/姓名 int ticketnum;/票的编号char airnum20;/航班 int booknum;/预定的票号custC;void customermenu()/创建客户账户界面void air_print();/查询航班信息void input_cust();/输入乘客个人信息void yanzheng();/客户信息验证,相当于密码void kehu_print();/乘客查询自己的个人信息void bookticket();/订票信息void tuipiao();/退票信息void search();/查找航线void guanliyuanmen
8、u();/创建管理员账户界面 void input_air();/输入航班信息void cust_print();/管理员查询所有乘客信息void change();/航线修改系统。void main();/主函数,选择进入管理员界面或客户界面。本系统要用到的库函数:#include#include #include程序调用关系customermenu( )调用了void air_print(),void input_cust(),void kehu_print(),void bookticket(),void tuipiao(),void search()。guanliyuanmenu()调
9、用了void input_air(),void air_print(),void input_cust();void cust_print(),void change(),void search()。bookticket()和tuipiao()调用了void yanzheng();详细设计/*各变量的定义和作用*/#include#include #include#define A 6 /*航线数*/#define B 15 /*用于循环体中的返回模块,常量*/#define C 5 /*顾客数*/#define Cout airi.airnum airi.set_off airi.get_t
10、o airi.start_time airi.arrive_time airi.price airi.discount airi.ticketnum airi.ticketleftendlstatic int f=0; /*输入航线数时控制变量*/static int g=0; /*输入顾客数时控制变量*/static int h=0; /*订票时的控制变量*/static int s=0; /*订票与退票时控制变量*/struct air char airnum20; /*航班号*/ char set_off20; /*起飞城市*/ char get_to20; /*到达城市*/ char
11、start_time20; /*起飞时间*/ char arrive_time20; /*到达时间*/ float price; /*票价*/ float discount; /*折扣率*/ int ticketnum; /*总票数*/ int ticketleft; /*剩余票数*/airA;struct customer char custnum20; /*证件号*/ char name40; /*姓名*/ int ticketnum; /*订票数*/char airnum20; /*航班号*/ int booknum; /*订单编号*/custC;/*2:系统各函数的功能*/void m
12、ain() /*主函数选择进入管理员界面或客户界面*/int j;void customermenu();void guanliyuanmenu();for(;)cout * 管理人员进入请输入1,客户进入请输入2,退出请输入0 *j; if(j=0&j=2) /判断输入数字是否在规定范围内 switch(j)/选择登录账户类型 case 1:/登陆管理员账户 char p=1111; char m5; coutm;if (strcmp(m,p)=0) /验证密码正确与否 system(cls); /*清屏功能,美化界面*/ guanliyuanmenu(); break; /调用管理员账户信
13、息 else cout密码错误! 重新选择按键endl; break; case 2:/登陆客户账户 system(cls); /*清屏功能,美化界面*/ customermenu(); break; case 0:/登陆客户账户 exit(0); break; void customermenu()/*创建客户账户界面*/void air_print();void cust_print();void input_cust();void input_air();void search();void bookticket();void change();void tuipiao();void k
14、ehu_print();int i,j;cout * 客户订票系统 * endl; cout*endl; for(i=0;iB;i+) cout 1.查询航班信息 2.输入乘客个人信息endl; cout 3.查询乘客个人信息 4.订票信息 endl; cout 5.退票信息 6.查找航线 endl; cout 7.返回上一界面 endl; cout *j; switch(j) case 1:air_print(); break; case 2:input_cust(); break; case 3:kehu_print(); break; case 4:bookticket(); break
15、; case 5:tuipiao(); break; case 6:search(); break; case 7: i=B-1; break; default:cout输入出错endl; cout谢谢使用!endl; void guanliyuanmenu() /*创建管理员账户界面*/ void air_print(); void cust_print(); void input_cust(); void input_air(); void search(); void bookticket(); void change(); void tuipiao(); int j,i; cout *
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 结构设计 语言 航空 订票 系统
