


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计课程:数据结构专业班级:xx软件工程xx班姓名:xx学号:xxx姓名:xxx学号:xxx设计时间:xxx指导老师:xxx课程设计题:飞机订票系统一、设计目的1.掌握结构体数组的表示和存储。2.掌握链表的存储和操作。3.掌握文件的操作。二、设计内容和要求1.任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:订票情况可以存在一个数据文件中,结构自己设定。可以订票,如果该航
2、班已经无票,可以提供相关可选择航班;退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。修改航班信息:当航班信息改变可以修改航班数据文件。要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能设计思想:管理操作系统,主要考虑的是信息的录入,这里利用文件的读写完成该功能;输出,查询以及删除,利用结构数组存储航班与客户信息,依次对订票,退票,查询及相关操作编写成子程序,然后再主程序中调用,这样程序看起来相当简练,而且易读懂;算法设计分析:(次系统运行环境为VC6.0)1.txtbeijingshanghai11120111806100
3、2shanghaiwuhang221202214021101wuhangchibi33130331401502(此文件是程序执行航班信息录入时自动生成,在信息读取时需要调用)首先是航班于客户信息的存储,结构数组的利用很好的解决该问题;其次是文件的操作,在主函数中利用文件的读与写;下面介绍订票退票以及查询操作的实现。1订票:首先输入出发地与目的地,查找是否有相应的航班信息,在航2班票数足够的情况下,录入客户信息,提示操作成功;否则失败。3退票:输入退票客户的姓名与身份号码,查找到该客户信息后进行退票操作,完成后对应航班票数加1;若没有该客户信息,提示查无此人。查询:输入客户姓名与身份号码,若查到
4、有该客户信息,显示该客户的航班情况;否则提示差无此人。/飞机定票管理系统#include#include#defineN10structflightcharstart10;/出发地ints_month;/出发时间月份,天,小时,分钟ints_day;ints_hour;ints_minute;intd_month;/到达时间月份,天,小时,分钟intd_day;intd_hour;intd_minute;intcoast_t;/历时多久intcoast_m;/票价intnum;/剩余票数/intbianhao;/机票编号)airN;/结构体数组存储航班信息客户信息structcon(intnu
5、mber;/定票者的证件号码charstart10;/出发地charend10;/目的地ints_month;/出发时间月份,天,小时,分钟ints_day;ints_hour;ints_minute;intd_month;/到达时间月份,天,小时,分钟intd_day;intd_hour;intd_minute;intcoast_t;/历时多久intcoast_m;/票价/intbianhao;/机票编号)people100;定票,输出发地与目的地,时间,反馈剩余票,票价book(intt)(inti,month,day,p,q,k=0;/k为判断输入的信息是否有误charstart10,e
6、nd10;printf(定票:n);/输入查询的航班信息,以便搜索while(k=0)(printf(请输入出发地,目的地,出发日期:n);*gets(start);gets(end);/*这里输入时应注意用回车键否则默认字符串存入start*scanf(%d,%d”,&month,&day);/*/scanf(%s,%s,%d,%d,start,end,&month,&day);/getchar();printf(%s,%s,%d,%d,start,end,month,day);/扫描信息,搜索与所查询的航班匹配信息for(i=0;iN;i+)(p=strcmp(start,airi.sta
7、rt);q=strcmp(end,airi.end);if(p=0&q=0&month=airi.s_month&day=airi.s_day)(k=1;/信息输入无误,即找到匹配信息printf(由%s到%s时间为%d月%d号的航班票价为%d,余票为dn”,airi.start,airi.end,airi.s_month,airi.s_day,airi.coast_m,airi.num);/更新信息,将客户信息存储if(airi.num=0)printf(票已售完,如有不便请谅解!nnnn);else(airi.num=airi.num-1;printf(请输入您的证件号码与姓名:n);sc
8、anf(%d,%s”,&peoplet.number,);getchar();strcpy(peoplet.start,airi.start);strcpy(peoplet.end,airi.end);peoplet.s_month=airi.s_month;peoplet.s_day=airi.s_day;peoplet.s_hour=airi.s_hour;peoplet.s_minute=airi.s_minute;peoplet.d_month=airi.d_month;peoplet.d_day=airi.d_day;peoplet.d_hour=airi.d
9、_hour;peoplet.d_minute=airi.d_minute;peoplet.coast_t=airi.coast_t;peoplet.coast_m=airi.coast_m;/peoplet.bianhao=airi.bianhao;printf(恭喜您定票成功!nnnn);t+;/system(pause);if(k=0)printf(”信息输入有误n);printf(-是否继续定票?0为继续1为退出n);scanf(%d,&k);getchar();returnt;退票,并将客户信息栏中该客户信息清楚,所乘航班票数加1re_ti(intt)inti,j,nu_mber,k=
10、0;/k为判断是否查找到客户信息charna_me10;printf(退票:n);printf(请输入证件号码与客户姓名:n);scanf(%d,%s”,&nu_mber,na_me);getchar();for(i=0;i100;i+)if(nu_mber=peoplei.number&strcmp(na_me,)=0)k=1;/找到该客户信息/退票后,与该客户对应航班票数增1for(j=0;jN;j+)if(strcmp(peoplei.start,airj.start)=0&strcmp(peoplei.end,airj.end)=0&peoplei.s_mont
11、h=airj.s_month&peoplei.s_day=airj.s_day)airj.num=airj.num+1;将客户信息依次向前移动for(j=i;j100;j+)peoplej.number=peoplej+1.number;strcpy(,peoplej+1.name);strcpy(peoplej.start,peoplej+1.start);strcpy(peoplej.end,peoplej+1.end);peoplej.s_month=peoplej+1.s_month;peoplej.s_day=peoplej+1.s_day;peoplej.s
12、_hour=peoplej+1.s_hour;peoplej.s_minute=peoplej+1.s_minute;peoplej.d_month=peoplej+1.d_month;peoplej.d_day=peoplej+1.d_day;peoplej.d_hour=peoplej+1.d_hour;peoplej.d_minute=peoplej+1.d_minute;peoplej.coast_t=peoplej+1.coast_t;peoplej.coast_m=peoplej+1.coast_m;t=t-1;/删除该客户信息后,客户记录减去1if(k=0)printf(”查无此
13、人!n);printf(nnnn);returnt;查询信息,出入所要查询的顾客的航班信息,并给出错误处理check()(inti,nu_mber,k=0;/k为判断是否查找到客户信息charna_me10;printf(查询:n);printf(请输入证件号码与客户姓名:n);/getch();/fflush(stdin);scanf(%d,%s”,&nu_mber,na_me);for(i=0;i100;i+)(if(nu_mber=peoplei.number&strcmp(na_me,)=0)(k=1;printf(-以下是该客户信息:n);printf(证件号
14、:%d;姓名:%s;出发地:%s;目的地:%s;出发时间:%d月%d日%d时%d分n,peoplei.number,,peoplei.start,peoplei.end,peoplei.s_month,peoplei.s_day,peoplei.s_hour,peoplei.s_minute);printf(nnnn);if(k=0)printf(查无此人!nnnn);)main()(/使用文件初始化信息ints,p,q=0,i;/p,q为循环判断变量intt=0;/*FILE*fp;charname=1.txt”;if(!(fp=fopen(1.txt”,w)prin
15、tf(error!n);for(i=0;i3;i+)fprintf(fp,%15s%15s%4d%4d%4d%4d%4d%4d%4d%4d%4d%4d%4dn,airi.start,airi.end,airi.s_month,airi.s_day,airi.s_hour,airi.s_minute,airi.d_month,airi.d_day,airi.d_hour,airi.d_minute,airi.coast_t,airi.coast_m,airi.num);fclose(fp);*/FILE*fp;charname=1.txt;if(!(fp=fopen(1.txt,r)printf
16、(error!n);for(i=0;i3;i+)fscanf(fp,%15s%15s%4d%4d%4d%4d%4d%4d%4d%4d%4d%4d%4dn,&airi.start,&airi.end,&airi.s_month,&airi.s_day,&airi.s_hour,&airi.s_minute,&airi.d_month,&airi.d_day,&airi.d_hour,&airi.d_minute,&airi.coast_t,&airi.coast_m,&airi.num);fclose(fp);/charname;/readconumentwhile(q=0)printf(、*n
17、);printf(-请选择服务种类:n1为定票;2为退票;3查找信息;0为退出n);printf(、*n);/system(pause);scanf(%d,&s);getchar();switch(s)(case1:t=book(t);/订票操作break;case2:t=re_ti(t);/退票操作break;case3:check();/查找客户信息是否存在break;case0:(printf(-航空集团祝福您旅途愉快!);printf(您确定离开界面?1/0n);scanf(%d,&p);if(p=1)q=1;elseq=0;骡鎏教蠢m信;II退出LiiX出发虬目的地出发日期三JIIb
18、eijingshanghaiLi、血ijinff,shansrhai,l,lSbeiji_ng到sliansrhai时间为1月1号的航班票价为1阿余票为2请输入您的证件号码与旌名:123,ccb恭喜您定票成功,XKMiKXNMKHMiKXKXMKMiMXMJifiOffXlffMiKmC算XKiCmKXaOffXMMiKlifXHKlffXKiMXXXKiCXMiTCXM:搜畚寮mEh;3查放信息;胃为退出输入从北京到上海的航班,录入客户信息,当前票数为2;输入查询的客户证件号码与姓名,找到后输出客户的航班信息;.票n查找信息阳为退出2退票:清裕入证件号码与客户姓名123.ccbMiMXHMiMKMi*lWMWMMHMMW研WM日M-WMWMWMMM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 宜昌会计从业资格证考试及答案解析
- 2025年国家开放大学(电大)《市场营销调研与预测》期末考试备考试题及答案解析
- 2025年国家开放大学《化工原理》期末考试备考试题及答案解析
- 2025年国家开放大学《企业文化建设》期末考试备考试题及答案解析
- 2025年国家开放大学《人类发展与教育心理学》期末考试备考试题及答案解析
- 初中化学实验教学设计与注意事项
- 2025年国家开放大学《计算机导论》期末考试备考试题及答案解析
- 2025年国家开放大学《汉语拼音与词汇》期末考试备考试题及答案解析
- 企业内部控制制度设计与风险管理应用
- 设备采购合同模板与风险提示
- 数字化转型文化旅游产业智慧化发展研究报告
- 低空经济全景图:新质生产力驱动下的万亿级新赛道与区域标杆实践
- 硫酸安全培训与防范课件
- 2025年营造林监理工程师试题
- 空乘盘发课件
- 中建土建劳务招标标准清单编制参考
- 土地调查评估服务方案(3篇)
- 小学生英语水果课件下载
- 湖北省老年教育管理办法
- 人教新版(PEP)四年级上册单元测试卷 Unit1 Helping at home (含听力音频听力原文及答案)
- DGTJ08-66-2016 花坛花境技术规程
评论
0/150
提交评论