交通罰單管理系統(tǒng)_第1頁
交通罰單管理系統(tǒng)_第2頁
交通罰單管理系統(tǒng)_第3頁
交通罰單管理系統(tǒng)_第4頁
交通罰單管理系統(tǒng)_第5頁
已閱讀5頁,還剩29頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、目錄一 系統(tǒng)開發(fā)的背景 2二 系統(tǒng)分析與設(shè)計 2(一)系統(tǒng)功能要求 2(二)系統(tǒng)模塊結(jié)構(gòu)設(shè)計 2三系統(tǒng)的設(shè)計與實現(xiàn) 3(一) 罰單基本信息錄入: input () 3(二 )信息刪除: delete() 6(三)find 函數(shù) 9(四) show 函數(shù) 13(五)sum函數(shù)14四系統(tǒng)測試 16(一)測試 input 函數(shù) 16(二)測試 delet 函數(shù) 17(三)測試 find 函數(shù) 18(四)測試 show 函數(shù) 18(五)測試 sum 函數(shù) 19五、總結(jié) 20六、附件(代碼、部分圖表) 2134交通罰單管理系統(tǒng)一 系統(tǒng)開發(fā)的背景為了方便單位對交通處罰的經(jīng)一步解交通處罰單信息用文件存 儲,

2、提供文件的輸入輸出操作;要求可以輸入、刪除、瀏覽交通處罰 單信息,因而要提供信息的輸入、刪除和顯示操作;要實現(xiàn)按車輛、 駕駛員和開單交警查詢, 則要提供查找操作; 另外提供統(tǒng)計操作和鍵 盤式選擇菜單以實現(xiàn)功能選擇。二 系統(tǒng)分析與設(shè)計(一) 系統(tǒng)功能要求可以錄入交通罰單的信息,交通處罰單信息用文件存儲,因而要 提供文件的輸入輸出操作。1. 要求可以輸入、刪除、 瀏覽交通處罰單信息,因而要提供 信息的輸入、刪除和顯示操作;2. 要實現(xiàn)按車輛、駕駛員和 開單交警查詢,則要提供查找操 作;3. 另外提供統(tǒng)計操作和鍵盤式選擇菜單以實現(xiàn)功能選擇。4. 罰單信息(包括車牌號、 駕駛員姓名、 交警姓名、 交警

3、編號、 罰單編號)(二) 系統(tǒng)模塊結(jié)構(gòu)設(shè)計 通過對系統(tǒng)功能的分析,交通罰單管理系統(tǒng)功能如圖所示交通罰單管理系統(tǒng)信息錄入模塊信息瀏覽模塊信息查詢模塊信息統(tǒng)計模塊圖1交通管理系統(tǒng)功能圖通過上圖的功能分析,把整個系統(tǒng)劃分為 5個模塊:1、交通罰單信息錄入,該模塊主要實現(xiàn):車牌號、駕駛員 姓名、交警姓名、交警編號、罰單編號的輸入,用in put 函數(shù)實現(xiàn)。2、信息刪除模塊,該模塊主要實現(xiàn)信息的刪除,用delet函數(shù)實現(xiàn)。3、信息查詢模塊,該模塊主要實現(xiàn)信息的查詢:有車牌號 查詢、駕駛員查詢、交警查詢,共用四個函數(shù)進行查詢, 分別是find,4、信息統(tǒng)計模塊,主要實現(xiàn)的是罰單數(shù)量的統(tǒng)計,用sum函數(shù)實現(xiàn)

4、。三.系統(tǒng)的設(shè)計與實現(xiàn)(一) 罰單基本信息錄入:in put ()分析:先輸出表頭,然后進行罰單的信息輸入,單獨看各個數(shù)據(jù)信息, 開單日期以及駕駛員姓名為字符型, 可以采用字符型數(shù)組;處罰單號碼、車牌號碼以及交警ID為整型,可以采用整型數(shù)組。一條記錄對應(yīng)一張交通處罰單,方便交通部門管理。流程圖如圖 2所示開始1y-能否打開文件輸入用戶要輸入處罰單紀錄的條數(shù)。1依次輸入處罰單信息,并保存到文件中。j1T輸入、關(guān)成完閉件N退出輸入函數(shù)流程圖*程序代碼:void in put()FILE*fp;int num;int i,j;if(fp=fope n("plist.txt",&q

5、uot;r+")=NULL)r+為讀和寫而打開文本文件if(fp=fope n( "plist.txt","w")=NULL)讀而打開文本文件printf(”文件打開或創(chuàng)建失敗!n");prin tf("npress en ter to retur n menun"); getchar();men u();輸入模塊*wprintf("n 請輸入處罰單數(shù)量 :");scanf("%d",&i);printf("nn");for(j=0;j<i;

6、j+) /控制罰單一次一次的輸入printf(” 輸入第d張?zhí)幜P單的:n",j+1);printf("n 車牌號、駕駛員姓名、 交警姓名、 交警號、處罰單號、 日期(如 20101112)n"); printf("n 注意 : 中間用空格隔開 !n");scanf("%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plistj .tbianhao,&listj.fbianhao,&plistj.date);fo

7、r(j=0;j<i;j+)/對罰單一次次的保存fprintf(fp,"n%st%st%st%st%st%s",plistj.chepai,plistj.dname,plistj.p name,plistj.tbianhao,plistj.fbianhao,plistj.date);fclose(fp);printf("n 保存成功! ");printf("npress enter to return menun");getchar();getchar();menu();printf("n 請輸入處罰單數(shù)量 :"

8、;);scanf("%d",&i);printf("nn");for(j=0;!feof(fp);j+)/讀取文件fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);num=j+i;if(num>N)printf("n結(jié)構(gòu)體數(shù)組數(shù)的 N太小,請先修改 N的值n");print

9、f("npress enter to return menun");getchar();getchar();menu();printf("n");for(j=0;j<i;j+)printf("輸入第d張?zhí)幜P單的:n",j+1);printf("n 車牌號、駕駛員姓名、交警姓名、交警號、處罰單號、日期(如 20101112)n"); printf("n 注意 : 中間用空格隔開 !n");scanf("%s%s%s%s%s%s",&plistj.chepai,&a

10、mp;plistj.dname,&plistj.pname,&plistj .tbianhao,&plistj.fbianhao,&plistj.date);for(j=0;j<i;j+) fprintf(fp,"n%st%st%st%st%st%s",plistj.chepai,plistj.dname,plistj.p name,plistj.tbianhao,plistj.fbianhao,plistj.date);fclose(fp);printf("n 保存成功! ");printf("npres

11、s enter to return menun");getchar();getchar();menu();(二 )信息刪除: delete() 分析:該模塊的功能需要刪除交通處罰單信息,要根據(jù)處罰單號、車 輛號碼、駕駛員姓名、開單時間以及交警 ID 查找處罰記錄并刪除。 流程圖如圖 3 所示。結(jié)束圖3*程序代碼void delet()int j;int num;int f=-1;FILE*fp1,*fp2;/char s120;if(fp 1= fope n( "plist.txt","r")=NU刪除函數(shù)流程圖刪除模塊 *文件的運用print

12、f("can not open filen"); printf("npress enter to return menun");getchar();getchar();menu();for(j=0;!feof(fp1);j+) / 讀取文件fscanf(fp1,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&pli stj.tbianhao,&plistj.fbianhao,&plistj.date);num=j;fc

13、lose(fp1);printf(" 請輸入要刪除的處罰單的編號 n");scanf("%s",s1);for(j=0;j<num;j+)if(strcmp(s1,plistj.fbianhao)=0)f=j;if(f<num-1)for(j=f;j<num-1;j+)strcpy(plistj.chepai,plistj+1.chepai); strcpy(plistj.dname,plistj+1.dname); strcpy(plistj.pname,plistj+1.pname);strcpy(plistj.tbianhao,p

14、listj+1.tbianhao);strcpy(plistj.fbianhao,plistj+1.fbianhao); strcpy(plistj.date,plistj.date);if(fp2=fopen("plist.txt","w")=NULL)printf(" 文件打不開! n"); printf("npress enter to return menun"); getchar();menu();for(j=0;j<num-1;j+) / 保存文件fprintf(fp2,"n%st%st

15、%st%st%st%s",&plistj.chepai,&plistj.dname,&plist j.pname,&plistj.tbianhao,&plistj.fbianhao,&plistj.date);fclose(fp2);prin tf("n刪除成功!n");prin tf("npress en ter to retur n menun ”);getchar();getchar();men u();if(f<0) prin tf("n沒有找到該學(xué)號的記錄:n");pri

16、n tf("npress en ter to retur n menun ”); getchar();getchar(); menu();(三)find 函數(shù)分析:該模塊的功能是根據(jù)輸入的處罰單號、 車輛號碼、駕駛員姓名、開單時間以及交警ID查找相應(yīng)的記錄,方便駕駛員了解自己的處罰情況。流程圖如圖4所示圖4 find函數(shù)流程圖*按車牌號 2- 按駕駛員姓名 3- 按開單交警姓名讀取文件程序代碼void find()int n;int r;dosystem("cls"); / 清屏 printf("n請選擇查詢類型 :nt 14- 返回主菜單 n"

17、;);printf("n請輸入數(shù)字選擇 :");scanf("%d",&n);if(n<1|n>4)r=1;getchar();else r=0;while(r=1);switch(n)case 1:chepaif();break;case 2:dnamef();break;case 3:pnamef();break;case 4:menu();void chepaif()int f=-1;int num;int j;char a20;FILE*fp;if(fp=fopen("plist.txt","r&

18、quot;)=NULL)printf(" 文件打不開! n");printf("npress enter to return menun"); getchar();menu();for(j=0;!feof(fp);j+) /fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);num=j;fclose(fp);

19、printf("n 請輸入車牌號 :");scanf("%s",a);printf("n 罰單的信息為: nn");printf(" 車牌號 駕駛員姓名 交警姓名 交警編號 處罰單編號 處罰日期 n"); for(j=0;j<num;j+)if(strcmp(a,plistj.chepai)=0)f=j; printf("n%st%st%st%st%st%s",&plistj.chepai,&plistj.dname,&plistj.pn ame,&plis

20、tj.tbianhao,&plistj.fbianhao,&plistj.date);if(f<0)printf("n 沒有找到該班號的記錄 !n");printf("npress enter to return sub menun");getchar();getchar();find();void dnamef()int f=-1;int num;int j;char name20;FILE*fp; if(fp=fopen("plist.txt","r")=NULL)printf("

21、; 文件打不開! n");printf("npress enter to return menun");getchar();menu();for(j=0;!feof(fp);j+) / 讀取文件fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);num=j;fclose(fp);printf("n 請輸入駕駛

22、員的姓名 :");scanf("%s",name);printf("n 罰單的信息為: nn");printf(" 車牌號 駕駛員姓名 交警姓名 交警編號 處罰單編號 處罰日期 n"); for(j=0;j<num;j+)if(strcmp(name,plistj.dname)=0)f=j; printf("n%st%st%st%st%st%s",&plistj.chepai,&plistj.dname,&plistj.pn ame,&plistj.tbianhao,

23、&plistj.fbianhao,&plistj.date);if(f<0)printf("n 沒有找到該班號的記錄 !n");printf("npress enter to return sub menun");getchar();getchar();find();void pnamef()int f=-1;int num;int j;char name20;FILE*fp;if(fp=fopen("plist.txt","r")=NULL)printf(" 文件打不開! n&qu

24、ot;); printf("npress enter to return menun");getchar();menu();for(j=0;!feof(fp);j+) / 讀取文件 fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);nu m=j;fclose(fp);prin tf("n請輸入開單交警的姓名:”);s

25、ca nf("%s", name);prin tf("n罰單的信息為:nn");printf(” 車牌號駕駛員姓名交警姓名交警編號處罰單編號處罰日期n");for(j=0;j< nu m;j+)if(strcmp (n ame,plistj.p name)=0)f=j;prin tf("n%st%st%st%st%st%s",&plistj.chepai, &plistj.d name,&plistj.p name,&plistj.tbia nhao,&plistj.fbia n

26、hao,&plistj.date);if(f<0)prin tf("n沒有找到該班號的記錄!n");prin tf("npress en ter to retur n sub menun ”);getchar();getchar();fin d();(四)show函數(shù)分析:該模塊的功能是顯示所有的處罰信息。流程圖如圖 5所示圖5 show函數(shù)流程圖程序代碼void show()int j;int num;FILE*fp;if(fp=fopen("plist.txt","r")=NULL)printf("

27、;can not open filen"); printf("npress enter to return menun");getchar();getchar();menu();for(j=0;!feof(fp);j+) / 讀取文件 fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);fclose(fp);num=j

28、;printf("n已添加 %d 條記錄 nn",num);printf(" 車牌號 駕駛員姓名 交警姓名 交警編號 處罰單編號 處罰日期 n"); for(j=0;j<num;j+) / 輸出printf("n%st%st%st%st%st%s",&plistj.chepai,&plistj.dname,&plistj.pn ame,&plistj.tbianhao,&plistj.fbianhao,&plistj.date);printf("npress enter

29、to return menun");getchar();getchar();menu();(五) sum 函數(shù)分析:該模塊的功能是根據(jù)輸入的處罰單號、 車輛號碼、駕駛員姓名、開單時間以及交警 ID 查找相應(yīng)的記錄,方便駕駛員了解自己的處罰情況。流程圖如圖 6 所示圖6 sum函數(shù)流程圖統(tǒng)計模塊*程序代碼void sum()int f=-1;所有罰單單數(shù)某駕駛員的罰單數(shù)int num; /int j;int all=0; /char n ame20;char time120;char time220;FILE*fp;if(fp=fope n("plist.txt",

30、"r")=NULL)prin tf("文件打不開!n");prin tf("npress en ter to retur n menun ”);getchar();men u();for(j=0;!feof(fp);j+)/讀取文件fscan f(fp,"%s%s%s%s%s%s", &plistj.chepai,&plistj.d name,&plistj.p name, &plis tj.tbia nhao,&plistj.fbia nhao,&plistj.date);n

31、um=j; fclose(fp);printf("n 請根據(jù)提示輸入駕駛員的姓名和一個時間段,統(tǒng)計某個駕駛員在某段時間內(nèi) 的處罰單數(shù)目和罰單號 n");printf("nn 請輸入駕駛員的姓名 :");scanf("%s",name);printf("n請輸入一個較早的時間 :");scanf("%s",time1);printf("n請輸入一個最近的時間 :");scanf("%s",time2);for(j=0;j<num;j+) if(strc

32、mp(plistj.date,time1)>=0)&&(strcmp(plistj.date,time2)<=0)f=j;all+;printf("n 罰單號 :%sn",plistj.fbianhao);if(f<0)printf("n沒有找到記錄 !n");printf("n罰單總數(shù)為 :%dn",all);printf("npress enter to return menun");getchar();getchar();menu();四系統(tǒng)測試(一)測試 input 函數(shù)7

33、;0&口少交通窮単excW44Z ZZ4、卜 4W W4 W4W44W4 444 44444 從丹從 44444 444 六*/六亦 444 44444 孫丹斗交通罰單管理系統(tǒng)¥錄嚼譜系 BS自S目3自3自9 亠一豆二及=豆一豆二買一12 3 4 5 6請選擇您要進行的服務(wù)(用序號代替例.1 (館息錄入) 請輸入處罰單數(shù)量泊輸入第丄張?zhí)幜P單的2審牌號"駕駛員姓名”交警姓名、交警號、處罰單號、日期(Sn20i0in2>注意,屯回園空墜慣岀25432 王曉囪于缺德 54376 1098767 20133701 輸入第2張址罰單和庫牌號*駕駛員姓容.交警姓名、X女警

34、號、處罰單號、注意,屯間用寶帝膽開 紛冷醱&日54S7G 1096734 20130702車牌號.駕駛員姓名、交警姓名、交警號、處罰單號、日期注意沖間用空整隔幵?裁456 虎哥程化 4532G 1093563 20130630保存咸功!pi-G苗昏右。rctwrn menu(二)測試delet函數(shù)"I '. 3 eb li g 該蘭 單.eKe"交通罰單管理系統(tǒng)錄ffill杳律條 自S自3自4自自4 亠二巳=巳一0_0一艮一1 2 3 4 5 &悴選捋您要進行的眾奔用序號代替)例.1信息錄入)冷輸入要冊II除的處罰單的編號*!1除成功!bres ui

35、ntui' to return menu.(三)測試find函數(shù)幘選j?查詢類型:|-按車牌號-按駕駛員姓名4按開單交警姓名4-返回主菜單*輸入數(shù)字選擇汽+青輸入車牌號= 23*32”單的信息為;£牌號 鶯駛員姓名交警姓名交警編號處罰單編號處罰日期23432 王曉虎 李敏德 5437610787&7 20130791press ©ntcr to return sub nerm(四)測試show函數(shù)"LDcbugci® 罰單亡泊-交通罰單管理系統(tǒng)4+ _ _ _ _ _ _ 4錄洞統(tǒng)系 自3自3自3自心自心 亠一一蟲_一豆5.亠=g_lx-

36、 JA14 1JlJ7J*112 3 4 5 6幘選擇您要進行的服霽(用序號代替)例;1 (信息錄入)4己添加7條記錄準牌號駕駛員姓名交警姓名交警編號處罰單編號處罰日期38766E3289 4536374536312132E3432 a 7654hu.jhu fhjh hu.hf fhjfdhjfuffgdf hjfhj hfduf hgysry gs ffds i 王曉虎 元歌673378Z?73?2fc734673834&3964374638&3hf ihi5&75S4376548766376387463 43254 10987? 10?87346738767363

37、27&&576S897832ft&374383?478 20130701 20130702flF-eEEenter- to v-etu.i*-r> raenu.(五)測試sum函數(shù)"tDebjgL 交;1餐隼 e- e交il罰單管理系統(tǒng)會系 自山4nil自=白"自.3 =B mlm _竺_ _野- 盧2尸鼻上|衛(wèi)上Ji 12 3 4 5 6區(qū)毎悉套ii存甸晟莠' 誦審尋祀替門易;1 (彳言息錄入)羹提示輸入駕駛?cè)谛彰蚮時間段請輸入彗駛員的姓名:元龜諳輸入一個較早的時間=28130626 請輸入一個最近的時間=20130703 罰單號:

38、1陽即67罰單號:1098734罰單總數(shù)為:2press enter to i*etLO*n nenu五、總結(jié)系統(tǒng)完成了交通罰單信息的錄入、刪除、查詢(車牌號查詢、駕 駛員查詢、開單交警查詢),交通罰單的統(tǒng)計等功能。雖然c語言復(fù)習(xí)過了,但是看書看懂了和真正的運用學(xué)到的知識 寫程序是完全不同的,不斷的對照例題,不斷的嘗試與修改。系統(tǒng)運 行時比較死板。程序中缺少一些警告句,例如:是否真的刪除(y/n)?” 由于考慮的不周全,沒有設(shè)計遇到重名的情況該怎么處理。我們設(shè)計 的程序中,只設(shè)計了按名字選擇,進行操作,忽略了重名的情況。整 個程序完成了,還有很多不完善的地方,希望自己以后辦事的時候要 認真,仔

39、細,考慮周全。我的收獲是學(xué)會了怎樣美觀大方的制作一個表頭, 對函數(shù)調(diào)用的理解 比以前更上一層樓,但對函數(shù)的定義仍存在好多問題,尤其是定義完 后面括號的處理閑的手足無措。不僅讓我進一步理解書本上的知識,而且提高了我的動手能力,讓我對一個人獨立編寫程序充滿了信心。 我初中學(xué)到了通過流程圖可以更方便編寫程序,也可以更準確編寫。 通過本題讓我了解到模塊的重要性, 各種模塊擁有各種功能, 熟練掌 握模塊可以更便捷編寫程序六、附件(代碼、部分圖表)# include<stdio.h># include<stdlib.h># include<string.h># defi

40、ne N 100 typedef struct char chepai20;/車牌號char dname20;/駕駛員姓名char pname20;/交警姓名char tbianhao20;/交警編號char fbianhao20;/罰單編號char date20;/罰單日期STREC;STREC plistN;void menu();/、t t I、/,主菜單void input();/信息錄入void delet();/信息刪除void find(); /信息查詢void chepaif();/按車牌查詢void dnamef();/按駕駛員姓名查詢void pnamef();/按交警查詢

41、void show();/信息瀏覽void sum();/信息統(tǒng)計void main()menu(); getchar(); input();void menu() it a;printf("+交通罰單管理系統(tǒng)+n")printf("+.+n");printf("+1.信息錄入+n");printf("+2.信息刪除+n");printf("+3.信息查詢+n");printf("+4.信息瀏覽+n");printf("+5.信息統(tǒng)計+n");printf

42、("+6.退出系統(tǒng)+n");printf("+.+n");printf("請選擇您要進行的服務(wù)(用序號代替)例:1(信息錄入)n");scanf("%d",&a);switch(a)case 1:input();break;case 2:delet();break;case 3:find();break;case 4:show();break;case 5:sum();break;case 6:break;default : break;if(a>7&&a<1) printf(&

43、quot;error");void input()FILE*fp;int num;int i,j; if(fp=fopen("plist.txt","r+")=NULL) /r+ 為讀和寫而打開文本文件if(fp=fopen("plist.txt","w")=NULL) /w 讀而打開文本文件printf(" 文件打開或創(chuàng)建失敗 !n"); printf("npress enter to return menun"); getchar();menu();printf

44、("n 請輸入處罰單數(shù)量 :");scanf("%d",&i);printf("nn");for(j=0;j<i;j+) / 控制罰單一次一次的輸入printf(”輸入第d張?zhí)幜P單的:n",j+1)20101112)n");printf("n 車牌號、駕駛員姓名、 交警姓名、 交警號、處罰單號、 日期(如 printf("n 注意 : 中間用空格隔開 !n");scanf("%s%s%s%s%s%s",&plistj.chepai,&p

45、listj.dname,&plistj.pname,&plistj .tbianhao,&plistj.fbianhao,&plistj.date);for(j=0;j<i;j+)/對罰單一次次的保存fprintf(fp,"n%st%st%st%st%st%s",plistj.chepai,plistj.dname,plistj.p name,plistj.tbianhao,plistj.fbianhao,plistj.date);fclose(fp);/文件的關(guān)閉printf("n 保存成功! ");printf(

46、"npress enter to return menun");getchar();getchar();menu();printf("n 請輸入處罰單數(shù)量 :");scanf("%d",&i);printf("nn");for(j=0;!feof(fp);j+)/讀取文件fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&pli

47、stj.fbianhao,&plistj.date);num=j+i;if(num>N)printf("n結(jié)構(gòu)體數(shù)組數(shù)的N太小,請先修改 N的值n");printf("npress enter to return menun"); getchar(); getchar(); menu();printf("n");for(j=0;j<i;j+)printf("輸入第d張?zhí)幜P單的:n",j+1);printf("n 車牌號、駕駛員姓名、交警姓名、交警號、處罰單號、日期(如 20101112

48、)n");printf("n 注意 : 中間用空格隔開 !n"); scanf("%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plistj .tbianhao,&plistj.fbianhao,&plistj.date);for(j=0;j<i;j+) fprintf(fp,"n%st%st%st%st%st%s",plistj.chepai,plistj.dname,plistj.p name,pl

49、istj.tbianhao,plistj.fbianhao,plistj.date);fclose(fp);printf("n 保存成功! ");printf("npress enter to return menun");getchar();getchar();menu();void delet()int j;int num;int f=-1;FILE*fp1,*fp2; / 文件的運用char s120;if(fp1=fopen("plist.txt","r")=NULL)printf("can no

50、t open filen");printf("npress enter to return menun");getchar();getchar();menu();for(j=0;!feof(fp1);j+) / 讀取文件 fscanf(fp1,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&pli stj.tbianhao,&plistj.fbianhao,&plistj.date);num=j;fclose(fp1);prin

51、tf(" 請輸入要刪除的處罰單的編號 n");scanf("%s",s1);for(j=0;j<num;j+)if(strcmp(s1,plistj.fbianhao)=0)f=j;if(f<num-1)for(j=f;j<num-1;j+)strcpy(plistj.chepai,plistj+1.chepai); strcpy(plistj.dname,plistj+1.dname); strcpy(plistj.pname,plistj+1.pname); strcpy(plistj.tbianhao,plistj+1.tbian

52、hao); strcpy(plistj.fbianhao,plistj+1.fbianhao);strcpy(plistj.date,plistj.date);if(fp2=fopen("plist.txt","w")=NULL)printf(" 文件打不開! n"); printf("npress enter to return menun"); getchar();menu();for(j=0;j<num-1;j+) / 保存文件fprintf(fp2,"n%st%st%st%st%st%s&q

53、uot;,&plistj.chepai,&plistj.dname,&plist j.pname,&plistj.tbianhao,&plistj.fbianhao,&plistj.date);fclose(fp2);printf("n 刪除成功! n"); printf("npress enter to return menun"); getchar(); getchar();menu();if(f<0)printf("n 沒有找到該學(xué)號的記錄 :n"); printf(&quo

54、t;npress enter to return menun");getchar();getchar();menu();void find()int n;int r;do system("cls");/ 清屏printf("n請選擇查詢類型:nt 14- 返回主菜單 n");printf("n請輸入數(shù)字選擇:");scanf("%d",&n);if(n<1|n>4) r=1; getchar();else r=0; while(r=1); switch(n) case 1:chepai

55、f();break; case 2:dnamef();break; case 3:pnamef();break; case 4:menu(); void chepaif()int f=-1;int num;int j;char a20;FILE*fp;if(fp=fopen("plist.txt","r")=NULL)printf(" 文件打不開! n"); printf("npress enter to return menun");getchar();menu();按車牌號 2- 按駕駛員姓名 3- 按開單交警

56、姓名讀取文件for(j=0;!feof(fp);j+) / fscanf(fp,"%s%s%s%s%s%s",&plistj.chepai,&plistj.dname,&plistj.pname,&plis tj.tbianhao,&plistj.fbianhao,&plistj.date);num=j;fclose(fp);printf("n 請輸入車牌號 :");scanf("%s",a);printf("n 罰單的信息為: nn");printf("

57、車牌號 駕駛員姓名 交警姓名 交警編號 處罰單編號 處罰日期 n"); for(j=0;j<num;j+)if(strcmp(a,plistj.chepai)=0)f=j;printf("n%st%st%st%st%st%s",&plistj.chepai,&plistj.dname,&plistj.pn ame,&plistj.tbianhao,&plistj.fbianhao,&plistj.date);if(f<0)printf("n 沒有找到該班號的記錄 !n");printf

58、("npress enter to return sub menun");getchar();getchar();find();void dnamef()int f=-1;int num;int j;char name20;FILE*fp;if(fp=fopen("plist.txt","r")=NULL)printf(" 文件打不開! n"); printf("npress enter to return menun");getchar();menu();for(j=0;!feof(fp);j+) / 讀取文件fscanf(fp,"%s%s%s%s%s%s

溫馨提示

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

最新文檔

評論

0/150

提交評論