C語(yǔ)言課程設(shè)計(jì)--火車票管理系統(tǒng).doc_第1頁(yè)
C語(yǔ)言課程設(shè)計(jì)--火車票管理系統(tǒng).doc_第2頁(yè)
C語(yǔ)言課程設(shè)計(jì)--火車票管理系統(tǒng).doc_第3頁(yè)
C語(yǔ)言課程設(shè)計(jì)--火車票管理系統(tǒng).doc_第4頁(yè)
C語(yǔ)言課程設(shè)計(jì)--火車票管理系統(tǒng).doc_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

_ 二、設(shè)計(jì)內(nèi)容 設(shè)計(jì)一個(gè)火車票務(wù)管理系統(tǒng),用C語(yǔ)言實(shí)現(xiàn)。對(duì)該系統(tǒng)的要求如下:需求描述:1.系統(tǒng)功能(1)火車時(shí)刻信息錄入。包括車次、日期、起點(diǎn)、終點(diǎn)、開(kāi)車時(shí)間、到達(dá)時(shí)間、票價(jià)。數(shù)據(jù)存入數(shù)據(jù)文件hchsk.dat或hchsk.txt中。(2)火車時(shí)刻信息查詢。按照車次查詢按終點(diǎn)查詢按起點(diǎn)查詢按終點(diǎn)和日期查詢 (3)統(tǒng)計(jì) 按終點(diǎn)統(tǒng)計(jì)每日的車次數(shù) 按起點(diǎn)統(tǒng)計(jì)每日的車次數(shù)2. 系統(tǒng)主界面應(yīng)有以下功能選項(xiàng)錄入火車時(shí)刻信息查詢火車時(shí)刻信息統(tǒng)計(jì)火車車次退出三、詳細(xì)設(shè)計(jì)說(shuō)明#include#include #includeint MENU(); /菜單模塊void INPUT(); /輸入模塊void SEARCH(); /查詢模塊void SELECT(); /統(tǒng)計(jì)模塊void WRITE(); /文件記錄模塊void PRINT(); /打印模塊void READ(); /文件讀取模塊void WRONG(); /糾錯(cuò)模塊#define N 1000 /最大列車組數(shù)#define Print %s%13s%10s%10s%12s%15s%11sn,Ti.code,Ti.data,Ti.lp,Ti.ap,Ti.lt,Ti.at,Ti.price /輸出記錄格式#define Wrong n ! ! ! ! ! ! ! ! ! ! ! 輸入錯(cuò)誤,請(qǐng)重新輸入 ! ! ! ! ! ! ! ! ! ! ! n #define GeShi 車次 日期 起點(diǎn) 終點(diǎn) 開(kāi)車時(shí)間 到達(dá)時(shí)間 票價(jià)n struct Trainchar code10; /車次char data10; /日期char lp10; /left place 起點(diǎn)char ap10; /arrive place 終點(diǎn)char lt10; /left time 開(kāi)車時(shí)間char at10; /arrive time 到達(dá)時(shí)間char price10; / 票價(jià)TN;/* 全局變量 */int i=0; /輸入計(jì)數(shù)器int n=0; /合計(jì)計(jì)數(shù)器char l20; /糾錯(cuò)空間/主函數(shù)int main() int x;dox=MENU();switch(x)case 1:INPUT(); break;case 2:SEARCH(); break;case 3:SELECT(); break;case 4:printf(n -);printf(n 正在退出,請(qǐng)按任意鍵退出);printf(nn );printf(n -n );break;default:WRONG(); break;while(x!=4);return 0;/菜單模塊int MENU()int choice;system(cls); printf(n -n);printf( -n);printf( - -n);printf( - 歡迎進(jìn)入火車票務(wù)管理系統(tǒng) -n);printf( - -n);printf( -n);printf( -nn);printf( n - 請(qǐng)輸入選項(xiàng) -n);printf( 1.錄入火車時(shí)刻信息n);printf( 2.查詢火車時(shí)刻信息n);printf( 3.統(tǒng)計(jì)火車車次n);printf( 4.退出n);printf( -n);printf( 請(qǐng)選擇: );scanf(%d,&choice);gets(l);return choice;/輸入模塊void INPUT()char ch;dosystem(cls); printf(nn =歡迎進(jìn)入 錄入火車時(shí)刻信息 界面=n);doprintf(n 新建列車信息?(y/n) );scanf(%c,&ch);gets(l);if(ch!=y&ch!=n)WRONG ();while(ch!=y&ch!=n);if(ch=n)break;printf( -);printf(n 錄入第%d趟列車信息n,n+1);printf( 車次 );gets(Ti.code);printf( 日期 );gets(Ti.data);printf( 起點(diǎn) );gets(Ti.lp);printf( 終點(diǎn) );gets(Ti.ap);printf( 開(kāi)車時(shí)間 );gets(Ti.lt);printf( 到達(dá)時(shí)間 );gets(Ti.at);printf( 票價(jià) );gets(Ti.price);n+;i+;while(iN);WRITE();system(cls); printf(n);printf( -n);printf( 系統(tǒng)記載的列車信息如下n);printf( -nn);PRINT();/文件記錄模塊void WRITE() FILE *fp,*fp1;if(fp=fopen(hchsk.txt,w)=NULL)printf(無(wú)法創(chuàng)建文件!nn);getchar();return;if(fp1=fopen(N.txt,w)=NULL)/用于記錄共幾趟車printf(無(wú)法創(chuàng)建文件!n);getchar();return; for(i=0;in;i+)if(fwrite(&Ti,sizeof(struct Train),1,fp)=0)printf(寫(xiě)入數(shù)據(jù)失敗!nn);fprintf(fp1,%d,n);fclose(fp);fclose(fp1); /文件讀取模塊void READ()FILE *fp,*fp1;if(fp=fopen(hchsk.txt,r)=NULL)printf(無(wú)法打開(kāi)文件n);getchar();return;if(fp1=fopen(N.txt,r)=NULL)printf(無(wú)法打開(kāi)文件!nn);getchar();return;fscanf(fp1,%d,&n);fclose(fp1);for(i=0;in;i+) fread(&Ti,sizeof(struct Train),1,fp); fclose(fp);/打印模塊void PRINT()char ch10;READ();printf(n =n);printf(GeShi);for(i=0;in;i+) printf(Print);printf( =n);printf(n 按任意鍵返回上級(jí)菜單: );gets(ch);/查詢模塊void SEARCH()char name110;/車次char name210;/終點(diǎn)char name310;/起點(diǎn)char name4110;/終點(diǎn)char name4210;/日期char choice;int j;int k;dosystem(cls); printf(nn =歡迎進(jìn)入 查詢火車時(shí)刻信息 界面=n);printf(n +請(qǐng)選擇查找方式+nn);printf( -1.顯示所有列車信息 2.按車次查詢 3.按終點(diǎn)查詢-n);printf( -4.按起點(diǎn)查詢 5.按終點(diǎn)和日期查詢 6.返回上級(jí)菜單-n);printf(n 請(qǐng)選擇: );scanf(%d,&j);gets(l);switch(j)case 1:PRINT();break;case 2:printf(n - 請(qǐng)輸入車次 -: );gets(name1);break;case 3:printf(n - 請(qǐng)輸入終點(diǎn) -: );gets(name2);break;case 4:printf(n - 請(qǐng)輸入起點(diǎn) -: );gets(name3);break;case 5:printf(n - 請(qǐng)輸入終點(diǎn) -: );gets(name41);printf(n - 請(qǐng)輸入日期 -: );gets(name42);break;case 6: break;default:WRONG ();break;READ();k=0;if(j=2)for(i=0;in;i+) if(strcmp(Ti.code,name1)=0)printf(n 按 車次 查找列車信息成功!n);printf(n =n);printf(GeShi);break;for(i=0;i 共查詢到 %d 趟列車信息,請(qǐng)按任意鍵返回 - ,k);gets(l);if(j=3)for(i=0;in;i+) if(strcmp(Ti.ap,name2)=0)printf(n 按 終點(diǎn) 查找列車信息成功!n);printf(n =n);printf(GeShi);break;for(i=0;i 共查詢到 %d 趟列車信息,請(qǐng)按任意鍵返回 - ,k);gets(l);if(j=4)for(i=0;in;i+) if(strcmp(Ti.lp,name3)=0)printf(n 按 起點(diǎn) 查找列車信息成功!n);printf(n =n);printf(GeShi);break;for(i=0;i 共查詢到 %d 趟列車信息,請(qǐng)按任意鍵返回 - ,k);gets(l);if(j=5)for(i=0;in;i+) if(strcmp(Ti.ap,name41)=0&strcmp(Ti.data,name42)=0)printf(n 按 終點(diǎn)和日期 查找列車信息成功!n);printf(n =n);printf(GeShi);break;for(i=0;i 共查詢到 %d 趟列車信息,請(qǐng)按任意鍵返回 繼續(xù)查找(1),返回主菜單(2)- );choice=getchar();gets(l);if(choice!=1&choice!=2)WRONG ();while(choice!=1&choice!=2);while(choice!=2);/統(tǒng)計(jì)模塊void SELECT()char name110;/終點(diǎn)char name210;/起點(diǎn)int t,k;char choice;dosystem(cls);printf(nn =歡迎進(jìn)入 統(tǒng)計(jì)火車車次 界面=n);printf(n -|- -|- -|- -|- 請(qǐng)選擇統(tǒng)計(jì)方式 -|- -|- -|- -|- nn);printf( 1.按終點(diǎn)統(tǒng)計(jì)每日的車次數(shù)n);printf( 2.按起點(diǎn)統(tǒng)計(jì)每日的車次數(shù)n);printf(n 請(qǐng)選擇: );scanf(%d,&t);gets(l);switch(t)case 1:printf( 請(qǐng)輸入終點(diǎn): );gets(name1);break;case 2:printf( 請(qǐng)輸入起點(diǎn): );gets(name2);break;default:WRONG();break;READ();if(t=1)k=0;for(i=0;in;i+) if(strcmp(Ti.lp,name1)=0)printf(n 按 終點(diǎn) 統(tǒng)計(jì)列車信息成功!n);break;for(i=0;i 共查詢到 %d 趟列車信息,請(qǐng)按任意鍵返回 - ,k);gets(l);i

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論