課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)_第1頁(yè)
課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)_第2頁(yè)
課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)_第3頁(yè)
課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)_第4頁(yè)
課程設(shè)計(jì)-停車場(chǎng)管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩12頁(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)介

1、軟件工程課程設(shè)計(jì)停車場(chǎng)管理系統(tǒng)姓名馮玉顛 李曉梅學(xué) 號(hào) 12033013學(xué) 號(hào) 12033021班級(jí)計(jì)本1班成績(jī)指導(dǎo)教師(簽字) 年 月 日停車場(chǎng)管理系統(tǒng)一、前言二、項(xiàng)目開發(fā)前的準(zhǔn)備工作11 課程設(shè)計(jì)的目的12 課程設(shè)計(jì)的背景和意義121 課程設(shè)計(jì)的背景122 課程設(shè)計(jì)的意義13 課程設(shè)計(jì)環(huán)境5三、需求分析四、系統(tǒng)總體設(shè)計(jì)31、設(shè)計(jì)思路32、系統(tǒng)總體框架圖53、系統(tǒng)流程圖5五、詳細(xì)設(shè)計(jì)71、車輛停車函數(shù)及流程圖72、車輛離開函數(shù)及流程圖83、列表顯示車場(chǎng)信息函數(shù)及流程圖94、列表顯示便道信息105列表顯示菜單函數(shù)及流程圖11六、代碼開發(fā)七、軟件測(cè)試八、總結(jié)12參考文獻(xiàn)12一、引言隨著現(xiàn)代化信息

2、技術(shù)的發(fā)展,人民生活水平快速提高,汽車的數(shù)量也飛速增長(zhǎng),于此同時(shí),停車問(wèn)題越來(lái)越受人們的關(guān)注,為了使停車場(chǎng)有效管理,停車場(chǎng)管理的信息化成為必然。我們可以利用所學(xué)的知識(shí),編寫一個(gè)停車場(chǎng)管理系統(tǒng),以提高管理的效率,提升停車場(chǎng)的競(jìng)爭(zhēng)力。本次課程設(shè)計(jì),我運(yùn)用C語(yǔ)言編寫停車場(chǎng)管理系統(tǒng),主要實(shí)現(xiàn)汽車停車,離開,收費(fèi),停車信息查詢,顯示等功能,主要實(shí)現(xiàn)方式是用棧和隊(duì)列。下面對(duì)棧和隊(duì)列進(jìn)行一下簡(jiǎn)單介紹。棧(stack)是一種僅允許在一端進(jìn)行插入和刪除運(yùn)算的線性表。棧中允許插入和刪除的那一端,稱為棧頂(top)。棧頂?shù)牡谝粋€(gè)元素稱為棧頂元素。棧中不可以插入和刪除的那一端稱為棧底。在一個(gè)棧中插入元素,即把新元素放

3、到當(dāng)前棧頂元素的上面,使其稱為新的棧頂元素,即進(jìn)棧(push)。從一個(gè)棧中刪除一個(gè)元素,即把棧頂元素刪除掉,使其下面的元素成為新的棧頂元素,稱為出棧(pop)。棧遵循后進(jìn)先出的原則,即后進(jìn)棧的元素必先出棧。其中順序棧是利用一組地址連續(xù)的存儲(chǔ)單元依次存放從棧底到棧頂?shù)脑?。在C語(yǔ)言中,可以用一維數(shù)組描述順序棧中數(shù)據(jù)元素的存儲(chǔ)區(qū)域,并預(yù)設(shè)一個(gè)數(shù)組的最大空間。棧底設(shè)置在0下標(biāo)端,棧頂隨著插入和刪除元素而變化,可以用一個(gè)整形變量top來(lái)指示棧頂?shù)奈恢谩j?duì)列是一種限定在表的一端進(jìn)行插人而另一端進(jìn)行刪除的線性表,與棧相反,隊(duì)列遵循先進(jìn)先出的原則。允許刪除的一端,稱為隊(duì)頭(front)。允許插入的一端稱為隊(duì)

4、尾(rear)。向隊(duì)列中插入新的元素稱為入隊(duì),新元素進(jìn)隊(duì)后就成為了新的隊(duì)尾元素;從隊(duì)列中刪除元素,稱為出隊(duì),元素離隊(duì)后,其后繼元素就成為了新的隊(duì)頭元素。其中鏈隊(duì)列就是用鏈表表示的隊(duì)列,需要兩個(gè)分別指示隊(duì)頭和隊(duì)尾的指針(分別稱為頭指針和尾指針)。為了操作方便,給鏈隊(duì)列添加一個(gè)頭結(jié)點(diǎn),并令頭指針指向頭結(jié)點(diǎn),尾指針指向隊(duì)尾元素結(jié)點(diǎn),判斷隊(duì)列為空的條件是頭指針和尾指針均指向頭結(jié)點(diǎn)。停車場(chǎng)的管理系統(tǒng)正好利用棧和隊(duì)列的這些特點(diǎn)來(lái)實(shí)現(xiàn)模擬停車場(chǎng)和便道。停車場(chǎng)管理主要實(shí)現(xiàn)以下幾個(gè)功能:(1)、停車場(chǎng)車位的劃分。(2)、車輛進(jìn)出管理及收費(fèi)功能。(3)、停車場(chǎng)車輛信息查詢功能。(4)、退出系統(tǒng)。二、項(xiàng)目開發(fā)前的準(zhǔn)

5、備工作1、課程設(shè)計(jì)的目的(1)要求學(xué)生能夠熟練掌握C+語(yǔ)言的基本知識(shí)和技能。(2)基本掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的基本思路和方法。(3)能夠利用所學(xué)的基本知識(shí)和技能,解決簡(jiǎn)單的面向?qū)ο蟪绦蛟O(shè)計(jì)問(wèn)題。2、課程設(shè)計(jì)的背景和意義(1)、課程設(shè)計(jì)的背景1. 理論研究基礎(chǔ)(1)分析系統(tǒng)流程,并會(huì)畫出流程圖;(2)熟練掌握C+程序設(shè)計(jì)語(yǔ)言。2. 技術(shù)層面的支持C+面向?qū)ο蟪绦蛟O(shè)計(jì)中的類的聲明與對(duì)象定義的熟練使用;以及繼承、派生的熟練使用。(2)課程設(shè)計(jì)的意義在經(jīng)過(guò)了一個(gè)學(xué)期對(duì)C+程序設(shè)計(jì)的學(xué)習(xí),課程設(shè)計(jì)可以很好的檢驗(yàn)所學(xué)知識(shí),對(duì)自身來(lái)說(shuō),是個(gè)查漏補(bǔ)缺的好時(shí)機(jī),可以將所學(xué)知識(shí)進(jìn)行復(fù)習(xí)與鞏固,將前面所有知識(shí)綜合起來(lái)

6、,很好的聯(lián)系在一起,有機(jī)結(jié)合,形成知識(shí)網(wǎng)絡(luò)體系,將知識(shí)融會(huì)貫通,可以讓自己進(jìn)一步熟練掌握程序設(shè)計(jì)語(yǔ)言,并能熟練運(yùn)用。3、課程設(shè)計(jì)環(huán)境軟件:WindosXP系統(tǒng),Microsoft Visual C+ 6.0編譯器。硬件:聯(lián)想 雙核處理器,二G內(nèi)存,二G獨(dú)立顯卡,80G硬盤。 三、需求分析(1)問(wèn)題描述 系統(tǒng)中的車輛主要有大客車、小轎車和卡車。每種車輛有車輛編號(hào)、車牌號(hào)、車輛制造公司、車輛購(gòu)買時(shí)間、車輛型號(hào)(大客車、小轎車和卡車)、總公里數(shù)、耗油量/公里、基本維護(hù)費(fèi)用、養(yǎng)路費(fèi)、累計(jì)總費(fèi)用等信息。大客車還有載客量(最大載客數(shù))信息,小轎車還有箱數(shù)(兩廂或三廂)信息,卡車還有載重量等信息。本系統(tǒng)主要

7、是運(yùn)用面對(duì)對(duì)象C語(yǔ)言編寫的程序,在本系統(tǒng)中主要定義了一個(gè)Car類,此類為系統(tǒng)的基本類,再由此類派生出三個(gè)子類。整個(gè)系統(tǒng)的所有功能基本是圍繞這三個(gè)子類編寫的。在這三個(gè)子類的基礎(chǔ)上再加以輔助的函數(shù)及基本實(shí)現(xiàn)了整個(gè)系統(tǒng)的功能。(2) 基本要求和目的1)添加車輛:主要完成車輛信息的添加,要求編號(hào)唯一。當(dāng)添加了重復(fù)的編號(hào)時(shí),則提示數(shù)據(jù)添加重復(fù)并取消添加;當(dāng)車輛信息庫(kù)已滿,則提示不能再添加新的數(shù)據(jù)。2)查詢車輛:可按照三種方式來(lái)查詢物品,分別為:按車輛制造公司查詢:輸入車輛制造公司,輸出所查詢的信息,若不存在該記錄,則提示“該車輛制造公司不存在!”;按編號(hào)查詢:輸入編號(hào),輸出所查詢的信息,若不存在該記錄,

8、則提示“該編號(hào)不存在!”;按類別查詢:輸入類別,輸出所查詢的信息,若不存在記錄,則提示“該類別沒(méi)有車輛!”;3)顯示車輛信息庫(kù):輸出當(dāng)前車輛信息庫(kù)中所有車輛信息,每條記錄占據(jù)一行。4)編輯功能:可根據(jù)查詢結(jié)果對(duì)相應(yīng)的記錄進(jìn)行修改,修改時(shí)注意編號(hào)的唯一性。5)刪除車輛:主要完成車輛信息的刪除。如果當(dāng)前車輛信息庫(kù)為空,則提示“車輛信息庫(kù)為空!”,并返回操作;否則,輸入要?jiǎng)h除的編號(hào),根據(jù)編號(hào)刪除該車輛的記錄,如果該編號(hào)不在車輛信息庫(kù)庫(kù)中,則提示“該編號(hào)不存在”。6)統(tǒng)計(jì)信息輸出當(dāng)前車輛信息庫(kù)中總物品數(shù),以及按車輛類別,統(tǒng)計(jì)出當(dāng)前車輛信息庫(kù)中各類別的物品數(shù)并顯示。(3) 軟件需求本程序主要是運(yùn)用C+語(yǔ)

9、言編寫的系統(tǒng)。其功能是對(duì)在庫(kù)的車輛信息進(jìn)行有效的管理,所以該系統(tǒng)主要面對(duì)的是停車場(chǎng)管理員。停車場(chǎng)管理員可以根據(jù)本系統(tǒng)的操作提示完成對(duì)所需要管理的對(duì)象進(jìn)行有效的管理。在本系統(tǒng)中有很多功能,例如可以輸入新的車輛信息,包括車輛的車牌號(hào)碼、購(gòu)買時(shí)間、制作公司、車型、日常所需的費(fèi)用以及油費(fèi)等等。所以本系統(tǒng)不失為一個(gè)管理車輛的有效系統(tǒng),尤其是面對(duì)對(duì)車輛需要有效管理的停車場(chǎng)、車站、二手車交易市場(chǎng)等等。四、系統(tǒng)總體設(shè)計(jì)1、設(shè)計(jì)思路停車場(chǎng)采用棧式結(jié)構(gòu),便道采用隊(duì)列結(jié)構(gòu)(即便道就是等候隊(duì)列)。停車場(chǎng)的管理流程如下:(1)當(dāng)車輛要進(jìn)入停車場(chǎng)時(shí),檢查停車場(chǎng)是否已滿,如果未滿則車輛進(jìn)棧(車輛進(jìn)入停車場(chǎng));如果停車場(chǎng)已滿

10、,則車輛進(jìn)入等候隊(duì)列(車輛進(jìn)入便道等待)。(2)當(dāng)車輛要求出棧時(shí),該車到棧頂?shù)哪切┸囅瘸鰲#ㄔ谒筮M(jìn)入的車輛必須先退出車場(chǎng)為它讓路),在讓該車出棧,其他車輛再按原次序進(jìn)棧(進(jìn)入車場(chǎng))。當(dāng)車輛出棧完畢后,檢查等候隊(duì)列(便道)中是否有車,有車則從隊(duì)頭取出,壓入棧中。用棧模擬停車場(chǎng),用隊(duì)列模擬便道,按照從終讀入的輸人數(shù)據(jù)序列的進(jìn)行模擬管理,每一組輸入數(shù)據(jù)包含三個(gè)數(shù)據(jù)項(xiàng):汽車到達(dá)或汽車離去的信息,汽車車牌號(hào)以及汽車到達(dá)或離去的時(shí)刻。每次輸完,進(jìn)行輸出操作:若是車輛到達(dá),輸出汽車在停車場(chǎng)內(nèi)或者便道上停車的信息;若是車輛離去,輸出停留時(shí)間和需繳納的費(fèi)用(在便道上停留的時(shí)間不收費(fèi)),其中棧以順序結(jié)構(gòu)實(shí)現(xiàn),

11、隊(duì)列以鏈表結(jié)構(gòu)實(shí)現(xiàn)。2、系統(tǒng)總體框架圖停車場(chǎng)管理系統(tǒng)主函數(shù)流程圖列表顯示停車場(chǎng)信息退出系統(tǒng)車輛停車車輛離開車庫(kù)停車便道停車便道信息停車場(chǎng)信息返回主菜單停車位置應(yīng)繳納費(fèi)用停車時(shí)刻離開時(shí)刻停車位置到達(dá)時(shí)刻車牌號(hào)等待中的車牌號(hào)停車時(shí)刻停車位置車牌號(hào)圖1 系統(tǒng)總體框圖3、系統(tǒng)流程圖實(shí)現(xiàn)對(duì)一級(jí)菜單:模擬停車場(chǎng),便道,實(shí)現(xiàn)車輛停車、離開、列表顯示停車場(chǎng)信息、退出系統(tǒng)功能的控制,調(diào)用各個(gè)子函數(shù)。程序流程圖如圖2所示。開始讀取頭函數(shù)判斷輸入的數(shù)字是否為1執(zhí)行第一種情況執(zhí)行其他情況輸入是否為0 跳出頭函數(shù)是否空 結(jié)束YNNYYN圖2主函數(shù)流程圖五、詳細(xì)設(shè)計(jì)1、車輛停車函數(shù)及流程圖車輛停車函數(shù)實(shí)現(xiàn):記錄停車信息包

12、括車輛車牌號(hào)、停車時(shí)刻、停車車位等。其流程如圖3所示開始車輛停車,進(jìn)入函數(shù)輸入車牌號(hào)N停車場(chǎng)車庫(kù)不滿Y車進(jìn)便道輸出車輛停車位置輸入車輛車牌號(hào) 結(jié)束圖3車輛停車流程圖2、車輛離開函數(shù)及流程圖車輛離開函數(shù)主要實(shí)現(xiàn):記錄車輛離開的信息,以及便道上的車是否進(jìn)入車庫(kù)中。其流程如圖4所示。開始N停車場(chǎng)車有車YN1停車場(chǎng)沒(méi)有車Y輸入離開車的車位 車輛離開 輸出該車信息N便道上有車Y便道上車進(jìn)停車庫(kù)顯示便道上沒(méi)有車輸入便道上的車進(jìn)車庫(kù)時(shí)間結(jié)束圖4車輛離開流程圖3、列表顯示車場(chǎng)信息函數(shù)及流程圖該函數(shù)主要判斷停車場(chǎng)是否有車,如果有車就顯示停車場(chǎng)車輛的信息,沒(méi)車顯示無(wú)車。其流程如圖5所示。開始N停車場(chǎng)是否有車Y顯示

13、停車場(chǎng)沒(méi)有車輸出停車場(chǎng)中車輛的信息結(jié)束圖5列表顯示停車場(chǎng)信息流程圖4、列表顯示便道信息判斷便道上是否有車,如果有車,輸出車輛的車牌號(hào),如果沒(méi)有車,顯示無(wú)車,其流程如圖6所示開始N便道是否有車Y顯示便道上沒(méi)有車輸出便道車輛的信息結(jié)束圖6列表顯示便道信息5列表顯示菜單函數(shù)及流程圖示實(shí)現(xiàn)列表顯示功能的控制,調(diào)用顯示停車場(chǎng)信息、便道信息的函數(shù),程序流程圖如圖7所示開始NFlag=1Y輸出車場(chǎng)信息、便道信息、返回主菜單三個(gè)選項(xiàng)N1Y輸入1-2-3選擇的選項(xiàng)N1Y執(zhí)行其他情況執(zhí)行第一種情況跳出結(jié)束圖7列表顯示菜單及流圖六、代碼開發(fā)七、軟件測(cè)試1、2、3、4、5、6、7、8、八、總結(jié)通過(guò)本次課程設(shè)計(jì),我對(duì)數(shù)據(jù)結(jié)構(gòu)的理解進(jìn)一步加深,我理解和掌握了每一段程序代碼的功能及含義,并且能夠?qū)崿F(xiàn)模擬停車場(chǎng)管理的主要功能:利用棧實(shí)現(xiàn)車的入庫(kù)問(wèn)題,利用隊(duì)列完成車在便道上停放的問(wèn)題,主要是通過(guò)棧和隊(duì)列的初始化,調(diào)用等函數(shù)來(lái)模擬停車問(wèn)題。學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu),我學(xué)會(huì)如何將所學(xué)的知識(shí)運(yùn)用到實(shí)際中,解決一些實(shí)際的問(wèn)題,這才是學(xué)習(xí)的根本。當(dāng)然在實(shí)驗(yàn)中我也遇到了不少實(shí)際性的問(wèn)題,比如車輛停車的時(shí)間hour限制在2

溫馨提示

  • 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)論