欢迎来到天天文库
浏览记录
ID:11390881
大小:159.00 KB
页数:24页
时间:2018-07-11
《c语言航班售票系统课程设计报告----航班售票系统》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、计算机科学与技术系课程设计报告2008~2009学年第二期课程程序设计语言Ⅱ课程设计课程设计名称航班售票系统一、课程设计题目课程设计名称:航班售票系统设计内容:设计一个航班售票系统系统,能够对航空公司的售票进行管理。航空公司的售票系统主要包括:航线信息、订票业务、退票业务。任务和要求1.航线信息:每条航线包括航班号,飞机号,目的地,订票数,余票数,共5项。现有3条航线:目的地北京,上海,广州。飞机可乘100人(初始定票数为0,余票数为100)。将这些信息存入文件airline.dat中。2.订票业务:(1).客户信息包括姓名,航班号,座
2、位号(初始为0),假设已有3个客户信息存入文件customer.dat。(2).有新客户订票时,先输入姓名和航班号,查询情况,如果还有余票,就为这个客户办理订票手续,分给客户一个座位号,然后写入文件costomer.dat,并修改文件,若无余票,则输出客户已满3.退票业务:根据客户提出的航班号,办理退票,从airline.dat文件中删除这个客户的信息,并修改airline.dat中相应的航线的订票数和余票数输出全部航线的信息和全部客户信息,退出系统。二、问题的分析首先这是一个管理系统,有两个大类乘客和飞机,所以要定义2个类,又因为需要
3、进行文件的操作,那么可以再定义2个类,乘客信息类,飞机信息类用于储存多个信息。界面操作当然需要用switch语句实现,case时调用到函数。三、算法的设计我设计的这个航空管理系统运用到了条件判断,switch语句,循环语句,类与对象,对象数组,对象指针,类与类的嵌套,文件的写入写出等知识点。整体的构思:设计了四个类飞机信息库类,乘客类,乘客信息库类。飞机类包含了飞机的一些基本属性,有航班号,飞机号,目的地,余票数,已定票数等信息classFlight//飞机类{private:intnote;//删除标记1:已删,0:未删intflig
4、htnum;//航班号intplanenum;//飞机号chardestination[20];//目的地intbookednum;//已定票数intrefundnum;//余票public:Flight():bookednum(0),refundnum(100){}char*getdes(){returndestination;}intgetnote(){returnnote;}intgetflightnum(){returnflightnum;}intgetplanenum(){returnplanenum;}voidsetrefu
5、nd()//订票后对余票和已定票数的操作{bookednum++;refundnum--;}voiddelrefund()//退票后对余票和已定票数的操作{bookednum--;refundnum++;}voidsetname(charde[]){strcpy(destination,de);}voiddelplane()//删除飞机的操作{note=1;}voidaddplane(intn,intm,char*de)//增加飞机{note=0;flightnum=m;planenum=n;strcpy(destination,de)
6、;}voidlist(){cout<<"飞机号"<<""<<"航班号"<<""<<"目的地"<<""<<"已定票数"<<""<<"剩余票数"<7、对单个或多个飞机对象属性的一些操作,飞机信息库类中还包括界面操作选择的程序,其中还有信息的写入文件,读取文件中的数据的功能classFDatabase//飞机信息库类{private:inttop;//记录数组下标FlightFl[Maxp];//飞机类的对象数组public:FDatabase(){Flightf;top=-1;fstreamfile("airline.dat",ios::in);//文件打开while(1){file.read((char*)&f,sizeof(f));if(!file)break;top++;Fl[8、top]=f;}file.close();}voidclear()//清楚所有航班的操作{top=-1;cout<<"航班信息已删除!"<
7、对单个或多个飞机对象属性的一些操作,飞机信息库类中还包括界面操作选择的程序,其中还有信息的写入文件,读取文件中的数据的功能classFDatabase//飞机信息库类{private:inttop;//记录数组下标FlightFl[Maxp];//飞机类的对象数组public:FDatabase(){Flightf;top=-1;fstreamfile("airline.dat",ios::in);//文件打开while(1){file.read((char*)&f,sizeof(f));if(!file)break;top++;Fl[
8、top]=f;}file.close();}voidclear()//清楚所有航班的操作{top=-1;cout<<"航班信息已删除!"<
此文档下载收益归作者所有