飞机订票系统实验报告(共15页).doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《飞机订票系统实验报告(共15页).doc》由会员分享,可在线阅读,更多相关《飞机订票系统实验报告(共15页).doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 实验题目:订票系统实验目的:1了解并掌握数据结构的设计方法,具备初步的独立分析和设计能力;2初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。实验要求:l 任务:通过此系统可以实现如下功能:l 录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)l 查询:n 可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓)
2、;n 可以输入起飞抵达城市,查询飞机航班情况;l 订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;l 退票: 可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。l 修改航班信息:当航班信息改变可以修改航班数据文件实验主要步骤:飞机订票系统增加航班信息信息浏览退票业务订票业务修改航班信息删除客户信息查找航班信息信息按起终点查找退出并保存航班端(一)输入航班信息,add()增加航班信息,并保存到save().(二)修改信息,在xiugai()函数里,输入要修改的航班号,选择修改的内容,如修改时间,地
3、点并保存。客户端(一)输入起始站和终点站,在两者都符合的条件下在search()函数里查找,并输出航班信息。(二)订票:用search(),判断是否有符合的航班,有则输出并进行订票,还有输入客户信息。(三)退票:调用search(),用它的返回值判断是否有符合的航班,有则输入,并删除客户信息。1) 在主函数里先了调用chushihua(),确定有hangban.dat文件,并让客户或航班端选择相应的模块。2) 定义订票业务函数,在这个函数中首先调用了search函数查找需要订票的航班,用search函数的返回值判断是否有该航班。运用if语句实现订票时的多种情况:订票数输入不正确、飞机票数不足等
4、情况。订票成功时运用pi.count=pi.count-n;将已被订的机票数减去,以显示新的即时航班信息3) 定义退票业务函数:4) 与订票函数相类似,只做稍稍修改就行退票成功是用pi.count=pi.count+n; 将航班的剩余票数加上去以显示即时航班信息。5) 模块功能:设立一个初始化函数来得到航班信息。具体设计是第一次运数据文件是否存在输入航班信息并建立新数据文件保存下来从已有的数据文件读取已有的航班信息Y初始化结束N行程序时自动生成保存航班信息的文件,并输入初始航班信息,待第二次开始就可以直接读取该文件获得已有的航班信息并可直接使用。运用了access函数判断文件是否存在。实验结果
5、:实验源程序:#include/标准输入、输出头文件#include/包含字符串函数处理头文件#include/包含access函数的头文件#define M 1000/定义最多的航班数#define E 1000struct air /定义结构体数组int num;/定义航班号char start20;/航班起始站char des20;/终点站char time10;/飞行时间int count;/机票数量int price; /机票价格pM;struct clientlong id; /身份证char name20; /客户姓名 int count ; /客户订票量int num; /航班
6、号cE;int i,m=0,e=0;/定义全局变量char ii10;void add();/函数声明增加航班信息函数void print(); /显示航班信息int search();/查找航班信息void dingpiao();/订票业务void tuipiao();/退票void read();/读取文件void save();/保存文件void output();/输出格式void chushihua();/系统初始化void build();/建立数据文件void del();void xiugai();void main() int j; / chushihua();/系统初始化判
7、断是否存在原始数据文件 printf( -您好,欢迎进入飞机订票系统!-n); printf(=n); do printf( - 1.增加航班信息 - nn - 2.浏览航班信息 - nn - 3.查找航班信息 - nn - 4.订票业务 - nn - 5.退票业务 - nn - 6.修改航班信息 - nn - 0.退出 - nn); printf(=n);printf(请在0-6中选择以回车键结束:nn); scanf(%d,&j);switch(j)case 1: add();/调用增加航班函数break;case 2:print();/调用显示模块break;case 3:search(
8、);/调用查找模块break;case 4:dingpiao();/调用订票模块break;case 5:tuipiao();/调用退票模块break; case 6:xiugai();case 0:/退出系统save();printf(谢谢使用,再见! );break;while(j!=0);/判断是否调用其他函数 void chushihua()/定义系统初始化函数if( access(hangban.dat,0)build();elseread();void build()/定义建立数据文件函数FILE *fp;/定义文件指针if(fp=fopen(hangban.dat,wb)=NUL
9、L)/打开文件并判定是否出错 printf(创建文件失败! );/打印出错提示getchar();return;printf(请依次输入航班信息(以回车键结束):n); /打印提示信息printf(- n);for(i=0;iM;i+)printf(请输入航班号: ); scanf(%d,&pi.num);/输入航班号printf(请输入起始站: );scanf(%s,pi.start);/输入起始站printf(请输入终点站: );scanf(%s,pi.des);/输入终点站printf(请输入时间(星期几): );scanf(%s,pi.time);/输入时间printf(请输入机票数:
10、 );scanf(%d,&pi.count);/输入机票数printf(%d,&pi.price);fwrite(&pi,sizeof(struct air),1,fp);m+;printf(添加完毕,是否继续添加?请键入y或n以回车键结束:);scanf(%s,ii);if(strcmp(ii,y)!=0)/判断是否继续添加航班信息fclose(fp);/关闭文件return;void read()/定义读取文件函数FILE *fp;if(fp=fopen(hangban.dat,r)=NULL)printf(创建文件失败! );getchar();return;i=0;while(!feo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 飞机 订票 系统 实验 报告 15
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内