ImageVerifierCode 换一换
格式:DOCX , 页数:48 ,大小:206.73KB ,
资源ID:18123762      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18123762.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(车票管理系统课程设计报告Word文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

车票管理系统课程设计报告Word文档格式.docx

1、二、 系统的设计与实现根据第一章的需求分析,接下来给出的是系统的设计和实现。1、 类的设计根据上述需求分析,有车票信息类和链表类。(1) 车票信息类系统研究车票系统Bus_infor类中成员:Bus_order是班次编号,start20是车票信息的起点站,end20是车票信息的终点站,all_tickted是总共要发售的票数,tickted是已经被订购的票数,Hour_start,Minute_start是车票的发车时间,GoHour表示行车时间,构造函数Bus_infor(),析构函数Bus_infor(),录入函数input(),读取函数input(ifstream & is),输出函数o

2、utput(),写入函数output(ofstream & os),定票函数Order_tickt(int n),获取发车时间函数GetTime_start(),判断当前班次状况函数GetTime(),内联函数,返回额定载量Get_all_tickted() return all_tickted; ,返回已定票人数Get_tickted(),返回班次号Get_bus_order(),返回终点站的字符串Get_end()const。车票类的UML图如(图2)所示:class Bus_inforpublic:+ Bus_order:int/ 班次编号+ start20:char/起始站+ end2

3、0:char/终点站+ all_tickted:int/总共要发售的票数+tickted:int/已经被订购的票数+ Hour_start,Minute_start :int/发车时间+GoHour:float/行车时间+Bus_infor ()/构造函数初始化+Bus_infor()/析构函数+ input():void/录入函数+ input(ifstream & is):void/读取函数+output():void/输出函数+output(ofstream & os):void/写入函数+Order_tickt(int n):void/定票函数+ GetTime_start():voi

4、d/获取发车时间函数+ GetTime():bool/判断当前班次状况函数+ Get_all_tickted():int/内联函数,返回额定载量+ Get_tickted():int/返回已定票人数+ Get_bus_order():int/返回班次号+Get_end()const:string/返回终点站的字符串private:Bus_No; static intstart20; charend20;Bus_order; intall_tickted;tickted;Hour_start,Minute_start;GoHour; float图2 客房类的UML图(2)链表类在Bus_link

5、类中,有成员:构造函数Bus_link (),析构函数Bus_link(),录入车票信息的函数input(),修改车票信息的函数mend(),删除车票信息的函数del(),查找函数find(Bus_infor *p,int num,char *pn),查询车票信息found(),显示车票信息show(),定购车票信息Order(),退还车票信息Unorder(),保存车票信息save(),初始化车票信息begin(),清除函数clear(),关于车票信息about(),主菜单函数mainmenu(),设置系统修改标志void setkey(int k) key=k; ,返回系统修改标志int

6、getkey() return key;,头节点head,系统修改标志key,管理员登陆标志password。链表类的UML图如(图3)所示:class Bus_linkpublic:+ Bus_link ();+Bus_link(); + input():void + mend():+ del():+find(Bus_infor*p,intnum,char *pn):int + found():void;+ show():+ Order():+ Unorder():+ save():+ begin():+ clear():+ about():+ mainmenu():+ setkey(int

7、 k):+ getkey():int;Private:-*head: Bus_infor;- key:- password:2界面设计:分界面:车票信息的查询的设计提示进入查询界面,选择按班次查找或按终点站查询车票信息。车票信息的查询界面如图所示。车票信息的删除的设计在录入或修改错误的车票信息后,想删除错误的车票信息,按提示按提示输入班次号,程序会显示该班次的信息并提示用户是否确定删除,输入y则删除。删除车票的信息界面如图所示。修改车票信息的设计按提示进行车票信息的修改,本系统中只有管理员身份才可以修改车票,显示屏幕如图所示。订购车票信息的设计在管理员身份下按提示在剩余未出发的班次中,输出车票

8、的信息,以判断是否可以订票,已出发的和已定票人数已满的情况下是不能订票的。定购车票信息输出界面如图所示。退订车票信息的设计在管理员身份下按提示在剩余未出发的班次中,输出车票的信息,以判断是否可以退票,已出发的和没人定票的情况下是不能退票的。退定信息输出界面如图所示。介绍车票信息的设计在程序中输出使用说明。介绍信息界面如图所示。 3.关键程序代码的分析:(1)系统的登录在主函数中,先输出车票管理系统的欢迎界面。调用一个对象的mainmenu函数来输出主菜单,按照提示选择需要执行功能的序号,由switch判断和选择所需要执行的功能。选择1:执行车票信息的录入;选择2:执行车票信息的浏览;选择3:执

9、行查询车票信息;选择4:执行车票信息的删除;选择5:执行车票信息的修改;选择6:执行定购车票;选择7:执行退定车票;选择8:执行车票信息的保存;选择9:输出关于车票管理系统的信息;选择0:退出;主函数:int main() Bus_link pp; int k=1; char c; string s; pp.begin(); coutnn欢迎进入车票管理系统endlendl; /开机选择是否进入系统*endl 系统说明:*t本系统为课程设计作品,可以简易的进行车票管理,欢迎提出意见和建议! *endl *t合肥学院计算机科学与技术系11网工二班t *t作者:孙乐 tt学号:1104032043

10、 *ntt是否进入系统?nntt按Enter进入主菜单,按Esc键退出:; do /利用一个do-while循环来判断输入是否进入系统 c=getch(); if(c=27) exit(0); else if(c=13) break; else coutnntt按键错误!请重新输入: while(c!=13)|(c!=27); try while(k=1) system(cls); s=pp.mainmenu(); /调用主菜单函数 switch(s0) case 1:pp.input(); break; /录入车票信息2pp.show(); /浏览车票信息3pp.found(); /查询车票

11、信息4pp.del(); /删除车票信息5pp.mend(); /修改车票信息6pp.Order(); /保存车票信息7pp.Unorder(); /退还车票信息8pp.save();9pp.about();break; /关于车票系统0 coutntt是否退出系统?nntt按Enter返回主菜单,按Esc键退出: do /利用一个do-while循环来判断输入是否退出系统 c=getch(); if(c=27) k=0; break; else if(c=13) k=1; else coutk; if(!cin) throw string(数据输入错误 do /利用一个do-while循环来

12、判断输入是否退出系统 if(k=0) if(pp.getkey()=1) cout if(! throw string( if(k=1) pp.save(); pp.clear(); k=0; catch(string s) coutsnum; is.seekg(t); /移动到原来位置 if(numinput(is); /输入is对象内容 p-next=p2;next=NULL; p=p-next;(2)信息的添加车票信息的录入,创建Bus_infor类和Bus_link对象,调用构造函数,输入车票的班次、额定座位数、始发时间、行车时间、起始站与终点站、,通过input函数实现。input(

13、) if(password=1) Bus_infor *p,*p2=NULL; p=head; int n=1; /int n; while(p-next) p=p- while(n) p2=new Bus_infor; p2-input(); p- Bus_link:setkey(1);ttt按1继续,按0返回: cinn; if(! throw string( elsentt对不起,游客不能录入车票信息void Bus_infor:GetTime_start()请输入始发时间(时分): cinHour_startMinute_start; if (cin.fail() /判断输入的数据类型

14、是否有错 cout n时间输入错误,请重新输入: cin.clear(); cin.get(); else if(Hour_start24|Minute_start60) n时间格式出错,请重新输入: /判断时间格式是否出错,小时不能小于大于24,分钟不能小于大于60 else input() /Bus_infor类中成员函数input的函数体ttt按提示输入:输入班次: while(1) if (cin.fail() /判断输入的数据类型是否有错n班次输入错误,请重新输入: /清除刚才输入的数据 /重新输入 else break;请输入车的额定座位数: if (cin.fail() /判断输

15、入的数据类型是否有错n座位数输入错误,请重新输入: GetTime_start();请输入行车时间:n行车时间输入错误,请重新输入:请输入起始站与终点站: cinstart;cinend;是否清空售票(y/n)? char a;a; if(a=y|a=Y) tickted=0;(3)信息的浏览浏览客房信息,如果之前有文件信息,则直接输出,如果没有则需录入后才能输出。所以,先得有一个读取函数begin,再有一个浏览函数show。show()客车基本信息如下:班次 发车时间 起点站 终点站 行车时间 额定载量 已定票人数 当前状况 Bus_infor *p; while(p- (p-next)-output();(4)信息的修改按提示输入要修改的班次,定义一个指向链表第一个节点的指针p。如果指针创建成功,开始用while和if语句实现p指向的节点的班次与存在的班次比较。如果相同,提示输入车票的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1