課程設(shè)計—停車場模擬管理程序的設(shè)計與實現(xiàn)_第1頁
已閱讀1頁,還剩15頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  停車場模擬管理程序的設(shè)計與實現(xiàn)</p><p><b>  一、簡介</b></p><p><b>  1.設(shè)計目的:</b></p><p>  理解線性表的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu),進一步提高使用理論知識指導(dǎo)解決實際問題的能力。</p><p><b>  2.問題的

2、描述:</b></p><p>  設(shè)停車場只有一個可停放幾輛汽車的狹長通道,只有一個大門可供汽車進出。汽車在停車場內(nèi)按車輛到達(dá)的先后順序依次排列,若車場內(nèi)已停滿幾輛汽車,則后來的汽車只能在門外的便道上等候,一旦停車場內(nèi)有車輛開走,則排在便道上的第一輛汽車即可進入;當(dāng)停車場內(nèi)某輛汽車要開走時,由于停車場是狹長的通道,在它之后開入的車輛必須先推出車場為他讓路,待車輛開出大門,為他讓路的車輛再按原次序進入

3、車場。試設(shè)計這樣一個停車場模擬管理程序。</p><p>  二、數(shù)據(jù)結(jié)構(gòu)的設(shè)計:</p><p>  對車的信息的定義,只有一個車牌號</p><p>  定義棧,用于表示車位</p><p>  定義一個隊列,并定義頭尾指針</p><p>  棧s1,s2分別用于表示車位和輔助站,隊列p用于表示便道</p&

4、gt;<p><b>  創(chuàng)建隊列,并初始化</b></p><p>  隊列中元素的輸入與刪除,表示了有車進入便道和離開便道 </p><p>  有車進入停車場:如果有空車位,進入車位;否則,進入便道等候</p><p>  有車離開車位:1進行查找,從棧的最后一位開始找起,不符合的輔助棧;2查找成功,將其出棧,輔助棧汽車重新

5、回到車位中;并使便道上的車進入車位,將車位補滿;3查找失敗,進行下方else,將進入輔助站的車重新返回車位上,并顯示沒有此車</p><p>  顯示停車位信息:1如果車位為空,顯示沒有車2車位上有車,顯示第幾號車位及停放車輛的車牌號</p><p>  數(shù)據(jù)出棧,表示有車離開車位,top和z相應(yīng)減一,并返回棧內(nèi)數(shù)據(jù)的數(shù)量</p><p>  創(chuàng)建棧,數(shù)據(jù)進棧,并有

6、判滿和數(shù)據(jù)計數(shù)器相應(yīng)加一</p><p>  用的是一個switch語句實現(xiàn)輸入不同操作選項,調(diào)用不同的函數(shù),進入不同的操作板塊</p><p>  三、功能(函數(shù))設(shè)計:</p><p>  1車輛進入停車場模塊:</p><p>  ·Arrive函數(shù):有車進入停車廠;</p><p>  ·s

7、->top==maxsize-1:對棧進行判滿,f=0,棧滿,調(diào)用Enlinkqueue函數(shù);f=1,棧不滿,調(diào)用Push函數(shù);</p><p>  ·Push函數(shù):使車進入車位;</p><p>  ·Enlinkqueue函數(shù):車位已滿,使車停入便道,等候進入車位;</p><p>  2車輛離開停車場模塊:</p>&l

8、t;p>  ·Leave函數(shù):有車要離開車位;</p><p>  ·y.num!=x.num:查找車位上是否存在要離開的車,是f=0,不是,f=1;</p><p>  ·n=push(s2,y);y=pop(s1):f=1,不是要離開的車輛,進行此重復(fù)循環(huán),從棧頂依次查找要離開的車輛;</p><p>  ·y=po

9、p(s1);y=pop(s2);f=push(s1,y):f=0,找到了要離開的車輛,出棧,并將進入到輔助棧的車返回車位; </p><p>  ·q->front==q->rear:有空車位,將便道上的車開進車位,n!=0,便道上有車;n=0,便道上沒有車了,用返回值0表示;</p><p>  ·y.num=n;f=push(s1,y):將便道上的車開進

10、車位;</p><p>  3停車場信息顯示模塊:</p><p><b>  四、界面設(shè)計:</b></p><p>  用的是一個switch語句實現(xiàn)輸入不同操作選項,調(diào)用不同的函數(shù),進入不同的操作板塊。</p><p><b>  五、程序設(shè)計:</b></p><p>

11、;<b>  主要函數(shù):</b></p><p>  ·Arrive函數(shù):有車輛進入停車場的實現(xiàn);</p><p>  ·Leave函數(shù):對有車輛要離開停車場的實現(xiàn);</p><p>  ·Pp函數(shù):顯示停車場車位信息;</p><p>  ·Push函數(shù):對元素進棧的操作,即有車

12、輛進入車位的實現(xiàn);</p><p>  ·Pop函數(shù):對元素出棧的操作,即有車輛從車位里出來的實現(xiàn);</p><p>  ·Enlinkqeueu函數(shù):對數(shù)據(jù)進入隊列的操作,即有車輛進入便道的實現(xiàn);</p><p>  ·Delinkqeueu函數(shù):對數(shù)據(jù)出隊列的操作,即有車輛離開便道的實現(xiàn);</p><p> 

13、 編寫代碼期間遇到的問題:</p><p>  1在定義函數(shù)時,定義了多個不同形式的指針,但在使用時發(fā)生那個了錯誤,出現(xiàn)了指針?biāo)感畔㈠e誤;</p><p>  2在車輛進出停車場的實現(xiàn)中,要不斷調(diào)用查找,出棧出棧,隊列上元素的出棧函數(shù);表示車位的棧和輔助棧之間的數(shù)據(jù)轉(zhuǎn)存,隊列中的元素進入便道等操作比較麻煩,需要設(shè)置不同標(biāo)志量和判斷函數(shù)進行出棧進棧函數(shù)的不斷調(diào)用,常會出現(xiàn)錯誤。</p

14、><p><b>  解決辦法:</b></p><p>  查找資料對指針的使用以及各種操作的實現(xiàn)進行了深入了解,先把各部分的函數(shù)保證準(zhǔn)確;在函數(shù)調(diào)用過程中,畫出大致流程圖,對照路程圖進行判斷條件的編寫和函數(shù)的調(diào)用。</p><p><b>  六、運行與測試:</b></p><p>  1、測試的

15、數(shù)據(jù)及其結(jié)果:</p><p>  (1)點擊A進行輸入,分別輸入車牌號1,2,3,4,5;</p><p> ?。?)輸入車牌號6,7,8,車位已滿,多余的車進入便道等待進入車位;</p><p> ?。?)顯示此時停車場的信息;</p><p>  (4)將車位上的車牌號為2和4的車就開除車位;</p><p> 

16、 2、運行與測試期間遇到的問題及其解決辦法。</p><p> ?。?)、問題1:在進行進場出場信息的輸入時,只能進行一次;</p><p>  解決辦法:設(shè)置一個標(biāo)志量flag和swith循環(huán),在每一次操作后返回到操作步驟;</p><p>  (2)、問題2:在進行了車輛開出停車場操作后,不能正確顯示變化后的車位信息;</p><p> 

17、 解決方法:求助同學(xué),添加變量n等,重新調(diào)整顯示信息模塊的函數(shù);</p><p><b>  七、結(jié)論:</b></p><p>  此停車場管理系統(tǒng),可以進行車輛進入停車場和退出停車場以及停車廠內(nèi)部車位停車信息的顯示三個步驟的操作。在車輛進入停車場進入模塊中,如果進入停車場的車輛大于5,即車位里停放的車輛已滿,后面的車自動進入便道等候;在車輛離開停車場模塊中,在查找

18、車輛過程中如果沒有對應(yīng)車輛能夠顯示出“沒有此車”,并有輔助棧保證從車位上出來的車不會改變順序;車位出現(xiàn)空位時,便道上的車能自動進入車位,同時,便道上的車也可以直接離開停車場;停車場信息顯示模塊,能夠顯示停車場車位的信息。并有錯誤操作的信息提示。</p><p>  同樣此程序存在很多,界面不直觀,不能很直觀,清楚地了解停車場管理系統(tǒng);在顯示模塊,沒有顯示出開出停車場車輛的信息,以及便道上的信息。在進一步的開展工作

19、方面,可以添加車輛開出停車場的顯示模塊和便道上車輛信息的顯示,車輛的信息過于簡單,只有一個車牌,可以添加更加詳細(xì)的車輛信息以及添加收費操作等功能。</p><p><b>  八、設(shè)計后的思考:</b></p><p>  不管簡單還是復(fù)雜的程序設(shè)計,都要求扎實的基礎(chǔ)知識,因為各種程序都是由簡單的一塊塊的函數(shù)結(jié)構(gòu)組成的,并加強實踐,從程序的編寫中進一步加強對書本知識的

20、掌握。而且,需要耐心,做程序的編寫時比較枯燥的,會出現(xiàn)許多錯誤,需要我們細(xì)心并耐心的進行修改。</p><p>  課程設(shè)計雖然是個人作業(yè),但也需要同學(xué)之間相互幫助,共同學(xué)習(xí),并不斷探索更合理,更簡潔的途徑來實現(xiàn)程序。</p><p><b>  參考文獻:</b></p><p>  [1]譚浩強,C語言設(shè)計(第三版). 北京: 清華大學(xué)出版

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論