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

下載本文檔

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

文檔簡介

1、#include<stdio.h>#include<time.h> /*時(shí)間庫函數(shù)*/#include<stdlib.h> /*調(diào)用系統(tǒng)函數(shù)*/#include<string.h> /*串操作及內(nèi)存操作函數(shù)*/ #include<conio.h>#include<math.h>#define N 80 /*宏定義多條記錄*/void maipiao(int s,int t); /*函數(shù)定義*/float times(int k);int hour(int k)switch(k)case 1:return 07;break;

2、case 2:return 10;break;case 3:return 13;break; case 4:return 16;break;case 5:return 19;break;case 6:return 21;break; /*d到閩清一天的發(fā)車時(shí)間小時(shí)段*/case 7:return 07;break;case 8:return 11;break;case 9:return 15;break;case 10:return 19;break;case 11:return 23;break; /*d到長樂一天的發(fā)車時(shí)間小時(shí)段*/case 12:return 07;break;case

3、13:return 11;break;case 14:return 15;break;case 15:return 19;break;case 16:return 23;break; /*d到連江一天的發(fā)車時(shí)間小時(shí)段*/case 17:return 07;break;case 18:return 11;break;case 19:return 16;break;case 20:return 20;break; /*d到永泰一天的發(fā)車時(shí)間小時(shí)段*/ case 21:return 07;break;case 22:return 12;break;case 23:return 17;break;ca

4、se 24:return 22;break; /*d到福清一天的發(fā)車時(shí)間小時(shí)段*/case 25:return 07;break;case 26:return 14;break;case 27:return 19;break;case 28:return 22;break; /*d到羅源一天的發(fā)車時(shí)間小時(shí)段*/ /*開車時(shí)間段*/int minute(int k)switch(k)case 1:return 00;break;case 2:return 00;break;case 3:return 00;break; case 4:return 00;break;case 5:return 0

5、0;break;case 6:return 00;break; /*d到閩清一天的發(fā)車時(shí)間分鐘段*/case 7:return 00;break;case 8:return 00;break;case 9:return 00;break;case 10:return 00;break;case 11:return 00;break; /*d到長樂一天的發(fā)車時(shí)間分鐘段*/case 12:return 00;break;case 13:return 00;break;case 14:return 00;break;case 15:return 00;break;case 16:return 00;

6、break; /*d到連江一天的發(fā)車時(shí)間分鐘段*/case 17:return 00;break;case 18:return 30;break;case 19:return 00;break;case 20:return 30;break; /*d到永泰一天的發(fā)車時(shí)間分鐘段*/ case 21:return 00;break;case 22:return 30;break;case 23:return 00;break;case 24:return 30;break; /*d到福清一天的發(fā)車時(shí)間分鐘段*/case 25:return 30;break;case 26:return 00;br

7、eak;case 27:return 30;break;case 28:return 30;break; /*d到羅源一天的發(fā)車時(shí)間分鐘段*/ /*開車時(shí)間段*/void wap(int k)switch(k)case 1: printf("閩清");break;case 2: printf("長樂");break;case 3: printf("連江");break;case 4: printf("永泰");break;case 5: printf("福清");break;case 6: pr

8、intf("羅源");break; /*輸入終點(diǎn)站的函數(shù)*/int shijian() struct tm *ptr; time_t lt; lt =time(NULL); ptr=gmtime(&lt); printf(ctime(&lt); return 0; /*輸出當(dāng)前時(shí)間的函數(shù)*/float times(int k)float t; if(k=1)t=1.5;if(k=2)t=3.0;if(k=3|k=4)t=4.0;if(k=5|k=6)t=4.5;return t; /*輸入行車時(shí)間的函數(shù)*/int number(int k)int f;if(

9、k=1|k=2)f=30;if(k=3|k=4)f=40;if(k=5|k=6)f=45;return f; /*輸入最大載客量的函數(shù)*/int nownumber(int k,int i)int n=0;char filename10;switch(i)case 1:strcpy(filename,"qiu1.txt");break;case 2:strcpy(filename,"qiu2.txt");break;case 3:strcpy(filename,"qiu3.txt");break; case 4:strcpy(file

10、name,"qiu4.txt");break;case 5:strcpy(filename,"qiu5.txt");break;case 6:strcpy(filename,"qiu6.txt");break; case 7:strcpy(filename,"qiu7.txt");break;case 8:strcpy(filename,"qiu8.txt");break;case 9:strcpy(filename,"qiu9.txt");break;case 10:str

11、cpy(filename,"qiu10.txt");break;case 11:strcpy(filename,"qiu11.txt");break; case 12:strcpy(filename,"qiu12.txt");break;case 13:strcpy(filename,"qiu13.txt");break;case 14:strcpy(filename,"qiu14.txt");break;case 15:strcpy(filename,"qiu15.txt"

12、);break;case 16:strcpy(filename,"qiu16.txt");break;case 17:strcpy(filename,"qiu17.txt");break;case 18:strcpy(filename,"qiu18.txt");break;case 19:strcpy(filename,"qiu19.txt");break;case 20:strcpy(filename,"qiu20.txt");break; case 21:strcpy(filename,&q

13、uot;qiu21.txt");break;case 22:strcpy(filename,"qiu22.txt");break;case 23:strcpy(filename,"qiu23.txt");break;case 24:strcpy(filename,"qiu24.txt");break; case 25:strcpy(filename,"qiu25.txt");break;case 26:strcpy(filename,"qiu26.txt");break;case 27

14、:strcpy(filename,"qiu27.txt");break;case 28:strcpy(filename,"qiu28.txt");break; case 29:strcpy(filename,"qiu29.txt");break;FILE *fp;if(fp=fopen(filename,"rt+")=NULL)printf("cannot open file,strike any key exit!");exit(1);fscanf(fp,"%d",&

15、;n);n=n+k; rewind(fp);fprintf(fp,"%d",n); /將輸入數(shù)組里面的數(shù)據(jù)寫到文本里fclose(fp);return n; /*現(xiàn)在已定票人數(shù)*/int tangci(int k)int x;switch(k)case 1:x=6;break;case 2:x=5;break;case 3:x=5;break;case 4:x=4;break;case 5:x=4;break;case 6:x=4;break;default:x=0;break;return x; /*確定每個(gè)地方一天行車趟次的函數(shù)*/void jiemian()print

16、f("*n");printf("*歡迎來到車票查詢系統(tǒng)*");printf("n");printf("| a: 進(jìn)入班次一覽 |n");printf("| b: 進(jìn)入查詢班次 |n");printf("| c: 進(jìn)入終點(diǎn)站查詢 |n");printf("| d: 售票 |n");printf("| e: 退票 |n");printf("| f: 增加班次 |n");printf("*n");pri

17、ntf("n請選擇(a-e):"); /*界面函數(shù)*/void banci(int s,int t) system("cls"); /*清屏*/ int i,flag=1,m,k=1,o=0; /*定義一些要用的數(shù)據(jù)*/ printf(" 車票管理系統(tǒng) "); printf("n"); printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)"); printf("n"); for(i=1;i<=N;i+) if(flag)m=i+tangc

18、i(k)-1; flag=0; /*計(jì)算同一個(gè)終點(diǎn)站的班次范圍*/if(i>=10) printf("%d ",i);else printf("%d ",i);if(hour(i)>=10) printf("%d ",hour(i); /*進(jìn)行頁面的調(diào)整,美觀*/else printf("%d%d ",o,hour(i);if(minute(i)>=10)printf("%d",minute(i);elseprintf("%d%d",o,minute(i);

19、printf(" 閩侯 ");wap(k);printf(" %lf ",times(k);printf("%d ",number(k); printf("%d ",nownumber(0,i);if(s<hour(i)printf("未發(fā)出");else if(t<minute(i)&&s=hour(i)printf("未發(fā)出");elseprintf("已發(fā)出");printf("n"); if(i=m)

20、flag=1; k+;if(k>6)break; /*班次一覽*/void chaxun1(int s,int t)system("cls");int i,k=0,n,o=0; printf("n請輸入要查詢的班次i:"); scanf("%d",&i);n=i;while(n>0)k+;n=n-tangci(k); printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n"); if(i>=10) printf("%d ",i);else

21、 printf("%d ",i);if(hour(i)>=10) printf("%d ",hour(i);else printf("%d%d ",o,hour(i);if(minute(i)>=10)printf("%d",minute(i);elseprintf("%d%d",o,minute(i); printf(" 閩侯 ");wap(k);printf(" %f ",times(k);printf("%d ",nu

22、mber(k);printf("%d ",nownumber(0,i);if(s<hour(i)printf("未發(fā)出");else if(t<minute(i)&&s=hour(i)printf("未發(fā)出");elseprintf("已發(fā)出"); printf("n");printf("返回重新查詢:3,輸入其他返回:n");scanf("%d",&n);while(n=3) /*循環(huán)*/system("cl

23、s");printf("n請輸入要查詢的班次i:"); scanf("%d",&i); printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n"); if(i>=10) printf("%d ",i);else printf("%d ",i);if(hour(i)>=10) printf("%d ",hour(i);else printf("%d%d ",o,hour(i);if(minute(

24、i)>=10)printf("%d",minute(i);elseprintf("%d%d",o,minute(i);printf(" 閩侯 ");wap(k);printf(" %f ",times(k);printf("%d ",number(k); printf("%d ",nownumber(0,i);if(s<hour(i)printf("未發(fā)出");else if(t<minute(i)&&s=hour(i)p

25、rintf("未發(fā)出");elseprintf("已發(fā)出");printf("n"); printf("返回重新查詢:3,輸入其他返回:n"); scanf("%d",&n); /*按班次查詢*/void chaxun2(int s,int t) system("cls");int i,k=1,m,j,l=0,o=0;printf("請輸入你要查詢的終點(diǎn)站:n");printf("1:閩清.2:長樂.3:連江.4:永泰.5:福清.6:羅源

26、.n");scanf("%d",&m);for(j=1;j<m;j+)k=k+tangci(j);for(j=1;j<=m;j+)l=l+tangci(j);printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n"); for(i=k;i<=l;i+) if(i>=10) printf("%d ",i); else printf("%d ",i); if(hour(i)>=10) printf("%d ",hour(

27、i); else printf("%d%d ",o,hour(i); if(minute(i)>=10)printf("%d",minute(i); elseprintf("%d%d",o,minute(i);printf(" 閩侯 ");wap(m);printf(" %f ",times(m);printf("%d ",number(m); printf("%d ",nownumber(0,i);if(s<hour(i)printf(&qu

28、ot;未發(fā)出");else if(t<minute(i)&&s=hour(i)printf("未發(fā)出");elseprintf("已發(fā)出");printf("n");printf("重新查詢請輸入11,直接買票請輸入12,輸入其他退出!:n");scanf("%d",&m);while(m=11)k=1;l=0;printf("請輸入你要查詢的終點(diǎn)站:n"); printf("1:閩清.2:長樂.3:連江.4:永泰.5:福清.

29、6:羅源.n"); scanf("%d",&m); for(j=1;j<m;j+) k=k+tangci(j); for(j=1;j<=m;j+) l=l+tangci(j);printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n"); for(i=k;i<=l;i+) if(i>=10) printf("%d ",i); else printf("%d ",i); if(hour(i)>=10) printf("%d &qu

30、ot;,hour(i); else printf("%d%d ",o,hour(i); if(minute(i)>=10) printf("%d",minute(i); else printf("%d%d",o,minute(i); printf(" 閩侯 "); wap(m); printf(" %f ",times(m); printf("%d ",number(m); printf("%d ",nownumber(0,i);if(s<ho

31、ur(i) printf("未發(fā)出"); else if(t<minute(i)&&s=hour(i) printf("未發(fā)出"); else printf("已發(fā)出"); printf("n");printf("重新查詢請輸入11,直接買票請輸入12,輸入其他退出!:n"); scanf("%d",&m);if(m=12)maipiao(s,t); /*按終點(diǎn)站查詢*/void zengban()system("cls");

32、int k,i;char stu110,stu210;printf("由于班次不夠,所以需要增加班次:n");printf("這個(gè)是工作人員所進(jìn),請輸入密碼:n");scanf("%s",stu1);while(strcmp(stu1,"qiu")!=0);printf("密碼輸入有誤,請重新輸入:n");scanf("%s",stu1);printf("輸入所要增加班次的班次i:");scanf("%d",&i);printf

33、("請輸入所要增加班次的重點(diǎn)站:n");printf("1:閩清.2:長樂.3:連江.4:永泰.5:福清.6:羅源.n");scanf("%d",&k);printf("請輸入發(fā)車時(shí)間:n");scanf("%s",&stu2);printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n");printf("%d ",i);printf("%s ",stu2);printf(" 閩侯

34、 ");wap(k);printf(" %f ",times(k);printf(" %d ",number(k);printf("%d ",nownumber(0,i);printf("未發(fā)出");printf("n");void maipiao(int s,int t) system("cls");int m,i,k=0,n,o=0,log;printf("歡迎先生或者小姐前來買票n"); printf("請輸入您需要購買票的班次i

35、:n"); scanf("%d",&i);n=i;while(n>0)k+;n=n-tangci(k);printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂票人數(shù) 狀態(tài)n");if(i>=10) printf("%d ",i);elseprintf("%d ",i);if(hour(i)>=10) printf("%d ",hour(i);else printf("%d%d ",o,hour(i);if(minute(i

36、)>=10) printf("%d",minute(i);else printf("%d%d",o,minute(i);printf(" 閩侯 ");wap(k);printf(" %f ",times(k);printf("%d ",number(k);printf("%d ",nownumber(0,i);if(s<hour(i)printf("未發(fā)出");log=1; else if(t<minute(i)&&s=h

37、our(i)printf("未發(fā)出");log=1;elseprintf("已發(fā)出");log=0;printf("n");if(number(k)>=nownumber(0,i)&&log=1)printf("請輸入你要定的票的數(shù)量m:n");scanf("%d",&m);nownumber(m,i);while(number(k)<nownumber(0,i)nownumber(-m,i);printf("這班車已訂滿,請重新訂票:n"

38、);printf("請輸入您需要購買票的班次i:n");scanf("%d",i);n=i; while(n>0) k+; n=n-tangci(k); if(i>=10) printf("%d ",i); else printf("%d ",i); if(hour(i)>=10) printf("%d ",hour(i); else printf("%d%d ",o,hour(i); if(minute(i)>=10) printf("%d

39、",minute(i); else printf("%d%d",o,minute(i); printf(" 閩侯 "); wap(i); printf(" %f ",times(k); printf("%d ",number(k); printf("%d ",nownumber(0,i);if(s<hour(i) printf("未發(fā)出"); log=1; else if(t<minute(i)&&s=hour(i) printf(&qu

40、ot;未發(fā)出"); log=1; else printf("已發(fā)出"); log=0; printf("n");printf("你已成功訂票!");while(number(k)<nownumber(0,i)|log=0)printf("此班不能訂票,請重新輸入所要定的班次i:n");scanf("%d",&i); n=i;k=0; while(n>0) k+; n=n-tangci(k); printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)

41、量 已訂票人數(shù) 狀態(tài)n"); if(i>=10) printf("%d ",i); else printf("%d ",i); if(hour(i)>=10) printf("%d ",hour(i); else printf("%d%d ",o,hour(i); if(minute(i)>=10) printf("%d",minute(i); else printf("%d%d",o,minute(i); printf(" 閩侯 &qu

42、ot;); wap(k); printf(" %f ",times(k); printf("%d ",number(k); printf("%d ",nownumber(0,i); if(s<hour(i) printf("未發(fā)出"); log=1; else if(t<minute(i)&&s=hour(i) printf("未發(fā)出"); log=1; else printf("已發(fā)出"); log=0; printf("n"

43、); if(number(k)>=nownumber(0,i)&&log=1)printf("請輸入你要定的票的數(shù)量m:n");scanf("%d",&m);nownumber(m,i);while(number(k)<nownumber(0,i)printf("這班車已訂滿,請重新訂票:n");printf("請輸入您需要購買票的班次i:n");scanf("%d",i);n=i; while(n>0) k+; n=n-tangci(k); if(i&

44、gt;=10) printf("%d ",i); else printf("%d ",i); if(hour(i)>=10) printf("%d ",hour(i); else printf("%d%d ",o,hour(i); if(minute(i)>=10) printf("%d",minute(i); else printf("%d%d",o,minute(i); printf(" 閩侯 "); wap(i); printf(&quo

45、t; %f ",times(k); printf("%d ",number(k); printf("%d ",nownumber(0,i);if(s<hour(i) printf("未發(fā)出"); log=1; else if(t<minute(i)&&s=hour(i) printf("未發(fā)出"); log=1; else printf("已發(fā)出"); log=0; printf("n");printf("你已成功訂票!"); /*訂票的函數(shù)*/void tuipiao(int s,int t) system("cls");int i,n,k=0,x,log,o=0;printf("請輸入你所訂票的班次i:n");scanf("%d",&i);n=i;while(n>0)k+;n=n-tangci(k);printf("班次 發(fā)車時(shí)間 起點(diǎn)站 終點(diǎn)站 行車時(shí)間 額定數(shù)量 已訂

溫馨提示

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

最新文檔

評論

0/150

提交評論