您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 薪酬管理 > 《面向过程程序设计实践》课题
任务18课题名称某航空公司飞机购票模拟系统(服务器端)课题内容文件信息:航线信息:航线编码、起点、终点、公里数、飞行时间。航班信息:航班编号、航线编码、起飞时间、可售机票总数、票价、当前状态(准备、已出票、售完、已结束)。售票信息:航班编号、顾客ID、顾客姓名、购票时间(y-m-d-h-m-s)。以顺序存储结构设计程序能实现以下航空公司服务器端功能:(1)航线的维护(创建、修改、删除(不能删除已出票、售完航班))(2)航班的维护(创建、修改、删除(不能删除已出票、售完航班))。(3)显示航班列表。(4)显示指定航班的售票情况(明细和统计值)。(5)显示各航班的销售情况。inthbId;intuserId;charuserName[NUMBER];charbuytime[NUMBER];任务19课题名称某航空公司飞机购票模拟系统(客户端)课题内容航班文件信息:航线信息:航线编码、起点、终点、公里数、飞行时间。航班信息:航班编号、航线编码、起飞时间、可售机票总数、票价、当前状态(准备、已出票、售完、已结束)。售票信息:航班编号、顾客ID、顾客姓名、购票时间(y-m-d-h-m-s)。以链式存储结构设计程序能实现以下顾客端功能:(1)搜索指定航线、指定时间段的航班(2)购票(3)退票(4)输入顾客ID,显示顾客的购票信息主菜单/****************************************//*模块名称:Menu.c功能描述:实现菜单功能*/#includestdio.h/*输入输出函数的头文件*/#includeshoupiao.c#includehangban.c#includehangxian.cvoidmenu();/*菜单*///航班voidinit_hb(hbnum*hb);//初始化列表voidcreate_hb(hbnum*hb);//从文件中加载数据voidappend_hb(hbnum*hb,hbinfox);/*添加数据*/voiddisplay_hb(hbnumhb);/*输出航班信息表*/voiddisplay_xs(hbnumhb);/*输出航班销售信息表*/hbinfosearch_hb(hbnumhb,intid);//根据id查找航班的售票情况hbnumupdate_hb(hbnumhb,hbinfox);//根据id修改航班信息voiddele_hb(hbnum*hb,intid);//删除航班信息voidInsertSort_hb(hbnum*r);//排序voidsave_hb(hbnum*hb);//将数据保存到文件中//航线voidinit_hx(hxnum*hx);//初始化列表voidcreate_hx(hxnum*hx);//从文件中加载数据voidappend_hx(hxnum*hx,hxinfox);/*添加数据*/voiddisplay_hx(hxnumhx);/*输出航班信息表*/hxinfosearch_hx(hxnumhx,intid);//根据id查找航班的售票情况hxnumupdate_hx(hxnumhb,hxinfox);//根据id修改航线信息voiddele_hx(hxnum*hx,intid);//删除航班信息voidInsertSort_hx(hxnum*r);//排序voidsave_hx(hxnum*hx);//将数据保存到文件中//售票voidinit_sp(spnum*sp);//初始化列表voidcreate_sp(spnum*sp);//从文件中加载数据voidappend_sp(spnum*sp,spinfox);/*添加数据*/voiddisplay_sp(spnumsp);/*输出航班信息表*/spinfosearch_sp(spnumsp,intid);//根据id查找航班的售票情况voidsearch_mx(spnumsp,intid);intsearch_tj(spnumsp,intid);voiddele_sp(spnum*sp,intid);//删除航班信息voidInsertSort_sp(spnum*r);//排序voidsave_sp(spnum*sp);//将数据保存到文件中/*主函数*/main(){hbnumhb;hxnumhx;spnumsp;init_hb(&hb);//初始化航班表create_hb(&hb);//创建航班表init_hx(&hx);//初始航线表create_hx(&hx);//创建航线表init_sp(&sp);//初始化售票表create_sp(&sp);//创建售票表InsertSort_hb(&hb);//对航班表排序InsertSort_hx(&hx);//对航线表排序InsertSort_sp(&sp);//对售票表排序menu();save_hb(&hb);save_hx(&hx);save_sp(&sp);}/****************************************************//*函数定义函数名称:menu功能描述:实现主菜单功能的循环选择。*/voidmenu(){intj;hbnumhb;hxnumhx;spnumsp;hbinfohb_up,hb_sea,hb_add;hxinfohx_up,hx_sea,hx_add;spinfosp_sea,sp_add;intid,total;printf(\n\n\n\n$---------------------------------$\n);printf(|**welcome**|\n);printf(^_^管理员能查看和查询的航空信息^_^\n);printf(\n\n输入航班信息:\n\n);printf(1添加新的航班\n);printf(2添加新的航线\n);printf(3修改航班信息\n);printf(4修改航线信息\n);printf(5根据航班编号删除航班\n);printf(6根据航班编号删除航班\n);printf(7显示指定航班的售票情况(明细)\n);printf(8显示指定航班的售票情况(统计值)\n);printf(9显示各航班的销售情况\n);printf(0返回菜单:);printf(请选择按键0-6:);scanf(%d,&j);if(j!=1&&j!=0&&j!=2&&j!=3&&j!=4&&j!=5&&j!=6&&j!=7&&j!=8&&j!=9){printf(您输入的选项不存在,请重新输入:);menu();}else{switch(j){case1:{printf(\nInputahxdentinformation:\n);scanf(%d%d%s%d%s%s,&hb_add.hbId,&hb_add.hxId,&hb_add.qifei,&hb_add.emptytotal,&hb_add.price,&hb_add.state);append_hb(&hb,hb_add);display_hb(hb);menu();break;}case2:{printf(\nInputahxdentinformation:\n);scanf(%d%s%s%s%s,&hx_add.hxId,&hx_add.qidian,&hx_add.zhongdian,&hx_add.gongli,&hx_add.flytime);append_hx(&hx,hx_add);display_hx(hx);menu();break;}case3:{printf(\nInputupdateid:\n);scanf(%d,&hb_up.hbId);printf(\nInputupdatehx,qifeishijian,kongpiao,price,state:\n);scanf(%d%s%d%s%s,&hb_up.hxId,&hb_up.qifei,&hb_up.emptytotal,&hb_up.price,&hb_up.state);hb=update_hb(hb,hb_up);display_hb(hb);/*输出学生信息表*/menu();break;}case4:{printf(\nInputupdateid:\n);scanf(%d,&hx_up.hxId);printf(\nInputupdatehx,qifeishijian,kongpiao,price,state:\n);scanf(%d%s%s,&hx_up.qidian,&hx_up.zhongdian,&hx_up.gongli,&hx_up.flytime);hx=update_hx(hx,hx_up);display_hx(hx);/*输出学生信息表*/menu();break;}case5:{printf(\nInputayouwangdeletehangbanid:);scanf(%d,&id);dele_hb(&hb,id);menu();break;}case6:{printf(\nInputayouwangdeletehangbanid:);scanf(%d,&id);dele_hb(&hb,id);menu();break;}case7:{printf(\nInputahangbanid:\n);scanf(%d,&id);search_mx(sp,id);menu();break;}case8:{printf(\nInputahangbanid:\n);scanf(%d,&id);total=search_tj(sp,id);printf(%d\n,total);menu();break;}case9:{display_xs(hb);menu();break;}case0:{menu();}}}}航班信息#includestdio.h#includestdlib.h#includestring.h#defineMAXhbsize100#defineNUMBER50typedefstruct{inthbId;inthxId;charqifei[NUMBER];intemptytotal;charprice[NUMBER];charstate[NUMBER];}hbinfo;typedefstruct{hbinfoa[MAXhbsize];inthbsize;}hbnum;/*置一个空表*/voidinit_hb(hbnum*hb){hb-hbsize=0;}/*创建航班表并从文件读取*/voidcreate_hb(hbnum*hb){FILE*fp;inti=0;if((fp=fopen(hangban.txt,r))==NULL){printf(canhIdtopenfile!);exit(-1);}while(!feof(fp)){fscanf(fp,%d%d%s%d%s%s,&hb-a[i].hbId,&hb-a[i].hxId,&hb-a[i].qifei,&hb-a[i].emptytotal,&hb-a[i].price,&hb-a[i].state);i++;hb-hbsize++;}fclose(fp);}/*追加航班信息*/voidappend_hb(hbnum*hb,hbinfox){if(hb-hbsize==MAXhbsize){printf(Thesequenceisfull!);exit(1);}else{hb-a[hb-hbsize]=x;hb-hbsize++;}}/*输出航班信息表*/voiddisplay_hb(hbnumhb){inti;if(!hb.hbsize){printf(\nemptytable);}else{for(i=0;ihb.hbsize;i++){printf(%d,%d,%s,%d,%s,%s\n,hb.a[i].hbId,hb.a[i].hxId
本文标题:《面向过程程序设计实践》课题
链接地址:https://www.777doc.com/doc-5032459 .html