车站票务管理系统程序设计报告_第1页
车站票务管理系统程序设计报告_第2页
车站票务管理系统程序设计报告_第3页
车站票务管理系统程序设计报告_第4页
车站票务管理系统程序设计报告_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

-程序设计报告(2012/2013学年第一学期)题目:车站票务管理系统专业学生姓名班级学号指导教师指导单位计算机系统与网络教学中心日期2012.11.02评分细则评分项优秀良好中等差遵守机房规章制度上机时的表现学习态度程序准备情况程序设计能力团队合作精神课题功能实现情况算法设计合理性用户界面设计报告书写认真程度内容详实程度文字表达熟练程度回答问题准确度简短评语教师签名:年月日评分等级备注评分等级有五种:优秀、良好、中等、及格、不及格车站票务管理系统课题内容和要求【问题描述】一车站每天有n个发车班次,每个班次都有一班次号(1、2、3…n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量,票价,如:班次发车时间起点站终点站行车时间额定载量已定票人数余票票价18:00南京苏州245301510026:30南京扬州1.5404005637:00南京镇江140202032…该系统要求完成车票管理系统,能对车站的发车班次进行查询、实现买票、退票功能。通过此课题,熟练掌握数组、文件、结构体、指针的各种操作,以及一些算法思想的应用。【功能要求】用户需要输入口令进入车站票务管理系统;录入汽车班次信息(信息用文件保存),可不定时地增加班次数据;浏览班次信息,可显示出所有班次当前状态(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息);查询路线:可按班次号查询,可按终点站查询;售票和退票功能当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数。退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数;界面友好,输入信息符合逻辑如额定载量不为负数等。需求分析售票系统要求存储当天各个车次售票情况,所以程序需要定义结构体变量存储售票情况。系统的整体功能通过记录当天各个车次了解售票情况。编程时采取模块化设计思想,设计主函数,通过主函数中的switch分支选择调用各子函数以实现该系统的各种功能。然后设计相应的子函数来执行系统的各种功能,程序还具有退出功能,可以在程序的一次运行当中循环执行所有的功能,并根据需要终止程序的执行。经过对程序设计题目的分析可知,整个程序的设计实现大致分为五个模块,其中每一个模块对应一个函数,他们的功能分别是密码验证、班次的增加和修改、查询班次信息、卖票函数、退票函数。密码验证:要求验证密码正确时才能进入系统。班次的增加修改:要求能够申请空间增加班次并修改班次的信息。查询班次:要求能够通过班次,终点站,始发站等信息查询到班次的全部信息。买票:要求买票量不能超出余票量,同时车开出后不再售票。退票:要求退票量不能超出额定票量。增强了程序的实用性,使系统用户界面友好、功能明确、操作方便,应采取直接在界面上输出可供用户选择的菜单。据此应该能够很好的完成要求三、概要设计(1)类:#include<iostream.h>#include<fstream.h>#include<string.h>#include<time.h>classTicket{ charno[9];//车次 charname_b[10];//起点站 charname_a[10];//终点站 Timetime_o;//发车时间 inttime;//行车时间 intprice;//车票价格 intload;//额定数量 intremainder;//余票数量public:voidsell(fstream&f);//售票功能 voidback(fstream&f);//退票功能 voidsearchbynumber(fstream&f);//按车次查询 voidsearchbybeginplace(fstream&f);//按起点站查询 voidsearchbyendplace(fstream&f);//按终点站查询 voidinsert(fstream&f);//录入车次信息 voiddisp(fstream&f);//浏览班次 voidorder(fstream&f);//时间表排序 friendostream&operator<<(ostream&out,constTicket&t);//定义重载输出运算符的友元函数 boolfindno(charn[])//用于判断输入的字符串是否与查找区域中的某个字符串一致 { if(strcmp(no,n)==0) returntrue; else returnfalse;} boolfindname_b(charn[]){ if(strcmp(name_b,n)==0) returntrue; else returnfalse;} boolfindname_e(charn[]) { if(strcmp(name_e,n)==0) returntrue; else returnfalse;}};(2)主要函数流程图:浏览班次信息:显示所有的班次信息,并标记已发出的车次。按班次号查询路线:根据用户输入的班次号查找匹配项的班次信息。按起点站查询路线:根据用户输入的起点站查找匹配项的班次信息。按终点站查询路线:根据用户输入的终点站查找匹配项的班次信息。排列发车时间表:利用冒泡法按照发车时间的升序排列车次信息售票:用户输入指定的班次和售票数目进行售票退票:用户输入指定的班次和售票数目进行售票开始开始开始未找到该车次信息!是否找到?未找到该车次信息是否找到?余票数目是否为零输入班次号输入售票数目打开文件输入班次号此车已发出售票车是否已发出?票已售完输入退票数目打开文件开始未找到该车次信息!是否找到?未找到该车次信息是否找到?余票数目是否为零输入班次号输入售票数目打开文件输入班次号此车已发出售票车是否已发出?票已售完输入退票数目打开文件否是否是否是否是否是否是退票退票否否是是结束结束结束结束四、源程序代码#include<time.h>#include<iostream.h>#include<string.h>#include<fstream.h>#include<stdlib.h>#include<stdio.h>#include<conio.h>#include<iomanip.h>classTime;classTicket;voidCreatFile(char*);voidChangNo(Ticket*p[],int*number);voidAddNo(Ticket*p[],int*number);voidNewNo(Ticket*p[],int*number);voidShowTrain(Ticket*p[],int*number);intFindTrain(Ticket*p[],int*number,int*,int*);intFindNoTrain(Ticket*p[],int*,int*,int*);intFindaTrain(Ticket*p[],int*,int*,int*);voidShowTimeTrain(Ticket*p[],int*number);voidSellReturnTicket(Ticket*p[],int*number,inti,intj);voidSellTicket(Ticket*p[],int*number,inti,intj);voidReturnTicket(Ticket*p[],int*number,inti,intj);voidcheckpassword();//定义时间类classTime{private: inthour; intminute;public: Time(inth=0,intm=0) { hour=h; minute=m; } voidSetTime()//设置时间 { inti=0;cout<<"请输入发车时间(小时):"<<endl; cin>>hour; cout<<"请输入发车时间(分钟):"<<endl; cin>>minute; do{ if(i!=0) { cout<<"输入错误,请重新输入!"<<endl; cout<<"请输入发车时间(小时):"<<endl; cin>>hour; cout<<"请输入发车时间(分钟):"<<endl; cin>>minute; } i++; }while(hour>24||hour<0||minute>60||minute<0);//判断时间是否符合逻辑 } voidPrintTime()//显示时间 { if(minute==0) { cout<<setw(8)<<hour<<":"<<"00"; } else cout<<setw(8)<<hour<<":"<<setw(2)<<minute; } intGetHour()//获得时 { returnhour; } intGetMinute()//获得分钟 { returnminute; } voidChangTime(inth,intm)//修改时间 { hour=h; minute=m; }};//定义车次类classTicket{private: charno[9];//车次 charname_b[10];//起点站 charname_a[10];//终点站 Timetime_o;//发车时间 intload;//额定载量 intreminder;//余票数量 inttime;//行车时间 intprice;//车票价格public: Ticket(char*No,inth,intm,char*Name_b,char*Name_a,intt,intLoad,intReminder,intPrice):time_o(h,m) { strcpy(no,No); strcpy(name_b,Name_b); strcpy(name_a,Name_a); time=t; load=Load; reminder=Reminder; price=Price; } Ticket() {} voidSetTicket()//设置票务 { cout<<"请输入车次:"<<endl; cin>>no; time_o.SetTime(); cout<<"请输入起点站:"<<endl; cin>>name_b; cout<<"请输入终点站:"<<endl; cin>>name_a; cout<<"请输入行车时间:"<<endl; { cin>>time; inti=0; do{ if(i!=0) { cout<<"行车时间必须为正数!请重新输入行车时间:"<<endl; cin>>time; } i++; }while(time<0);//行车时间必须为正数 } cout<<"请输入额定售票量:"<<endl; { cin>>load; inti=0; do{ if(i!=0) { cout<<"额定售票必须为正数!请重新输入额定售票:"<<endl; cin>>load; } i++; }while(load<=0);//额定售票必须为正数 } cout<<"请输入余票数量:"<<endl; { cin>>reminder; inti=0; do{ if(i!=0) { if(reminder>0) { cout<<"余票数量必须少于载定数量!请重新输入余票数量:"<<endl; cout<<"目前载定数量为:"<<load<<endl; cin>>reminder; } else { cout<<"余票数量必须为正数!请重新输入余票数量:"<<endl; cin>>reminder; } } i++; }while(reminder<0||reminder>load);//余票必须为正数并且余票不能大于载定数量 } cout<<"请输入车票价格:"<<endl; { cin>>price; inti=0; do{ if(i!=0) { cout<<"车票价格必须为正数!请重新输入车票价格:"<<endl; cin>>price; } i++; }while(price<=0);//车票价格必须为正数 } } voidChangTicket(Ticketticket)//修改车次信息 { strcpy(no,ticket.GetNo()); strcpy(name_b,ticket.GetName_b()); strcpy(name_a,ticket.GetName_a()); time=ticket.Gettime(); load=ticket.GetLoad(); reminder=ticket.GetReminder(); price=ticket.GetPrice(); time_o.ChangTime((ticket.time_o).GetHour(),(ticket.time_o).GetMinute()); } voidPrintTicket()//显示车次信息 { cout<<""<<setw(4)<<no; time_o.PrintTime(); cout<<setw(6)<<""<<name_b<<""<<setw(8)<<name_a<<""<<setw(8)<<time<<""<<setw(8)<<load<<""<<setw(8)<<reminder<<""<<setw(8)<<price<<""<<endl; cout<<"|********|********|********|********|********|********|********|********|"<<endl; } friendvoidAddReminder(Ticket&,intn);//定义添加余票数为类的友元函数 friendvoidMinReminder(Ticket&,intn);//定义减少余票数为类的友元函数 char*GetNo()//获得车次 { returnno; } char*GetName_b()//获得起始站 { returnname_b; } char*GetName_a()//获得终点站 { returnname_a; } intGettime()//获得时间 { returntime; } intGetLoad()//获得额定售票量 { returnload; } intGetReminder()//获得余票数 { returnreminder; } intGetTimeHour()//获得小时 { returntime_o.GetHour(); } intGetTimeMinute()//获得分钟数 { returntime_o.GetMinute(); } intGetPrice()//获得价格 { returnprice; }};voidMinReminder(Ticket&t,intn)//定义减少余票数{ t.reminder=t.reminder-n;}voidAddReminder(Ticket&t,intn)//定义添加余票数{ t.reminder=t.reminder+n;}intcount=0;//定义全局变量用来统计指针数组的长度intmain(){ cout<<endl<<endl; cout<<"******************************************"<<endl<<endl; cout<<"########请输入密码########"<<endl<<endl; cout<<"******************************************"<<endl<<endl; checkpassword(); //密码验证模块 CreatFile("车票信息.dat");//ofstreamoutf("车票信息.dat");//第一次以后使用 CreatFile("sort.dat");//ofstreamoutf("sort.dat");//第一次以后使用 intchoice; intflag=1; inti,j; intnumber[100];//用来存每个指针中元素的个数 Ticket*p[100];//定义指针数组 cout<<endl<<endl; cout<<"******************************************************************************"<<endl<<endl; cout<<"#################欢迎使用车站票务管理系统#####################"<<endl<<endl; cout<<"******************************************************************************"<<endl<<endl; cout<<endl; while(flag)//菜单控制 { cout<<"*******菜单选择*******"<<endl<<endl; cout<<"**1.修改车次信息**"<<endl; cout<<"**2.浏览车次信息**"<<endl; cout<<"**3.票务查询**"<<endl; cout<<"**4.显示时间表**"<<endl; cout<<"**5.售票退票**"<<endl; cout<<"**6.退出系统**"<<endl<<endl; cout<<"**********************"<<endl<<endl<<endl; cout<<"请选择您要进行的业务:"<<endl; while(1) { cin>>choice; if(cin.fail())//如果输入不匹配,fail()会返回真 { cin>>choice; cout<<"非法选择,请重新输入:"<<endl; cin.clear();//清除fail状态 cin.ignore();//清除缓冲区 continue; } else break; } switch(choice) { case1: system("cls"); cout<<endl<<endl<<endl; ChangNo(p,number); break; case2: system("cls"); cout<<endl<<endl<<endl; ShowTrain(p,number); break; case3: system("cls"); cout<<endl<<endl<<endl; FindTrain(p,number,&i,&j); break; case4: system("cls"); cout<<endl<<endl<<endl; ShowTimeTrain(p,number); break; case5: system("cls"); cout<<endl<<endl<<endl; SellReturnTicket(p,number,i,j); break; case6: flag=0; { system("cls"); cout<<endl<<endl<<endl; cout<<"******************************************************************************"<<endl<<endl; cout<<"###################感谢您的使用,再见!####################"<<endl<<endl; cout<<"******************************************************************************"<<endl<<endl; } break; default: cout<<"输入错误,请重新输入:"<<endl<<endl; } } return0;}//函数功能:文件创建函数voidCreatFile(char*s){ ofstreamoutf(s); if(!outf) {cout<<"Cannotopenthefile\n"<<endl; return; } outf<<"车次发车时间起点站终点站行车时间额定载量余票数量"<<'\n';//向文件中输入表头 outf.close();}//函数功能:更新车次函数voidChangNo(Ticket*p[],int*number){ intflag=1,choice;//菜单控制 while(flag) { cout<<"*******菜单选择*******"<<endl<<endl; cout<<"**1.新增车次信息**"<<endl; cout<<"**2.修改车次信息**"<<endl; cout<<"**3.退出更新系统**"<<endl; cout<<"**4.返回主菜单**"<<endl<<endl; cout<<"**********************"<<endl<<endl; cout<<"请输入您的选择:"<<endl; while(1) { cin>>choice; if(cin.fail())//如果输入不匹配,fail()会返回真 { cin>>choice; cout<<"输入错误,请重新输入:"<<endl; cin.clear();//清除fail状态 cin.ignore();//清除缓冲区 continue; } else { flag=0; break; } } switch(choice) { case1: AddNo(p,number); break; case2: NewNo(p,number); break; case3: flag=0; system("cls"); cout<<endl<<endl<<endl; break; case4: flag=0; system("cls"); cout<<endl<<endl<<endl; break; default: cout<<"输入错误,请重新输入:"<<endl<<endl; return; } }}//函数功能:增加车次voidAddNo(Ticket*p[],int*number){ intn,i,j; cout<<"输入此次增加车次的数量:"; cin>>n;//输入此次增加车次的数量 p[count]=(Ticket*)malloc(n*sizeof(Ticket));//为此次增加分配内存 if(p[count]==NULL) { cout<<"Noenoughmemory!\n"; exit(0); } else number[count]=n;//记录每个指针中元素的个数 for(i=1;i<=n;i++) { cout<<"输入第"<<i<<"个车次"<<endl; (p[count]+i-1)->SetTicket();//输入增加车次 cout<<endl; }//显示此次的票务信息 cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; for(i=0;i<=count;i++) { for(j=0;j<number[i];j++) { (p[i]+j)->PrintTicket(); cout<<endl; } cout<<endl; } count++;//记录指针数组中元素的个数}//函数功能:修改车次voidNewNo(Ticket*p[],int*number){ inti,j,flag=1; charNo[20]; cout<<"请输入要修改的车号:"<<endl; cin>>No;//输入需要修改的车次 for(i=0;i<count&&flag;i++)//查找需要修改的车次 { for(j=0;j<number[i];j++) { if(strcmp((p[i]+j)->GetNo(),No)==0) flag=0; break; } } if(flag==0) {i--;} cout<<"Pleaseenterthenewtrain:"<<endl; Ticketticket; ticket.SetTicket();//输入修改以后的车次 (p[i]+j)->ChangTicket(ticket);//修改 //显示此次的票务信息 cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; for(i=0;i<=count;i++) { for(j=0;j<number[i];j++) { (p[i]+j)->PrintTicket(); cout<<endl; ofstreamoutf("车票信息.txt",ios::app);//向文件中写入新内容 outf<<(p[i]+j)->GetNo()<<""<<(p[i]+j)->GetTimeHour()<<":"<<(p[i]+j)->GetTimeMinute()<<""<<(p[i]+j)->GetName_b()<<""<<(p[i]+j)->GetName_a()<<""<<(p[i]+j)->Gettime()<<""<<(p[i]+j)->GetLoad()<<""<<(p[i]+j)->GetReminder()<<'\n'; } }}//函数功能:显示票务信息voidShowTrain(Ticket*p[],int*number){ inti,j; structtm*local; longt; time(&t); local=localtime(&t); cout<<"|-------------------------------------此时时间"<<local->tm_hour<<":"<<local->tm_min <<"------------------------------------|"<<endl;//显示此时时间 //判断车是否开出cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; for(i=0;i<count;i++) { for(j=0;j<number[i];j++) { (p[i]+j)->PrintTicket(); cout<<endl; if((p[i]+j)->GetTimeHour()<local->tm_hour) cout<<"此车已发出"<<endl; elseif((p[i]+j)->GetTimeHour()==local->tm_hour) { if((p[i]+j)->GetTimeMinute()<local->tm_min) cout<<"此车已发出"<<endl; else cout<<"此车未发出"<<endl; } else cout<<"此车未发出"<<endl; } }}//函数功能:查询票务intFindTrain(Ticket*p[],int*number,int*i,int*j){ intflag=1,choice,f; while(flag)//显示菜单 { cout<<"*******菜单选择*******"<<endl<<endl; cout<<"**1.按班次查询**"<<endl; cout<<"**2.按终点站查询**"<<endl; cout<<"**3.退出查询系统**"<<endl; cout<<"**4.返回主菜单**"<<endl<<endl; cout<<"**********************"<<endl<<endl<<endl; cout<<"请输入您的选择:"<<endl; while(1) { cin>>choice; if(cin.fail())//如果输入不匹配,fail()会返回真 { cin>>choice; cout<<"输入错误,请重新输入:"<<endl; cin.clear();//清除fail状态 cin.ignore();//清除缓冲区 continue; } else break; } switch(choice) { case1: f=FindNoTrain(p,number,i,j); break; case2: f=FindaTrain(p,number,i,j); break; case3: flag=0; system("cls"); cout<<endl<<endl<<endl; returnf; break; case4: flag=0; system("cls"); cout<<endl<<endl<<endl; break; default: cout<<"请输入正确的数字!"<<endl; } } returnf;}//函数功能:按车次查询intFindNoTrain(Ticket*p[],int*number,int*i,int*j){ intflag=1; charNo[20]; cout<<"请输入需要查询的车次:"<<endl; cin>>No;//输入需要查询的车次 //车次查询,并显示查询结果 for((*i)=0;(*i)<count&&flag;(*i)++) { for((*j)=0;(*j)<number[(*i)];(*j)++) { if(strcmp((p[(*i)]+(*j))->GetNo(),No)==0) {cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; (p[(*i)]+(*j))->PrintTicket(); cout<<endl; flag=0; break; } } } if(flag==0) {} else { system("cls"); cout<<endl<<endl<<endl; cout<<"没有找到该车次!\n"; } returnflag;}//函数功能:按终点站查询intFindaTrain(Ticket*p[],int*number,int*i,int*j){ intflag=1; charName_a[20]; cout<<"请输入您要查询的终点站:"<<endl; cin>>Name_a;//输入需要查询的终点站 //查询并显示查询结果 for((*i)=0;(*i)<count&&flag;(*i)++) { for((*j)=0;(*j)<number[(*i)];(*j)++) { if(strcmp((p[(*i)]+(*j))->GetName_a(),Name_a)==0) { cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; (p[(*i)]+(*j))->PrintTicket(); cout<<endl; flag=0; break; } } } if(flag==0) {} else cout<<"没有找到该车次!\n"; returnflag;}//函数功能:显示时间表voidShowTimeTrain(Ticket*p[],int*number){ inti,j,k; intcow=0,total=0; Tickettemp; for(i=0;i<count;i++)//统计总共对象 { total=total+number[i]; } //创建一个新的对象数组并把原有车次信息存入该数组中 Ticket*q=(Ticket*)malloc(total*sizeof(Ticket)); for(i=0;i<count;i++) { for(j=0;j<number[i];j++) { q[cow]=*(p[i]+j); cow++; } } //按时间进行排序 for(i=0;i<total-1;i++) { k=i; for(j=i+1;j<total;j++) { if(q[j].GetTimeHour()<q[i].GetTimeHour()) k=j; elseif(q[j].GetTimeHour()==q[i].GetTimeHour()) if(q[j].GetTimeMinute()<q[i].GetTimeMinute()) k=j; } if(k!=i) { temp=q[k]; q[k]=q[i]; q[i]=temp; } } //显示排序后的结果 cout<<"******************************当前车票信息******************************|"<<endl; cout<<"|车次|发车时间|起点站|终点站|行车时间|额定载量|余票数量|车票价格|"<<endl; cout<<"|***********************************************************************|"<<endl; for(i=0;i<total;i++) { q[i].PrintTicket(); cout<<endl; ofstreamoutf("sort.date",ios::app); outf<<(q+i)->GetNo()<<""<<(q+i)->GetTimeHour()<<":"<<(q+i)->GetTimeMinute()<<""<<(q+i)->GetName_b()<<""<<(q+i)->GetName_a()<<""<<(q+i)->Gettime()<<""<<(q+i)->GetLoad()<<""<<(q+i)->GetReminder()<<'\n'; }}//函数功能:售票,退票voidSellReturnTicket(Ticket*p[],int*number,inti,intj)voidSellReturnTicket(Ticket*p[],int*number,inti,intj){ intflag=1,choice; while(flag)//菜单显示 { cout<<"*******菜单选择*******"<<endl<<endl; cout<<"**1.售票 **"<<endl; cout<<"**2.退票**"<<endl; cout<<"**3.退出售票系统**"<<endl; cout<<"**4.返回主菜单**"<<endl<<endl; cout<<"**********************"<<endl<<endl<<endl; cout<<"请输入您的选择:"<<endl; while(1) { cin>>choice; if(cin.fail())//如果输入不匹配,fail()会返回真 { cin>>choice; cout<<"输入错误,请重新输入::"<<endl; cin.clear();//清除fail状态 cin.ignore();//清除缓冲区 continue; } else break; } switch(choice) { case1: system("cls"); cout<<endl<<endl<<endl; SellTicket(p,number,i,j); break; case2: system("cls"); cout<<endl<<endl<<endl; ReturnTicket(p,number,i,j); break; case3: system("cls"); cout<<endl<<endl<<endl; cout<<endl<<endl<<endl; break; case4: flag=0; system("cls"); cout<<endl<<endl<<endl; break; default: cout<<"请输入正确的数字!"<<endl; } }}//函数功能:售票voidSellTicket(Ticket*p[],int*number,inti,intj){ intn,f; f=FindTrain(p,number,&i,&j);//寻找所要购买的车次信息 //若存在,输入购买数并进行判断、售票 if(f==0) { cout<<"请输入您想购买的车票张数:"<<endl; cin>>n; inti=0; do{ if(i!=0) { cout<<"车票数必须为正数,请重新输入:"<<endl; cin>>n; } i++; }while(n<=0); if(n>(p[i-1]+j)->GetReminder()) cout<<"没有余票,请查询其他车次!"<<endl; else { cout<<"购票成功"<<endl; MinReminder((*(p[i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论