停車場(chǎng)管理系統(tǒng)_第1頁
停車場(chǎng)管理系統(tǒng)_第2頁
停車場(chǎng)管理系統(tǒng)_第3頁
停車場(chǎng)管理系統(tǒng)_第4頁
停車場(chǎng)管理系統(tǒng)_第5頁
免費(fèi)預(yù)覽已結(jié)束,剩余13頁可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、滁州學(xué)院課程設(shè)計(jì)報(bào)告課程名稱:數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)報(bào)告停車場(chǎng)管理問題別:計(jì)算機(jī)科學(xué)與技術(shù)系業(yè):計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)別:起止日期:2011年5月20日2011年6月20日指導(dǎo)教師:楊斌計(jì)算機(jī)科學(xué)與技術(shù)系二O一年制課程設(shè)計(jì)題目停車場(chǎng)管理問題組長(zhǎng)康金山學(xué)號(hào)2010211097班級(jí)計(jì)科101系別計(jì)算機(jī)科學(xué)與技 術(shù)系專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)組員吉國(guó)燕、任祥、徐晟凱指導(dǎo)教師楊斌課程設(shè)計(jì)目的深入理解數(shù)據(jù)結(jié)構(gòu)的基本理論,掌握數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)的設(shè)計(jì)方法,掌握數(shù)據(jù)結(jié)構(gòu)基于的各種操作的實(shí)現(xiàn)方法課程設(shè)計(jì)所需環(huán)境Microsoft Visual C+ 6.0課程設(shè)計(jì)任務(wù)要求用數(shù)據(jù)結(jié)構(gòu)的基本理論和數(shù)據(jù)存儲(chǔ)的設(shè)計(jì)方法完成一個(gè)實(shí)際應(yīng)

2、用 問題,在完成程序設(shè)計(jì)的同時(shí)能夠?qū)懗霰容^規(guī)范的設(shè)計(jì)報(bào)告課程設(shè)計(jì)工作進(jìn)度計(jì)劃序號(hào)起止日期工作內(nèi)容分工情況15.20-5.23整體思路編寫以及修改代 碼編寫。康金山25.23-5.26主函數(shù)的編寫任祥35.23-5.26數(shù)據(jù)的保存徐晟凱45.23-5.26數(shù)據(jù)的計(jì)算及輸出吉國(guó)燕指導(dǎo)教師簽字:年月日教研室審核意見:教研室主任簽字:年月日1引言2需求分析2.1問題描述2.2設(shè)計(jì)思路2.3運(yùn)行環(huán)境及開發(fā)工具3概要設(shè)計(jì)3.1流程圖3.2主要數(shù)據(jù)結(jié)構(gòu).3.3函數(shù)及其實(shí)現(xiàn)的功能4詳細(xì)設(shè)計(jì)4.1程序代碼5調(diào)試與操作說明5.1操作說明6課程設(shè)計(jì)總結(jié)與體會(huì)7.致謝8.參考文獻(xiàn)目錄101111課程設(shè)計(jì)的主要內(nèi)容數(shù)據(jù)

3、結(jié)構(gòu)主要介紹一些最常用的數(shù)據(jù)結(jié)構(gòu),闡明各種數(shù)據(jù)結(jié)構(gòu)內(nèi)在的邏輯關(guān)系,討論 其在計(jì)算機(jī)中的存儲(chǔ)表示,以及在其上進(jìn)行各種運(yùn)算時(shí)的實(shí)現(xiàn)算法,并對(duì)算法的效率進(jìn)行簡(jiǎn)單 的分析和討論。數(shù)據(jù)結(jié)構(gòu)是介于數(shù)學(xué)、計(jì)算機(jī)軟件和計(jì)算機(jī)硬件之間的一門計(jì)算機(jī)專業(yè)的核心 課程,它是計(jì)算機(jī)程序設(shè)計(jì)、數(shù)據(jù)庫、操作系統(tǒng)、編譯原理及人工智能等的重要基礎(chǔ),廣泛的 應(yīng)用于信息學(xué)、系統(tǒng)工程等各種領(lǐng)域。2 需求分析2.1問題描述題目、停車場(chǎng)管理問題設(shè)有一個(gè)可以停放n輛汽車的狹長(zhǎng)停車場(chǎng),它只有一個(gè)大門可以供車輛進(jìn)出。車輛按到達(dá)停車場(chǎng)時(shí)間的早晚依次從停車場(chǎng)最里面向大門口處停放(最先到達(dá)的第一輛車放在停車場(chǎng)的最里面)。如果停車場(chǎng)已放滿n輛車,則后

4、來的車輛只能在停車場(chǎng)大門外的便道上等待,一 旦停車場(chǎng)內(nèi)有車開走,則排在便道上的第一輛車就進(jìn)入停車場(chǎng)。停車場(chǎng)內(nèi)如有某輛車要開走,在它之后進(jìn)入停車場(chǎng)的車都必須先退出停車場(chǎng)為它讓路,待其開出停車場(chǎng)后, 這些車輛再依原來的次序進(jìn)場(chǎng)。每輛車在離開停車場(chǎng)時(shí), 都應(yīng)根據(jù)它在停車場(chǎng)內(nèi)停留的時(shí)間長(zhǎng)短交費(fèi)。如果停留在便道上的車未進(jìn)停車場(chǎng)就要離去,允許其離去,不收停車費(fèi),并且仍然保持在便道上等待的車輛的次序。編制一個(gè)程序模擬該停車場(chǎng)的管理。實(shí)現(xiàn)要求要求程序輸出每輛車到達(dá)后的停車位置(停車場(chǎng)或便道上),以及某輛車離開停車場(chǎng)時(shí)應(yīng)交納的費(fèi)用和它在停車場(chǎng)內(nèi)停留的時(shí)間。實(shí)現(xiàn)提示汽車的模擬輸入信息格式可以是:(到達(dá)/離去,汽車

5、牌照號(hào)碼,到達(dá)/離去的時(shí)刻)。例如,( A , 1, 5)表示1號(hào)牌照車在5這個(gè)時(shí)刻到達(dá),而( D', 5, 20)表示5號(hào)牌 照車在20這個(gè)時(shí)刻離去。整個(gè)程序可以在輸入信息為( ,0, 0)時(shí)結(jié)束。本題可用棧和隊(duì)列來實(shí)現(xiàn)。2.2設(shè)計(jì)思路構(gòu)造三個(gè)主要的結(jié)構(gòu)體 分別保存不同的數(shù)據(jù),第一個(gè)用于保存 車輛停在停車場(chǎng)的車輛, 第二個(gè)用于保存停在便道的車輛,第三用保存要離開的車輛,然后設(shè)計(jì)程序首先要把輸入的數(shù) 據(jù)分別保存在相應(yīng)的結(jié)構(gòu)體里,例如當(dāng)停車場(chǎng)里沒有停滿時(shí)車輛要停在停車場(chǎng),因此該車輛的 相應(yīng)數(shù)據(jù)要存第一個(gè)結(jié)構(gòu)體里,相反要是滿了就要保存在第二個(gè)結(jié)構(gòu)體里,要離開的車輛要保存在第三結(jié)構(gòu)體里,同時(shí)

6、也用到隊(duì)列棧,當(dāng)數(shù)據(jù)輸入完整后運(yùn)行程序,輸出要求輸出的數(shù)據(jù)。最后要對(duì)車輛位置進(jìn) 行調(diào)整就可以了。2.3運(yùn)行環(huán)境及開發(fā)工具運(yùn)行環(huán)境 Microsoft Visual C+ 6.0 ;開發(fā)工具 C/C+3 概要設(shè)計(jì)3.1流程圖主菜單輸入記錄保存進(jìn)車I出車1修改T退出3.2主要數(shù)據(jù)結(jié)構(gòu)typ edef struct/*用于保存每輛車的信息*/char ch;int chehao;int time;node;typ edef struct/*用保存停在停車場(chǎng)的車輛*/int lengh;/*記錄車輛的個(gè)數(shù)*/node numn;queue;typ edef struct/*用于保存每輛車的信息*/ch

7、ar ch1;int che pai;int time1;node1;typ edef struct/*保存停在便道的車輛*/int fron t,reare;node1 numb20;squeue;typ edef struct/*用于保存每輛車的信息*/char ch2;int che ph;int time;n ode2;typ edef struct/*保存要離開的車輛*/int top;ode2 number30;stack1;3.3函數(shù)及其實(shí)現(xiàn)的功能void create(queue &chechang,squeue &biandao,stack1 &dep

8、arture)用于創(chuàng)建結(jié)構(gòu)體以及輸入輸出要求輸出的數(shù)據(jù),void xugai(queue &checha ng,squeue & bia ndao,stack1&dep arture);對(duì)離開的車輛進(jìn)行刪除在相應(yīng)結(jié)構(gòu)體的信息以及將可能停在便道上的車輛的信息移到停車場(chǎng)的結(jié)構(gòu)體里相應(yīng)位置。4 詳細(xì)設(shè)計(jì)4.1程序代碼#in clude"iostream.h" #defi ne n 10 typ edef structchar ch;int chehao;int time;node;typ edef structint lengh;node numn;que

9、ue;typ edef structchar ch1;int che pai;int time1;node1;typ edef structint fron t,reare;node1 numb20;squeue;typ edef structchar ch2;int che ph;int time;n ode2;typ edef structint top;node2 number30;stack1;void mai n()queue checha ng;squeue bia ndao;stack1 dep arture;void create(queue &checha ng,sq

10、ueue &bia ndao,stack1 &dep arture);void xugai(queue &checha ng,squeue &bia ndao,stack1 &dep arture);create(checha ng,bia ndao,de parture);xugai(checha ng,bia ndao,de parture);void create(queue &checha ng,squeue &bia ndao,stack1 &dep arture)char ch;int che pai;int time

11、;int i,j,k;checha ng.le ngh=0;bia ndao.fr on t=-1;bia ndao.reare=-1;dep arture.t op=-1;cout<<"請(qǐng)輸入數(shù)據(jù)例如A 1 4"cout<<e ndl;cin> >ch>>che pai>>time;while(ch!='E'|che pai!=0|time!=0)if(ch='A '&&checha ng.le ngh<=n-1)checha ng.nu mchecha ng

12、.le ngh.ch=ch;checha ng.nu mchecha ng.le ngh.chehao=che pai;checha ng.nu mchecha ng.le ngh.time=time;checha ng.len gh+;else if(ch='A '&&checha ng.le ngh> n-1)bia ndao.reare+;bia ndao .nu mbbia ndao.reare.ch仁ch;bia ndao .nu mbbia ndao.reare.che pai=che pai;bia ndao .nu mbbia ndao.r

13、eare.time1=time;elsedep arture.t op+;dep arture .nu mberde parture.t op .ch2=ch;dep arture .nu mberde parture.t op .che ph=che pai;dep arture .nu mberde parture.t op .time=time;cin> >ch>>che pai>>time;cout<<"停在停車場(chǎng)的車 車牌號(hào)停車時(shí)刻”<<endl;for(i=0;i<checha ng.len gh;i+)c

14、out<<checha ng.nu mi.chehao<<" "<<checha ng.nu mi.time;cout<<""cout<<e ndl;cout<<"停在便道的車 車牌號(hào) 停車時(shí)刻"<<endl;for(i=0;i<bia ndao.reare+1;i+)cout<<bia ndao .nu mbi.che pai<<" "<<bia ndao .nu mbi.time1;co

15、ut<<".H.cout<<e ndl;cout<<"車牌號(hào)停車費(fèi)用停車時(shí)間”<<endl;cout<<e ndl;for(i=0;i<=de parture.t op ;i+)for(j=0;j<checha ng.len gh;j+)if(de parture .nu mberi.che ph=checha ng.nu mj.chehao)k=2*(de parture .nu mberi.time-checha ng.nu mj.time);cout<<checha ng.nu mj.

16、chehao;cout<<""cout<<k;cout<<""cout<<k/2;cout<<e ndl;for(i=0;i<=de parture.t op ;i+)for(j=0;j<=bia ndao.reare;j+)if(de parture .nu mberi.che ph=bia ndao .nu mbj.che pai)k=de parture .nu mberi.time-bia ndao .nu mbj.time1;cout<<bia ndao .nu

17、 mbj.che pai;cout<<"H.cout<<"0"cout<<""cout<<k;cout<<e ndl;void xugai(queue &checha ng,squeue &bia ndao,stack1 &dep arture) int i,j,k;for(i=0;i<=de parture.t op ;i+)for(j=0;j<bia ndao.reare;j+)if(de parture .nu mberi.che ph=bia

18、 ndao .nu mbj.che pai)while(j<bia ndao.reare-1)bia ndao .nu mbj=bia ndao .nu mbj+1;j+;bia ndao.reare-;for(i=0;i<=de parture.t op ;i+)for(j=0;j<checha ng.len gh;j+)if(de parture .nu mberi.che ph=checha ng.nu mj.chehao)while(j<checha ng.le ngh-1)checha ng.nu mj=checha ng.nu mj+1;j+;if(bia

19、ndao.fr on t=bia ndao.reare)checha ng.le ngh-;elsek=checha ng.len gh-1;checha ng.nu mk.ch=bia ndao .nu mbbia ndao.fro nt+1.ch1;checha ng.nu mk.chehao=bia ndao .nu mbbia ndao.fro nt+1.che pai;checha ng.nu mk.time=de parture .nu mberi.time;5 調(diào)試與操作說明5.1操作說明輸入相應(yīng)的數(shù)據(jù)例如(A 1 4)代表進(jìn)車輛,(D 3 4)代表要離開的車輛,然后以 E 0

20、0,為結(jié)束條件。AD129A2O30A45運(yùn)行結(jié)果A停在在停車場(chǎng)的車車牌號(hào)停車時(shí)刻D1129; 2 3 ; 4 5 ; 3 6 ;E車牌號(hào)停車費(fèi)用停車時(shí)間 5右運(yùn)7亍結(jié)果停在e停車場(chǎng)的車to車牌號(hào)e停車時(shí)刻1 2; 2 3; 4 5; 3 6 ;車牌號(hào) 停車費(fèi)用停車時(shí)間(2 )運(yùn)行結(jié)果圖1 14 7P ress ang key to con ti nue6 課程設(shè)計(jì)總結(jié)與體會(huì)1)編程的核心是算法結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)又包括邏輯結(jié)構(gòu)和物理結(jié)構(gòu),編程中要時(shí)刻注意 這些問題。2 )調(diào)試過程遠(yuǎn)遠(yuǎn)比編程過程繁瑣,需要足夠的耐心對(duì)一個(gè)個(gè)錯(cuò)誤進(jìn)行修改直至完全正確。并 且調(diào)試過程也需要一定的技巧,能夠選取適當(dāng)?shù)膶?shí)驗(yàn)數(shù)據(jù)對(duì)程序進(jìn)行驗(yàn)證,找到出錯(cuò)的 地方以進(jìn)行修正。我這次的課程設(shè)計(jì)題目是關(guān)于停車場(chǎng)問題的,總體來說,這個(gè)題目還是比較簡(jiǎn)單的,主要是運(yùn)用了棧和隊(duì)列的一些知識(shí)和操作。也沒有用到其他太多的數(shù)據(jù)結(jié)構(gòu)知識(shí)。程序基本 上還是能夠運(yùn)行,結(jié)果也正確,能夠?qū)崿F(xiàn)那些基本的車輛到達(dá)、離開、收費(fèi)、遍歷顯示等主要功能。但我覺得這個(gè)程序還有很多小的地方是可以完善的,比如:在輸入登記車輛到達(dá)時(shí)023,分鐘 060);這就使間的時(shí)候,沒有相關(guān)的小時(shí)、分鐘數(shù)字的限制范圍一一(小時(shí)這樣就可能會(huì)導(dǎo)致程序不那么健壯了,還有,在計(jì)算收費(fèi)時(shí)如果離開時(shí)間

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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)論