车票管理系统毕业课程设计报告 下载本文

}

}

}

{ }

throw string(\数据输入错误\

if( !find(&p,num,\

cout<<\找不到你要定票的车辆的内容!\return;

p=p->next;

if(!(p->GetTime())) { }

cout<<\输入要定的票数 \int n;cin>>n; if(!cin)

throw string(\数据输入错误\p->Order_tickt(n);

if((p->Get_tickted()+n)<=p->Get_all_tickted()) else cout<<\对不起,没有足够的票数。\

cout<<\你要订票的车辆已出发!\return;

判断要定票的车辆是否已经

出发,若已经出发则不允许定票

else if(X=='n'||X=='N') cout<<\谢谢使用\else cout<<\输入字符不确定\Bus_link::setkey(1);

else

cout<<\对不起,订购车票请在管理员处购买\

(8)车票的退定

按提示输入要退票的班次,定义一个指向链表第一个节点的指针p。如果指针创建成功,开始用while和if语句实现p指向的节点的班次与存在的班次比较。如果相同,判断是否出发,若已出发则输出信息提示不能退票,若没有出发,则输出车票信息。提示输入需要退票的数量;如果没有相同,提示没有所查询的车票。

void Bus_link::Unorder() {

if(password==1) {

17 }

}

Bus_infor *p;

cout<<\确定退票(yn)?\char X;cin>>X; if(X=='y'||X=='Y'){ }

else if(X=='n'||X=='N') cout<<\谢谢使用\else cout<<\输入字符不确定\Bus_link::setkey(1);

int num;

cout<<\输入班次号: \cin>>num; if(!cin) { }

if((p->GetTime())) { }

cout<<\输入要退的票数 \int n;cin>>n; if(!cin)

throw string(\数据输入错误\p=p->next;

if((p->Get_tickted()-n)>=0)

p->Unorder_tickt(n);

else cout<<\对不起,数据出错!。\

cout<<\你要退票的车辆已出发!\return;

判断要定票的车辆

cout<<\找不到你要退票的车辆的内容!\return;

throw string(\数据输入错误\if( !find(&p,num,\

是否已经出发,若已经出发则不允许定票

else

cout<<\对不起,退还车票请在管理员处退还\

(9)保存车票信息

18 将车票信息输出到文件保存。 void Bus_link::save() { }

if(password==1) {

Bus_infor *p;

p=\\t\\t对不起,游客无法保存车票信息\

三、 用户手册

输入的格式要求均有提示,而且输入错误的话会提示并要求重新输入,基本不需要说明。

四、 调试及测试

程序调试是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。编完计算机程序,必须送入计算机中测试。 原程序:

void Bus_link::Order() {

if(password==1) {

Bus_infor *p;

cout<<\确定购票(yn)?\ char X;cin>>X;

if(X=='y'||X=='Y'){ int num;

cout<<\输入班次号: \ cin>>num; if(!cin)

throw string(\数据输入错误\ if( !find(&p,num,\ {

cout<<\找不到你要定票的车辆的内容!\ return; }

p=p->next;

19 if((p->GetTime())) 判断要定票的车辆是否已经出发,若已经出发则不允许定票 {

cout<<\你要订票的车辆已出发!\ return; }

cout<<\输入要定的票数 \ int n;cin>>n; if(!cin)

throw string(\数据输入错误\

if((p->Get_tickted()+n)<=p->Get_all_tickted()) p->Order_tickt(n);

else cout<<\对不起,没有足够的票数。\ }

else if(X=='n'||X=='N') cout<<\谢谢使用\ else cout<<\输入字符不确定\ Bus_link::setkey(1); } else

cout<<\对不起,订购车票请在管理员处购买\}

编译成功后开始运行,信息输出后,不能在程序中正确定购,经Debug调试,发现,if((p->GetTime()))中加一个!即可。 void Bus_link::Order() {

if(password==1) {

Bus_infor *p;

cout<<\确定购票(yn)?\ char X;cin>>X;

if(X=='y'||X=='Y'){ int num;

cout<<\输入班次号: \ cin>>num; if(!cin)

throw string(\数据输入错误\ if( !find(&p,num,\ {

20