C++車票管理系統(tǒng)_第1頁(yè)
C++車票管理系統(tǒng)_第2頁(yè)
C++車票管理系統(tǒng)_第3頁(yè)
C++車票管理系統(tǒng)_第4頁(yè)
C++車票管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩17頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上注:這個(gè)是我同學(xué)的C+課程設(shè)計(jì),車票管理系統(tǒng)。存儲(chǔ)為文件操作,滿足于大學(xué)課程設(shè)計(jì)#include<iostream>#include<fstream>#include<string>#include<windows.h>#include <ctime>#include <iomanip>using namespace std;class timeprotected:int hour;int minute;public:time()hour=0;minute=0;void sethour(int b

2、6)hour=b6;void setminute(int b7)minute=b7;int gethour()return hour;int getmin()return minute;class train:public timestring num;string starshop;string comshop;string time2;int stanum;int peponum;public:train():time() num="無"starshop="無"comshop="無"time2="無" stan

3、um=0;peponum=0;void settrain(string a,int b,int h,string c,string d,string e,int f) num=a; hour=b;minute=h; starshop=c; comshop=d; time2=e; stanum=f;peponum=0;string getnum()return num;string getstarshop()return starshop;string getcomshop()return comshop;string gettime2()return time2;int getstanum()

4、return stanum;int getpeponum()return peponum;void setpeponum(int a)peponum+=a;void setpeponum1(int a)peponum-=a;void setnum(string b1)num=b1;void setstarshop(string b2)starshop=b2;void setcomshop(string b3)comshop=b3;void settime2(string b4)time2=b4;void setstanum(int b5)stanum=b5;void write(ofstrea

5、m& out)out<<num<<" "out<<hour<<" "out<<minute<<" "out<<starshop<<" "out<<comshop<<" "out<<time2<<" "out<<stanum<<" "out<<peponum<<

6、" "out<<endl;return;void read(ifstream& in)in>>num;in>>hour;in>>minute;in>>starshop; in>>comshop; in>>time2; in>>stanum;in>>peponum;return;void print() for(int i=0;i<80;i+)cout<<"="cout<<"班次:"<&

7、lt;num<<" "cout<<"發(fā)車時(shí)間:"<<hour<<":"<<minute<<" "cout<<"出發(fā)站:"<<starshop<<" "<<"終點(diǎn)站:"<<comshop<<" "cout<<"行車時(shí)間:"<<time2<<&

8、quot;"<<endl;for(i=0;i<80;i+)cout<<"-"cout<<"額定載量:"<<stanum<<" "cout<<"已定票人數(shù):"<<peponum<<" "class functionprivate:static int m;public:int input();int addinput();int look1();void setop1(int);int

9、cccx();int zdzcx();int buy1();int buy2();void sonbuy(train& p,int b1);int back();int save(train*);void ZT(train& p,int);int getm()return m;void read1(ifstream& in)in>>m;int function:m=0;void function:setop1(int a)m+=a;int function:input()train *op1;int n1,ho,i,mi;cout<<"

10、請(qǐng)輸入要錄入的班次數(shù)目:"cin>>m; string a,c,d,e;op1=new trainm;for(i=0;i<m;i+)cout<<"請(qǐng)輸入班次:"cin>>a;cout<<"請(qǐng)輸入出發(fā)時(shí)間:"<<endl;cout<<"輸入時(shí):"for(;)cin>>ho;if(ho<24&&ho>=0)break;else cout<<"輸入錯(cuò)誤,請(qǐng)重輸入"<<en

11、dl<<"輸入時(shí):"cout<<"輸入分:"for(;)cin>>mi;if(mi<60&&mi>=0)break;else cout<<"輸入錯(cuò)誤,請(qǐng)重輸入"<<endl<<"輸入分:"cout<<"請(qǐng)輸入起始站:"cin>>c;cout<<"請(qǐng)輸入終點(diǎn)站:"cin>>d;cout<<"請(qǐng)輸入行車時(shí)間:(例

12、:12小時(shí)23分)"cin>>e;cout<<"請(qǐng)輸入額定載量:"cin>>n1;op1i.settrain(a,ho,mi,c,d,e,n1);op1i.setpeponum(0); ofstream f1("g:c文件班次信息單.txt",ios:out);if(!f1)cout<<"文件打開失敗。"exit(1);for(i=0;i<m;i+) op1i.write(f1);f1.close();ofstream f2("g:c文件班次總數(shù).txt&quo

13、t;,ios:out); if(!f2)cout<<"文件打開失敗。"exit(1);f2<<m;f2.close();delete op1;return 0;int function:addinput()train *op1;int n,n1,ho,mi,i;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<<"系統(tǒng)無儲(chǔ)存信息,進(jìn)入新錄入選項(xiàng)。"<<endl;system("pause"); elseread1(f1)

14、;f1.close();cout<<"請(qǐng)輸入要錄入的班次數(shù)目:"cin>>n; setop1(n);string a,c,d,e;op1=new trainn;for(i=0;i<n;i+)cout<<"請(qǐng)輸入班次:"cin>>a;cout<<"請(qǐng)輸入出發(fā)時(shí)間:"<<endl; cout<<"輸入時(shí):"for(;)cin>>ho;if(ho<24&&ho>=0)break;else co

15、ut<<"輸入錯(cuò)誤,請(qǐng)重輸入"<<endl<<"輸入時(shí):"cout<<"輸入分:"for(;)cin>>mi;if(mi<60&&mi>=0)break;else cout<<"輸入錯(cuò)誤,請(qǐng)重輸入"<<endl<<"輸入分:"cout<<"請(qǐng)輸入起始站:"cin>>c;cout<<"請(qǐng)輸入終點(diǎn)站:"

16、cin>>d;cout<<"請(qǐng)輸入行車時(shí)間:(例:12小時(shí)23分)"cin>>e;cout<<"請(qǐng)輸入額定載量:"cin>>n1;op1i.settrain(a,ho,mi,c,d,e,n1);op1i.setpeponum(0); ofstream f2; f2.open("g:c文件班次信息單.txt",ios:app); if(!f2)cout<<"文件打開失敗。"exit(1); for(i=0;i<n;i+)op1i.write

17、(f2);f2.close(); ofstream f3("g:c文件班次總數(shù).txt",ios:out); if(!f3)cout<<"文件打開失敗。"exit(1);f3<<m;f3.close();delete op1; return 0;int function:look1()time_t t = time(NULL); tm* pt = localtime(&t);train *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<&l

18、t;"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt",ios:in);if(!f2)cout<<"文件打開失敗。"exit(1);for(int i=0;i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close();int b;b=pt->tm_hour*60+pt->tm_min;for(i=0;i<m;i+)ZT(op1i,b);dele

19、te op1;return 0;void function:ZT(train& p,int b1)int a;a=p.gethour()*60+p.getmin();if(a<=b1)p.print();cout<<"已發(fā)車 "<<endl;for(int i=0;i<80;i+)cout<<"="cout<<endl;elseif(b1<=(a-30)p.print();cout<<"未發(fā)車 "<<endl;for(int i=0;i&

20、lt;80;i+)cout<<"="cout<<endl;elsep.print();cout<<"正在檢票 "<<endl;for(int i=0;i<80;i+)cout<<"="cout<<endl;int function:cccx()time_t t = time(NULL); tm* pt = localtime(&t); train *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in);

21、if(!f1)cout<<"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt",ios:in);if(!f2)cout<<"文件打開失敗。"exit(1);for(int i=0;i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close(); string name;cout<<"請(qǐng)輸入要查詢的車次:"cin>&g

22、t;name;int b;b=pt->tm_hour*60+pt->tm_min;for(i=0;i<m;i+)if(op1i.getnum()=name)ZT(op1i,b);break;if(i>=m)cout<<"所查詢車次不存在!"<<endl; cout<<"檢索完畢."<<endl; delete op1;return 0;int function:zdzcx()time_t t = time(NULL); tm* pt = localtime(&t);train

23、 *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<<"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt",ios:in);if(!f2)cout<<"文件打開失敗。"exit(1);for(int i=0;i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close(); st

24、ring name;cout<<"請(qǐng)輸入所查詢的終點(diǎn)站:"cin>>name;int b,sum=0;b=pt->tm_hour*60+pt->tm_min; for(i=0;i<m;i+)if(op1i.getcomshop()=name)ZT(op1i,b);sum+;if(i>=m)cout<<"已檢索到"<<sum<<"個(gè)結(jié)果" cout<<"n檢索完畢."<<endl;delete op1;retu

25、rn 0;int function:buy1()time_t t = time(NULL); tm* pt = localtime(&t);train *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<<"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt",ios:in);if(!f2)cout<<"文件打開失敗。"e

26、xit(1);for(int i=0;i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close();string name;cout<<"請(qǐng)輸入車次:"cin>>name;int b;b=pt->tm_hour*60+pt->tm_min; jj:for(i=0;i<m;i+) if(op1i.getnum()=name) sonbuy(op1i,b);break; if(i>=m)int a1; cout<<"所輸入的車次不存在。"<&

27、lt;endl;cout<<"請(qǐng)選擇:1.重新輸入 2.返回"cin>>a1;if(a1=1) cout<<"請(qǐng)重新輸入車次:"cin>>name; goto jj;save(op1);delete op1;return 0;void function:sonbuy(train& p,int b1)int a;a=p.gethour()*60+p.getmin();if(b1>a-30)cout<<" 已停止售票。"<<endl; elseif(p.

28、getpeponum()>=p.getstanum()cout<<" 票已售完"<<endl;elseint k,a1,a2;a2=p.getstanum()-p.getpeponum();cout<<"有票,確定購(gòu)買(所剩票數(shù):"<<a2<<")(1.是,2.否)"<<endl;cout<<"請(qǐng)選擇:"cin>>k;switch(k)case 1:for(;) cout<<"請(qǐng)輸入所購(gòu)票數(shù):

29、"cin>>a1; if(a1>a2) cout<<"輸入錯(cuò)誤,超余額上限"<<endl; else p.setpeponum(a1); cout<<"購(gòu)票完成。"<<endl; break; ;break;default:break;int function:save(train* p)ofstream f1("g:c文件班次信息單.txt",ios:out);if(!f1)cout<<"文件打開失敗。"exit(1);for

30、(int i=0;i<m;i+) pi.write(f1);f1.close();return 0;int function:buy2()time_t t = time(NULL); tm* pt = localtime(&t);train *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<<"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt"

31、,ios:in);if(!f2)cout<<"文件打開失敗。"exit(1);for(int i=0;i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close();string name1,name2;cout<<"請(qǐng)輸入:"<<endl;cout<<"起始地:"cin>>name1;cout<<"終止地:"cin>>name2;int b,sum=0;b=pt->tm_ho

32、ur*60+pt->tm_min;for(i=0;i<m;i+)if(op1i.getstarshop()=name1)if(op1i.getcomshop()=name2)ZT(op1i,b);sum+;if(sum!=0)string name;int h;top:cout<<"是否購(gòu)買:(1.是,2.否)"<<endl;cin>>h;if(h=1)cout<<"請(qǐng)輸入車次:"cin>>name; jj:for(i=0;i<m;i+) if(op1i.getnum()=na

33、me) sonbuy(op1i,b);break; if(i>=m)int a3; cout<<"所輸入的車次不存在。"<<endl; cout<<"請(qǐng)選擇:1.重新輸入 2.返回"cin>>a3;if(a3=1) cout<<"請(qǐng)重新輸入車次:"cin>>name; goto jj;elseif(h=2)elsecout<<"輸入錯(cuò)誤,請(qǐng)重新輸入:"goto top;elseint sum1=0;cout<<&q

34、uot;系統(tǒng)未查詢到該車次"<<endl;cout<<"可能的結(jié)果是:"<<endl;for(i=0;i<m;i+)if(op1i.getstarshop()=name1)ZT(op1i,b);sum1+;if(sum1!=0)string name; int h; tt:cout<<"是否購(gòu)買:(1.是,2.否)"<<endl;cin>>h; if(h=1) cout<<"請(qǐng)輸入車次:"cin>>name; jj1:for

35、(i=0;i<m;i+) if(op1i.getnum()=name) sonbuy(op1i,b);break; if(i>=m) int a2; cout<<"所輸入的車次不存在。"<<endl;cout<<"請(qǐng)選擇:1.重新輸入 2.返回"cin>>a2;if(a2=1) cout<<"請(qǐng)重新輸入車次:"cin>>name; goto jj1; else if(h=2) else cout<<"輸入錯(cuò)誤,請(qǐng)重新輸入:&quo

36、t; goto tt;elseint sum2=0;for(i=0;i<m;i+) if(op1i.getcomshop()=name2)ZT(op1i,b);sum2+;if(sum2!=0)string name; int h; tt1:cout<<"是否購(gòu)買:(1.是,2.否)"<<endl;cin>>h; if(h=1) cout<<"請(qǐng)輸入車次:"cin>>name; jj2:for(i=0;i<m;i+) if(op1i.getnum()=name) sonbuy(op1

37、i,b);break; if(i>=m)int a1; cout<<"所輸入的車次不存在。"<<endl;cout<<"請(qǐng)選擇:1.重新輸入 2.返回"cin>>a1;if(a1=1) cout<<"請(qǐng)重新輸入車次:"cin>>name; goto jj2; else if(h=2) else cout<<"輸入錯(cuò)誤,請(qǐng)重新輸入:" goto tt1;elsecout<<"不存在"<<

38、;endl;save(op1);delete op1;return 0;int function:back()train *op1;ifstream f1("g:c文件班次總數(shù).txt",ios:in); if(!f1)cout<<"文件打開失敗。"exit(1);read1(f1);f1.close();op1=new trainm;ifstream f2("g:c文件班次信息單.txt",ios:in);if(!f2)cout<<"文件打開失敗。"exit(1);for(int i=0;

39、i<m;i+)op1i.read(f2);if(f2.fail()!=0)break;f2.close();string name1;cout<<"請(qǐng)輸入所退票的車次:"cin>>name1;int sum2=0;for(i=0;i<m;i+)if(op1i.getnum()=name1)int a1;cout<<"目前已訂票的人數(shù):"<<op1i.getpeponum()<<endl; cc:cout<<"請(qǐng)輸入所退票數(shù):"cin>>a1

40、;if(op1i.getpeponum()<a1)cout<<"輸入錯(cuò)誤,超已訂票人數(shù)上限。"<<endl;goto cc;elseop1i.setpeponum1(a1); cout<<"退票成功。"<<endl;sum2+;if(sum2=0)cout<<"你輸入的車次不存在!"<<endl;save(op1);delete op1;return 0;class jiemian:public functionpublic:void luru();void

41、 chaxun();void buy();void jiemian:luru() doint i;int k;cout<<"n>>>>>>>>>>>>>>>>>>>>>>>>>>>>"<<endl; cout<<" 1).新錄入。" cout<<"n 2).追加錄入。" cout<<"n 3). 返回

42、主菜單。"cout<<"n >>>>>>>>>>>>>>>>>>>>>>>>>>>>" cout<<"n請(qǐng)選擇:" cin>>i; system("cls"); switch(i) case 1:input();cout<<"錄入完畢."<<endl;docout<<&

43、quot;請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>k;system("cls"); switch(k) case 1:break; case 2:i=3;break; default:break;if(k=1|k=2)break;while(1);break; case 2:addinput();cout<<"錄入完畢."<<endl;docout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>k;system("cls")

44、; switch(k) case 1:break; case 2:i=3;break; default:break;if(k=1|k=2)break;while(1);break;case 3:break;default:cout<<"輸入有誤,"<<endl;docout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>k; switch(k) case 1:break; case 2:i=3;break; default:break;if(k=1|k=2)break;while(1);break

45、;if(i=3) break;while(1);void jiemian:chaxun()top1: int k,h;cout<<">>>>>>>>>>>>>>>>>>>>>>>>>"cout<<"n 1.按車次查詢。"cout<<"n 2.按終點(diǎn)站查詢。"cout<<"n 3.返回主菜單。"cout<<&q

46、uot;n >>>>>>>>>>>>>>>>>>>>>>>>>>"cout<<"n請(qǐng)選擇:"cin>>k;system("cls");switch(k)case 1:cccx(); top2:cout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>h; system("cls"); switch

47、(h) case 1:goto top1; case 2:break; default:cout<<"輸入錯(cuò)誤."<<endl;goto top2; break;case 2:zdzcx(); top3:cout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>h; system("cls");switch(h) case 1:goto top1; case 2:break; default:cout<<"輸入錯(cuò)誤."<<endl;go

48、to top3; break;case 3:break;default:cout<<"輸入錯(cuò)誤,請(qǐng)重新選擇:"<<endl;goto top1;void jiemian:buy() top1: int k,h;cout<<">>>>>>>>>>>>>>>>>>>>>>>>>>>>"cout<<"n 1.輸入車次名稱購(gòu)票。"

49、cout<<"n 2.輸入起始站,終點(diǎn)站購(gòu)票。"cout<<"n 3.返回主菜單。"cout<<"n >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"cout<<"n請(qǐng)選擇:"cin>>k;system("cls");switch(k)c

50、ase 1: buy1(); top2:cout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>h; system("cls"); switch(h) case 1:goto top1; case 2:break; default:cout<<"輸入錯(cuò)誤."<<endl;goto top2; break;case 2:buy2(); top3:cout<<"請(qǐng)選擇:1.返回上一層 2.返回主菜單 "cin>>h; system(&qu

51、ot;cls");switch(h) case 1:goto top1; case 2:break; default:cout<<"輸入錯(cuò)誤."<<endl;goto top3; break;case 3:break;default:cout<<"輸入錯(cuò)誤,請(qǐng)重新選擇:"<<endl;goto top1;void view4() int a=0;top3:if(a<=100) cout<<"*"<<endl; cout<<"n

52、nnn 歡迎進(jìn)入車票管理系統(tǒng)"<<endl; cout<<"nnnn"<<endl; cout<<"*"<<endl; cout<<"正在加載,請(qǐng)等待."<<a<<"%"<<endl; for(int i=0;i<80;i+) cout<<">" Sleep(10); a+; system("cls"); goto top3; void view5()cout<<"nnnnnn"cout<<"ttt "<<endl;cout<<"t 錄入車次信息 .1 2. 瀏覽車次信息"

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論