交通處罰單管理系統(tǒng)李勇峰_第1頁(yè)
交通處罰單管理系統(tǒng)李勇峰_第2頁(yè)
交通處罰單管理系統(tǒng)李勇峰_第3頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、C語(yǔ)言設(shè)計(jì)實(shí)習(xí)報(bào)告勘查技術(shù)與工程(基礎(chǔ)工程方向):勇峰班號(hào): 054081學(xué)號(hào): 題目:交通處罰單管理系統(tǒng)指導(dǎo)教師:王老師時(shí)間:2009-2010 學(xué)年秋,題目要求【要求】:交通處罰單涉及到車(chē)輛,駕駛員和開(kāi)單交警的信息,還有交通處罰單的,處罰時(shí)間等信息?!竟δ堋浚?1)要求可以輸入,刪除,瀏覽交通處罰單信息。(2) 可以按車(chē)輛,駕駛員和開(kāi)單交警查詢(xún)。(3) 統(tǒng)計(jì)某時(shí)間段某個(gè)駕駛員的交通處罰數(shù)目及交通處罰單?!咎崾尽?1)需求分析:交通處罰單信息用文件存儲(chǔ) ,提供文件的輸 輸出操作;要求可以輸入,輸出,刪除,瀏覽交 通處罰單信息,因而要提供輸入,刪除和顯示 操作;要實(shí)現(xiàn)按車(chē)輛,駕駛員和開(kāi)單交警查

2、詢(xún) 則要提供查找操作;另外提供統(tǒng)計(jì)操作和鍵 盤(pán)式選擇菜單以實(shí)現(xiàn)功能選擇。(2) 總體設(shè)計(jì):整個(gè)管理系統(tǒng)被設(shè)計(jì)為信息輸入模塊,信息刪 除模塊,信息瀏覽模塊,信息查詢(xún)模塊,信息 統(tǒng)計(jì)模塊。1,處罰單管理系統(tǒng)界面函數(shù)此函數(shù)包括的功能是建立新的罰單,按司機(jī)查詢(xún) 罰單并瀏覽相關(guān)信息,按交警查詢(xún)罰單并瀏覽相關(guān)信 息,按罰單號(hào)查詢(xún)罰單并瀏覽相關(guān)信息 ,刪除罰單,數(shù) 據(jù)統(tǒng)計(jì)和退出處罰單管理系統(tǒng)。void Menu()printf(");printf("歡迎來(lái)到交通處罰單管理系統(tǒng)!n");printf('*n"printf(II1. 建立新的罰單n");

3、printf(" 2.根據(jù)司機(jī)查找并瀏覽相關(guān)信息n");printf("3.根據(jù)父通警察查找并瀏覽相關(guān)信息n");printf("4.根據(jù)車(chē)牌查詢(xún)并瀏覽相關(guān)信息n");printf(II5刪除處罰單n");printf(II6. 數(shù)據(jù)統(tǒng)計(jì)n");printf(II0. 退出n");printf(H*n");2,各功能模塊設(shè)計(jì)(1) 創(chuàng)建新的交通處罰單處罰單包含的容有處罰單號(hào),車(chē)牌號(hào),司機(jī),交警, 和處罰日期,因此相應(yīng)的函數(shù)也應(yīng)包含這些容,在這個(gè) 函數(shù)所控制的操作會(huì)依次提示輸入以上容。特別的,罰

4、單號(hào)不能有重復(fù),若輸入的罰單號(hào)有重復(fù),操作界面會(huì) 提示罰單好重復(fù),請(qǐng)重新輸入。 PTP R pTemp = In itNode();Int iYear, iMo n, iDay;printf("請(qǐng)輸入相關(guān)信息:n");printf("處罰單號(hào):");flushall();sea nf( "%s", pTemp->m_sRec num );if( SearchNode_1( pHead, pTemp->m_sRecnum )printf(" 處罰單有重復(fù),請(qǐng)重新輸入");free( pTemp );ret

5、ur n pHead;prin tf("車(chē)牌:");flushall();sea nf( "%s", pTemp->m_sCarid );prin tf("司機(jī):");flushall();sea nf( "%s", pTemp->m_sDri name );printf("交通警察:");flushall();sea nf( "%s", pTemp->m_sTPName );flushall();seanf( "%d %d %d", &

6、amp;iYear, &iMon, &iDay);In itDate( & pTemp->m_CDate, iYear, iMo n, iDay );retur n In sertNode( pHead, pTemp );(2) 按司機(jī)查詢(xún)罰單:先輸入命令2,再輸入待查找司機(jī).在這里函數(shù)會(huì)在 記錄在案的處罰單進(jìn)行循環(huán)查找,如果有該司機(jī)的罰單記 錄,就會(huì)相應(yīng)顯示在屏幕上。如果沒(méi)有該司機(jī)的處罰記錄, 就會(huì)打印:沒(méi)有相關(guān)信息。其中l(wèi)f(!(i/4)i=0;c on ti nu e;這一句的作用是因?yàn)橛袝r(shí)若因?yàn)槟衬奈凰緳C(jī)的處罰記錄 過(guò)多以至于屏幕無(wú)法在一夜里全部顯示時(shí),多

7、的就打印到下頁(yè).void SearchByDriName( PTPR pHead )Char n ame10;Int i = 1, check = 0;if( pHead )flushall();sca nf( "%s", n ame );while( pHead )pHead = SearchNode_2( pHead, n ame );if( pHead )check+;ShowNode( pHead );prin tf("n");i+;pHead = pHead->m_pNext;if( !( i % 4 ) ) i = 0;CONTINUE

8、;if( !check ) printf("沒(méi)有相關(guān)信息!n" );Else printf(”目前還沒(méi)有該處罰單!" ); (3) 按交警查詢(xún)罰單:先輸入命令3,再輸入待查找交警.在這里函數(shù)會(huì)在記 錄在案的處罰單進(jìn)行循環(huán)查找,如果有該交警所開(kāi)的的罰 單記錄,就會(huì)相應(yīng)顯示在屏幕上。如果沒(méi)有該交警開(kāi)的處 罰記錄,就會(huì)打?。簺](méi)有相關(guān)信息。其中If(!(i/4) i=0;co nti nue;此句的作用同(2)void SearchByPocName( PTPR pHead )Char name10;Int i = 1, check = 0;if( pHead ) pri

9、ntf("請(qǐng)輸入處罰交警的:");flushall();sca nf( "%s", n ame );while( pHead ) pHead = SearchNode_3( pHead, n ame );if( pHead ) check+;ShowNode( pHead );prin tf("n");i+;pHead = pHead->m_pNext;if( !( i % 4 ) ) i = 0; CONTINUE;if( !check ) printf("沒(méi)有相關(guān)信息!n" );(4) 按車(chē)牌號(hào)查詢(xún)罰單:

10、先輸入命令4,再輸入待查找車(chē)牌.在這里函數(shù)也會(huì)對(duì) 記錄在案的處罰單進(jìn)行循環(huán)查找,如果有該車(chē)牌號(hào)記錄, 就會(huì)相應(yīng)顯示在屏幕上。如果沒(méi)有該車(chē)牌號(hào)的處罰信息, 就會(huì)打?。簺](méi)有相關(guān)信息。lf(!(i/4) i=0;continue;此句的作用同(2)void SearchByCarld( PTPR pHead )char n ame10;Int i = 1, check = 0;if( pHead ) printf("請(qǐng)輸入要查詢(xún)的車(chē)牌:");flushall();sea nf( "%s", n ame );while( pHead ) pHead = Sear

11、chNode_4( pHead, n ame );if( pHead ) check+;ShowNode( pHead );prin tf("n");i+;pHead = pHead->m_pNext;if( !( i % 4 ) ) i = 0;CONTINUE;if( !check ) printf("沒(méi)有相關(guān)信息!n" ); Else printf(”目前還沒(méi)有該處罰單!" );(5) 刪除罰單操作者先輸入刪除命令5,在按操作要求輸入要?jiǎng)h除的處罰單,系統(tǒng)瀏覽處罰單,找到相關(guān)信息后,在刪除這 處罰信息,再把這個(gè)信息的尾地址結(jié)到下一個(gè)信

12、息的頭地 址上從而達(dá)到刪除此信息的作用.PTPR DeleteTPR( PTPR pHead ) char num11;PTPR pTemp, pT;if( pHead ) printf("請(qǐng)輸入要查詢(xún)的處罰單號(hào):");flushall();sca nf( "%s", num );pTemp = SearchNode_1( pHead, num );if( pTemp ) if( pTemp= pHead ) pHead = pHead->m_pNext;else if( !pTemp->m_pNext ) pT = SearchNode_1

13、_rf( pHead, num );pT->m_pNext = NULL;Else pT = SearchNode_1_rf( pHead, num ); pT->m_pNext = pTemp->m_pNext;free( pTemp );printf(" 刪除成功!n");Else printf("輸入的不存在!n" ); Else printf(”目前還沒(méi)有該處罰單!" );retur n pHead;統(tǒng)計(jì)此操作會(huì)首先提示操作者輸入查詢(xún)的起始時(shí)間和結(jié)束時(shí) 間.判斷.如是第一個(gè)時(shí)間大于第二個(gè)時(shí)間,相應(yīng)會(huì)提示“輸入錯(cuò)誤”,若

14、輸入正確,會(huì)提示繼續(xù)輸入待查司機(jī).給 i賦初值0.每循環(huán)查找到一個(gè)記錄就給i的值加1.最后 在顯示屏上顯示出i的值.如果查找此段時(shí)間沒(méi)有該司機(jī) 罰單信息,則打印“目前還沒(méi)有該處罰單。void StatisticsTPR( PTPR pHead ) Date d1, d2;charn ame10;i ntindex = 0, i = 0;if( pHead ) printf("請(qǐng)輸入起始時(shí)間:");flushall();scanf("%d %d %d",&d1.m_iYear, &d1.mMonth,& d1.m_iDay );pr

15、intf("請(qǐng)輸入結(jié)束時(shí)間:");flushall();scanf("%d %d %d",&d2.m_iYear, &d2.mMonth,& d2.m_iDay );if( ComDate( &d1, &d2 ) > 0 ) printf( "輸入錯(cuò)誤!n" ); elseprintf("輸入司機(jī):");flushall();scanf("%s",n ame );while( pHead ) pHead = SearchNode_2( pHead,

16、n ame );if( pHead ) if( ComDate( & pHead->m_CDate, &d1 ) >0 &&ComDate( &pHead->m_CDate&d2 )< 0 ) i+; in dex+;printf("%sn",pHead->m_sRec num );pHead = pHead->m_pNext;if(!( index % 30 ) in dex = 0; CONTINUE;printf(”一共有 %d 條記錄 n", i );Else printf

17、(”目前還沒(méi)有該處罰單!" ); 退出模塊:在這個(gè)模塊里,輸入命令0后,若程序發(fā)現(xiàn)文件里有處罰信息,會(huì)相應(yīng)的保存該信息,然后退出程序,若沒(méi)有信息,則會(huì)提示“不能打開(kāi)文件!”,然后退出程序。void ExitTPRSystem( PTPR pHead ) FILE* out; int i;printf("保存數(shù)據(jù).n");if( ( out = fopen( "a.txt", "at") ) = NULL ) printf("不能打開(kāi)文件!" ); CONTINUE; Else while( pHead )

18、 for( i = 0; i < strlen( pHead->m_sRecnum ); i+ )fputc( pHead->m_sRec nu mi, out ); fputc( 'n', out );for( i = 0; i < strlen( pHead->m_sDriname ); i+ ) fputc( pHead->m_sDri namei, out ); fputc( 'n', out );for( i = 0; i < strle n( pHead->m_sCarid ); i+ ) fputc(

19、 pHead->m_sCaridi, out ); fputc( 'n', out );for( i = 0; i < strlen( pHead->m_sTPName ); i+ ) fputc( pHead->m_sTPNamei, out ); fputc( 'n', out );fputc( pHead->m_CDate.m_iYear, out );fputc( ' : out );'n',fputc( pHead->m_CDate.mMon th, out );fputc(''

20、;, out );fputc( pHead->m_CDate.m_iDay, out );fputc( out );fputc( 'n', out );pHead = pHead->m_pNext;fclose( out );DestoryTPR( pHead );printf("保存成功!n");三,上機(jī)操作:1數(shù)據(jù)源(1)處罰單號(hào)01車(chē)牌2001司機(jī)li日期 20090901(2)處罰單號(hào)02車(chē)牌2002司機(jī)zhang日期 20090902(3)處罰單號(hào)03車(chē)牌2003司機(jī)ma日期 20090903(4)處罰單號(hào)04車(chē)牌2004司機(jī)song

21、日期 20090904(5)處罰單號(hào)05車(chē)牌2005司機(jī)chen 期 200909052,運(yùn)行結(jié)果警察wang處罰警察li處罰警察li處罰警察chen 處罰警察ren 處罰日(1)主菜單函數(shù)31 r_ 1Tsinn i t tesIQ£nte* * ! * 流十 hiK * E * 愛(ài)自心息關(guān)息 用口= 口 關(guān)費(fèi) 覗+0 并查并 找名詞 查姓查交單宕祭碼到沙來(lái)的機(jī)通鷹誹a蕃司交車(chē)處統(tǒng)*建刪M很冷-12 3 4 5 6 0旳肌甫請(qǐng)輸入您囪操作:(2)輸入處罰信息eV "C:匚 SDocm>nrt s and Se+t ingsAdBiizii3t:rat ox7

22、4;Dcliiii(;yDiigf eng. B -卜歡迫系到交通處罰魚(yú)管理系統(tǒng)急宅奨自j 關(guān)纂-41VK41 I® *苗-弁 找名詢(xún) Is 草名第碼 ij姝豔#單 的機(jī)適牌gljb 新m交車(chē)處統(tǒng) 建刪數(shù)退血=09 署血2811名20 人人晝口建警日 香渾n誦罰 ,諄.聲虹主匸交矗 (3)按司機(jī)查找并瀏覽相關(guān)處罰信息模塊C: DacuM(m±s and Set±Adainirot桌面Sr®文件夾 DebiU(yDngf one. B息亠=6息關(guān)息 亠一戸址_n S 瀏疥 并查并 找名詢(xún) 查姓查 單名蔡碼 対?rùn)C(jī)通理訕計(jì) 新HJ交牟處統(tǒng) 崖刪數(shù)-R一 12

23、3 4 5 6 0靑輯入您的撲作:(4)按交通警察查找并瀏覽相關(guān)信息模塊>C: D a ciun n± s and SetiFigsVAdaiTiis rator® XSrSlT'fr YDGbuXyDiigf ene. BI息關(guān)息 土沮15. 劇相 畀覽 i 找名詢(xún) i姓查 單茗察碼 細(xì)機(jī)通需計(jì) 新F?交車(chē)處統(tǒng) Am 建艱艱喂1IJ數(shù)A 12 3 4 5 6 0li “揀交S2"的罰-B2月9 紅年 ah名20 -fe - 十您處號(hào)茗奮 入入獸弋妲馳匸 書(shū)諧機(jī)讀訓(xùn)i 一 -一lx i 03朋«=初 :26:雄: 獸!I口腥杠通貧 L- -LrnJfv、(5)按車(chē)牌查詢(xún)并瀏覽相關(guān)信息模塊十 息 f息關(guān)息 僧港口3 K13瀏疥Z并杳并 一一按茗詢(xún)-査姓查 一一單畧需碼 一苗機(jī)連幕計(jì) 一一新司交車(chē)處統(tǒng)一一建息關(guān)息關(guān)藝并査并找茗詢(xún)一査姓查需碼機(jī)通曙新司交車(chē)處統(tǒng). 二 X 二 二2 3 4 -LJ t 02 3 4 -LJ t碼號(hào) W 二牛 的±- 您罟冇-名菁人人聲口狂警日日5月n9 re年VI9C- _- -K命塔2S;繪-(6)刪除處罰單模塊占 * Y

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論