版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
题目:飞机航班信息系统功能:能够实现航班信息的查询、修改、退票等操作具体要求:1)界面简洁美观。查询航班信息的至少两种方式:1、按航班号查询2、按照航线查询用户订票或者退票之后,与之对应的相关航班信息要跟着改变。当没有乘客要乘坐的航班时,系统能够智能提示用户的其他路线选择。具体的代码实现:#include"stdio.h”#include"stdlib.h”#include<string.h>//包含字符串函数处理头文件#defineN50#defineM50structair//定义结构体数组{charnumber[10];charstart[10];charend[10];chartime1[8];chartime2[8];intprice;intcount;intnum;}s[N];intm;struct{charname[20];charID[7];intt;intco;}c[M];voidsave()//保存模块程序{inti;FILE*fp;//定义文件指针if((fp=fopen(”info.txt”,”wb"))=0)//打开文件并判断是否出错{printf("创建文件失败!\n");//打印出错提示exit(0);}for(i=0;i<m;i++)if(fwrite(&s[i],sizeof(structair),1,fp)==0)//向文件写入数据,并判断是否出错printf("向文件输入数据失败!\n\n");fclose(fp);//关闭文件}voidread()//从文件读取信息模块(inti;FILE*fp;//定义文件指针if((fp=fopen(”info.txt”,”rb"))=0)//打开文件,并判断是否出错(printf("出错,请检查文件是否存在\n");//打印出错提示exit(0);}for(i=0;i<m;i++)(fread(&s[i],sizeof(structair),1,fp);//从文件中读取信息}fclose(fp);//关闭文件}voidmenu()(printf(- ★---您好,欢迎进入中国民航管理系统!---★\n");printf(”==================================\n");printf("-- ☆1.输入航班信息☆——----\n");printf("--------☆2.浏览航班信息☆--------\n");printf("-- ☆3.修改航班信息☆——----\n");printf("-- ☆4.查找航班信息☆——----\n");printf("-- ☆5.删除航班信息☆--------\n");printf("--------☆6.订票信息 ☆--------\n");printf("--------☆7.退票信息 ☆--------\n");printf("-- ☆0.退出 ☆——----\n");printf(”==================================\n");}voidInput()(inti;printf("你需要输入多少个航班信息?\n");scanf("%d",&m);printf("请依次输入航班信息:\n");printf("航班号起点站终点站起飞时间抵达时间票价折扣总票数^”);for(i=0;i<m;i++)
scanf("%s”,s[i].number);〃读取航班号scanf("%s”,s[i].start);//读取起始站scanf("%s”,s[i].end);//读取终点站scanf("%s”,s[i].time1);//读取时间scanf("%s”,s[i].time2);scanf("%d”,&s[i].price);scanf("%d”,&s[i].count);//读取机票数scanf("%d”,&s[i].num);}save();printf(-输入后的航班信息如下\n");read();printf("|航班号|起点站|终点站|起飞时间|抵达时间|票价|折扣|剩余票数\/);for(i=0;i<m;i++){printf("%3s”,s[i].number);printf("%8s",s[i].start);printf("%8s”,s[i].end);printf("%8s”,s[i].time1);printf("%8s”,s[i].time2);printf("%8d”,s[i].price);printf("%7d折”,s[i].count);printf("%8d”,s[i].num);printf("\n");}}voidDisplay(intm){inti;printf(read();printf(“““““““““““““““““““““““个个个个个个个个个个个个个个个个个个个个个个个**********************************\n);printf(printf("|航班号|起点站|终点站|起飞时间|抵达时间|票价|折扣|剩余票数\n");printf(“““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个*\n");for(i=0;i<m;i++){printf("%3s”,s[i].number);printf("%8s",s[i].start);printf("%8s”,s[i].end);printf("%8s”,s[i].time1);printf("%8s”,s[i].time2);printf("%8d”,s[i].price);printf("%8d",s[i].count);printf("%8d",s[i].num);printf("\n");}printf(**************************************************************************\n,}voidPrint(inti){printf("%-6s%8s%8s%8s%8s%6d%6d%6d\n”,s[i].number,s[i].start,s[i].end,s[i].time1,s[i].time2,s[i].price,s[i].count,s[i].num);printf(" \n");}voidsearch。//查询模块{charname1[10];charname2[10];charcode[10];inti,k;read();printf("请选择查找方式:\n");//打印查询方式菜单printf("1.按航班号查找\/);printf("2.按航线查找\/);printf("0.返回\n");printf("请在0-2中选择:\n");scanf("%d”,&k);//读取查找方式if(k>0){switch(k){case1:printf("请输入航班号:\n");scanf("%s”,code);break;case2:printf("请输入起始站名称:\n");scanf("%s”,name1);//读取起始站printf(”请输入终点站名称:\n");scanf("%s”,name2);break;}}read();//调用读取函数for(i=0;i<m;i++)(if(strcmp(s[i].number,code)==0){ printf("查找航班信息成功”);Print(i);break;}if(strcmp(s[i].start,name1)==0&&strcmp(s[i].end,name2)==0)//按终点站起始站判断输出条件{ printf("查找航班信息成功!\n");Print(i);break;}elseif(strcmp(s[i].start,name1)==0||strcmp(s[i].end,name2)==0){printf(-查找信息失败!没有您要查询的航线,您还可以考虑乘坐以下航班\n,Print(i);}}}voidModify()//修改模块{struct〃定义结构体{charch[10];charname1[10];charname2[10];chartime1[8];chartime2[8];intprice;intcount;intnum;}mo;chara;inti,n;read();//调用读取模块//Display(m);do{printf("请选择修改方式:\n");printf("*1,按航班号修改:\n");printf("*2,按航线修改:\n");printf("请选择1或2,按回车键确认:\n");scanf("%d”,&n);//读取修改方式switch(n){case1:printf("请输入航班号:\n");scanf("%s”,mo.ch);//读取航班号break;case2:printf("请输入起始站:\n");scanf("%s”,1);//读取起始站printf("请输入终点站:\n");scanf("%s”,2);//读取终点站break;}for(i=0;i<m;i++){if(strcmp(s[i].start,1)==0&&strcmp(s[i].end,2)==0)/判断输出条件{Print(i);break;}if(strcmp(s[i].number,mo.ch)==0)//判断输出条件{Print(i);break;}}printf(-请输入新航班号、起始站、终点站、起飞时间、抵达时间、价格、折扣、机票数:\n");scanf("%s”,mo.ch);〃读取航班号scanf("%s”,1);//读取起始站scanf("%s”,2);//读取终点站scanf("%s”,mo.time1);//读取时间scanf("%s”,mo.time2);scanf("%d”,&mo.price);scanf("%d”,&mo.count);//读取机票数scanf("%d”,&mo.num);strcpy(s[i].number,mo.ch);strcpy(s[i].start,1);//替换其始站strcpy(s[i].end,2);//替换终点站strcpy(s[i].time1,mo.time1);//替换时间strcpy(s[i].time2,mo.time2);s[i].price=mo.price;s[i].count=mo.count;//替换机票数s[i].num=mo.num;save();//调用保存模块printfC修改信息成功!\n");read();printf("修改后的航班信息为\n");printf("|航班号|起点站|终点站|起飞时间|抵达时间|票价|折扣|剩余票数\n");for(i=0;i<m;i++)Print(i);printf("是否继续?请键入Y或N以回车键结束:\n");scanf("%c”,&a);}while(a=='Y');//判断结束}voidBook()〃实现用户订票功能(charch[10];intd,i=0,t;Display(m);printf("请输入您要订的航班号码\n");scanf("%s”,ch);while(i<m&&(strcmp(s[i].number,ch)!=0))i++;if(i>m){printf(-没有找到您所要订的航班!请重新输入\/);scanf("%s”,ch);}elseif(strcmp(s[i].number,ch)==0)t=i;printf(-请输入你要订的票数\n");scanf("%d”,&d);if(d<0){printf(-请输入有效的机票数!\n");//判断机票数是否出错scanf("%d”,&d);}H:i=0;do{if(s[i].num!=0&&s[i].num>=d)//判断是否出错{s[i].num=s[i].num-d;c[i].t=d;c[i].co=t;printf("请输入您的姓名:”);scanf("%s”,c[i].name);printf(-请输入您的证件号码(6位数字)\n");scanf("%s”,c[i].ID);system("cls");//save();//调用保存函数printf("订票成功!\n\n");break;}if(s[i].count<d)//判断是否出错{printf(-对不起,您所订的航班剩余机票不够,请重新输入机票数量:\n");scanf("%d”,&d);gotoH;}i++;}while(i<m);//read();printf("下面是已订机票的顾客的相关信息:\n");printf(" \n");printf(-姓名证件号码订票数量订单编号\/);printf(" \n");printf("%-6s%6s%6d%6d\n”,c[i].name,c[i].ID,c[i].t,c[i].co);Print(c[i].co);}voidBack()//退票模块{charp[10];intn,i=0;read();//调用查询模块printf("请输入您要退订的航班号\/);scanf("%s”,p);while(i<m&&strcmp(s[i].number,p)!=0)i++;if(i<m){printf(-请输入您要退的机票数目:\n");scanf("%d”,&n);//输入所退票数}if(n<0)//判断票数是否有效{printf(-请输入有效的机票数:”);
scanf("%d”,&n);}s[i].num=s[i].num+n;printf("退票成功!\n");//save();〃调用保存模块}voidDelet(int&m)//删除模块(chara;charcity1[20],city2[20],no[10];intk,i,j;read();do(printf("请选择删除以方式回车键结束:\n");//打印删除方式菜单printf("*1.按航班号删除\/);printf("*2.按航线删除");printf("*0.返回\n");printf("请输入您的选项(0-2):\n");scanf("%d”,&k);//读取删除方式switch(k)(case1:printf(-请输入您要删除的航班号:\n");scanf("%s”,no);//读取航班号for(i=0;i<m;i++)if(strcmp(s[i].number,no)==0)(for(j=i;j<m;j++)s[j]=s[j+1];m--;save();//调用读取函数printf(-删除信息成功,剩余航班信息如下\n");printf(read();printf(“““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个*\n");printf(printf("l航班号I起点站I终点站I起飞时间I抵达时间I票价I折扣I剩余票数(张)\n”);printf(“““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个*\n");printf(for(i=0;i<m;i++)
Print(i);printf(“““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个个*\n");}break;//跳出循环case2:printf("请输入要删除的航班起始站名称:\n");scanf("%s”,city1);//读取起始站printf(-请输入要删除的航班终点站名称:\n");scanf("%s”,city2);//读取终点站for(i=0;i<m;i++)if(strcmp(s[i].start,city1)==0&&strcmp(s[i].end,city2)==0){for(j=i;j<m;j++)s[j]=s[j+1];m--;save();//调用读取函数printf(”删除信息成功,剩余航班信息如下\n");read();1f“““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““““prinf(**************************************************************************\n,printf("|航班号|起点站|终点站|起飞时间|抵达时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度二手房买卖合同中的贷款利率及还款方式3篇
- 2024全新成都离婚协议下载含离婚协议起草、修改、下载、法律咨询合同3篇
- 2024至2030年汽车内门把手项目投资价值分析报告
- 2024年度版权租赁延期合同3篇
- 2024至2030年中国家具油漆行业投资前景及策略咨询研究报告
- 2024年度贷款房屋租赁托管与营销推广合同2篇
- 2024-2030年中国储运设备行业发展展望及未来投资策略预测报告
- 2024-2030年中国便携式自动导航系统(pnd)发展状况与投资战略规划研究报告
- 2024年市场开发人员合约2篇
- 2024至2030年南极冰刺项目投资价值分析报告
- 2025届广东省广州市白云区物理九上期末检测试题含解析
- 楚雄彝族自治州楚雄市2022-2023学年七年级上学期期末数学试题
- 跌倒不良事件分析汇报课件
- 2023-2024学年广东省广州市白云区五年级上学期英语期末真题
- 2024-2034年中国云南白药行业市场现状分析及竞争格局与投资发展研究报告
- 单位食堂供餐方案(2篇)
- 语文 职业模块口语交际教学设计示例(打商务电话)
- 数据安全事件的溯源与责任追究
- 中国文化-古今长安(双语)智慧树知到期末考试答案章节答案2024年西安欧亚学院
- 苏教译林版五年级上学期英语第七单元Unit7《At weekends》测试卷(含答案解析)
- 丝氨酸蛋白酶在代谢性疾病中的作用
评论
0/150
提交评论