车站票务管理系统程序设计报告内容摘要:

dl。 cout ** 3. 票 务查询 ** endl。 cout ** 4. 显示时间表 ** endl。 cout ** 5. 售票退票 ** endl。 cout ** 6. 退出系统 ** endlendl。 cout ********************** endlendlendl。 cout请选择您要进行的业务 :endl。 while(1) { cinchoice。 if(()) //如果输入不匹配, fail()会返回真 { cinchoice。 cout非法 选择,请重新输入: endl。 ()。 //清除 fail状态 ()。 //清除缓冲区 continue。 } else break。 } switch(choice) { case 1: system(cls)。 coutendlendlendl。 ChangNo(p,number)。 break。 case 2: system(cls)。 coutendlendlendl。 ShowTrain(p,number)。 break。 case 3: system(cls)。 coutendlendlendl。 FindTrain(p,number,amp。 i,amp。 j)。 break。 case 4: system(cls)。 coutendlendlendl。 ShowTimeTrain(p,number)。 break。 case 5: system(cls)。 coutendlendlendl。 SellReturnTicket(p,number,i,j)。 break。 case 6: flag=0。 { system(cls)。 coutendlendlendl。 cout******************************************************************************endlendl。 cout 感谢您的使用,再见。 endlendl。 cout******************************************************************************endlendl。 } break。 default: cout输入错误,请重新输入 :endlendl。 } } return 0。 } //函数功能 :文件创建函数 void CreatFile(char *s) { ofstream outf(s)。 if(!outf) { coutCannot open the file\nendl。 return。 } outf车次发车时间起点站终点站行车时间额定载量余票数量 39。 \n39。 //向文件中输入表头 ()。 } //函数功能 :更新车次函数 void ChangNo(Ticket *p[],int *number) { int flag=1,choice。 //菜单控制 while(flag) { cout *******菜单选择 ******* endlendl。 cout ** 1. 新增车次信息 ** endl。 cout ** 2. 修改车次信息 ** endl。 cout ** 3. 退出更新系统 ** endl。 cout ** 4. 返回主菜单 ** endlendl。 cout ********************** endlendl。 cout请输入您的选择 :endl。 while(1) { cinchoice。 if(()) //如果输入不匹配, fail()会返回真 { cinchoice。 cout输入错误,请重新输入: endl。 ()。 //清除 fail状态 ()。 //清除缓冲区 continue。 } else { flag=0。 break。 } } switch(choice) { case 1: AddNo(p,number)。 break。 case 2: NewNo(p,number)。 break。 case 3: flag=0。 system(cls)。 coutendlendlendl。 break。 case 4: flag=0。 system(cls)。 coutendlendlendl。 break。 default: cout输入错误,请重新输入 :endlendl。 return。 } } } //函数功能 :增加车次 void AddNo(Ticket *p[],int *number) { int n,i,j。 cout输入此次增加车次的数量 :。 cinn。 //输入此次增加车次的数量 p[count]=(Ticket *)malloc(n*sizeof(Ticket))。 //为此次增加分配内存 if(p[count]==NULL) { coutNo enough memory!\n。 exit(0)。 } else number[count]=n。 //记录每个指针中元素的个数 for(i=1。 i=n。 i++) { cout输入第 i个车次 endl。 (p[count]+i1)SetTicket()。 //输入增加车次 coutendl。 } //显示此次的票务信息 cout******************************当前车票信息******************************|endl。 cout| 车次 |发车时间 | 起点站 | 终点站 |行车时间 |额定载量 |余票数量 |车票价格|endl。 cout|***********************************************************************|endl。 for(i=0。 i=count。 i++) { for(j=0。 jnumber[i]。 j++) { (p[i]+j)PrintTicket()。 coutendl。 } coutendl。 } count++。 //记录指针数组中元素的个数 } //函数功能 :修改车次 void NewNo(Ticket *p[],int *number) { int i,j,flag=1。 char No[20]。 cout请输入要修改的车号 :endl。 cinNo。 //输入需要修改的车次 for(i=0。 icountamp。 amp。 flag。 i++)//查找需要修改的车次 { for(j=0。 jnumber[i]。 j++) { if(strcmp((p[i]+j)GetNo(),No)==0) flag=0。 break。 } } if(flag==0) {i。 } coutPlease enter the new train:endl。 Ticket ticket。 ()。 //输入修改以后的车次 (p[i]+j)ChangTicket(ticket)。 //修改 //显示此次的票务信息 cout******************************当前车票信息******************************|endl。 cout| 车次 |发车时间 | 起点站 | 终点站 |行车时间 |额定载量 |余票数量 |车票价格|endl。 cout|***********************************************************************|endl。 for(i=0。 i=count。 i++) { for(j=0。 jnumber[i]。 j++) { (p[i]+j)PrintTicket()。 coutendl。 ofstream outf(车票信息 .txt,ios::app)。 //向文件中写入新内容 outf(p[i]+j)GetNo() (p[i]+j)GetTimeHou。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。