《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)

上傳人:仙*** 文檔編號(hào):27944329 上傳時(shí)間:2021-08-21 格式:DOC 頁(yè)數(shù):22 大?。?87.04KB
收藏 版權(quán)申訴 舉報(bào) 下載
《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)_第1頁(yè)
第1頁(yè) / 共22頁(yè)
《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)_第2頁(yè)
第2頁(yè) / 共22頁(yè)
《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)_第3頁(yè)
第3頁(yè) / 共22頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》 停車(chē)場(chǎng)管理系統(tǒng)(22頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、課 程 設(shè) 計(jì) 報(bào) 告 課程名稱(chēng) 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì) 課題名稱(chēng) 停車(chē)場(chǎng)管理系統(tǒng) 專(zhuān) 業(yè) 信息管理與信息系統(tǒng) 班 級(jí) 信管 0901 學(xué) 號(hào) 200903110122 姓 名 指導(dǎo)教師 2011 年 1 月 09 日 2 湖南工程學(xué)院 課 程 設(shè) 計(jì) 任 務(wù) 書(shū) 課程名稱(chēng) 數(shù)據(jù)結(jié)構(gòu) 課 題 停車(chē)場(chǎng)管理管理系統(tǒng) 專(zhuān)業(yè)班級(jí) 信 管 0901 學(xué)生姓名 學(xué) 號(hào) 200903110202 指導(dǎo)老師 審 批 任務(wù)書(shū)下達(dá)日期 2010 年 1 月 09 日 任 務(wù) 完 成 日 期 2011 年 1 月 20 日 3 一 、 設(shè) 計(jì) 內(nèi) 容 與 設(shè) 計(jì) 要 求 1設(shè)計(jì)內(nèi)容: 問(wèn)題描述設(shè)停車(chē)場(chǎng)只有一個(gè)可停放幾輛汽

2、車(chē)的狹長(zhǎng)通道,且只 有一個(gè)大門(mén)可供汽車(chē)進(jìn)出,汽車(chē)在停車(chē)場(chǎng)內(nèi)按車(chē)輛的先后順序依次排列, 若車(chē)站內(nèi)已停滿(mǎn)汽車(chē),則后來(lái)的汽車(chē)只能在門(mén)外的通道上等停,一旦停車(chē) 場(chǎng)內(nèi)有車(chē)開(kāi)走,則排在通道上的第一輛車(chē)即可進(jìn)入;當(dāng)停車(chē)場(chǎng)內(nèi)某輛車(chē)要 離開(kāi)時(shí),由于停車(chē)場(chǎng)是狹長(zhǎng)的通道,在它之后開(kāi)入的車(chē)輛必須先退出車(chē)站 為它讓路,待該車(chē)輛開(kāi)出大門(mén),為它讓路的車(chē)輛再按原來(lái)次序進(jìn)入車(chē)場(chǎng)。 在這里假設(shè)汽車(chē)不能從便道上開(kāi)走,試設(shè)計(jì)這樣一個(gè)停車(chē)場(chǎng)模擬管理程序。 基本功能 (1) 車(chē)輛成批入站。 當(dāng)一個(gè)停車(chē)場(chǎng)剛開(kāi)始投入運(yùn)行的時(shí)候,會(huì)有很多車(chē)進(jìn)來(lái),因此,要 設(shè)計(jì)一個(gè)函數(shù)來(lái)實(shí)現(xiàn)車(chē)輛批量進(jìn)站。并要檢測(cè)車(chē)輛的數(shù)目是否超過(guò)規(guī)定的 最大容量,給出相關(guān)提示

3、信息。 (2)單個(gè)車(chē)輛入站。 當(dāng)系統(tǒng)正常投入運(yùn)行后,會(huì)有零散的車(chē)輛進(jìn)進(jìn)出出,因此,設(shè)計(jì)一 個(gè)函數(shù)實(shí)現(xiàn)單個(gè)車(chē)輛入站。 (3)車(chē)站內(nèi)信息實(shí)時(shí)顯示。 車(chē)站內(nèi)信息包括兩個(gè) 部分:停車(chē)場(chǎng)內(nèi)停放的車(chē)輛以及在外面通道上等停的車(chē)輛。 (4)車(chē)輛出站。 當(dāng)停車(chē)場(chǎng)內(nèi)車(chē)輛出站后,檢查通道上是否有車(chē)等停,如果有,則要 把排在最前面的車(chē)調(diào)入停車(chē)場(chǎng)內(nèi)。 2設(shè)計(jì)要求: 1) 設(shè)計(jì)正確,方案合理。 2) 界面友好,使用方便。 3) 程序精煉,結(jié)構(gòu)清晰。 4) 設(shè)計(jì)報(bào)告 5000 字以上,含程序設(shè)計(jì)說(shuō)明、系統(tǒng)的功能框圖、流程圖、 4 源程序清單等。 5) 實(shí)際操作過(guò)程中遇到的問(wèn)題及解決方法:設(shè)計(jì)總結(jié)及心得體會(huì)。 6) 上機(jī)演示

4、。 二、進(jìn) 度 安 排 第 19 周 星期一 8 時(shí):00 分11 時(shí):30 分 星期二 8 時(shí):00 分11 時(shí):30 分 星期三 14 時(shí):00 分17 時(shí):30 分 星期四 14 時(shí):00 分17 時(shí):30 分 星期五 8 時(shí):00 分11 時(shí):30 分 第 20 周 星期一 8 時(shí):00 分11 時(shí):30 分 附: 課程設(shè)計(jì)報(bào)告裝訂順序:封面、任務(wù)書(shū)、目錄、正文、評(píng)分、附件(A4 大小的 圖紙及程序清單) 。 正文的格式:一級(jí)標(biāo)題用 3 號(hào)黑體,二級(jí)標(biāo)題用四號(hào)宋體加粗,正文用小四號(hào)宋體;行 距為 22。 正文的內(nèi)容:一、課題的主要功能;二、課題的功能模塊的劃分(要求畫(huà)出模塊 圖) ;三

5、、主要功能的實(shí)現(xiàn)課塊劃畫(huà)塊圖實(shí)(至少要有一個(gè)主要模塊的流程圖) ; 四、程序調(diào)試;五、總結(jié);六、附件(所有程序的源代碼,要求對(duì)程序?qū)懗霰?要的注釋?zhuān)?。 正文總字?jǐn)?shù)要求在 5000 字以上(不含程序源代碼) 。 目 錄 1、緒論 .6 1.1 課程設(shè)計(jì)的目的和意義 .6 2、需求分析 .6 5 2.1、課程設(shè)計(jì)的目的 .6 2.2、課程設(shè)計(jì)的任務(wù) .6 2.4、系統(tǒng)總體設(shè)計(jì)圖 .7 3、詳細(xì)信息 .7 3.1 基本信息 .7 4、詳細(xì)設(shè)計(jì) .7 4.1 問(wèn)題定義 .8 4.2、流程圖及系統(tǒng)測(cè)試 .8 4.2.1、進(jìn)停車(chē)場(chǎng) .8 4.2.2 車(chē)輛離開(kāi) .8 4.3、程序運(yùn)行圖 .9 4.3.1、

6、菜單欄 .9 4.3.2、輸入信息欄 10 4.3.3、出車(chē)欄 .10 4.3.4、顯示欄 .11 5、心得感受 .11 6、附錄 .12 6.1、源程序 .12 6.2、參考文獻(xiàn) .21 7、評(píng)分表 .22 1、緒論 1.1 課程設(shè)計(jì)的目的和意義 當(dāng)代大學(xué)生是一個(gè)特殊的團(tuán)體,他們具有較高知識(shí)修養(yǎng)和較強(qiáng)綜合素質(zhì),但是 他們中的大部分卻不具有與他們能力相符的動(dòng)手能力與就業(yè)競(jìng)爭(zhēng)能力。大學(xué)畢 業(yè)生是新興勞動(dòng)力的組成部分,提高大學(xué)畢業(yè)生就業(yè)工作發(fā)展水平,事關(guān)我國(guó)經(jīng) 濟(jì)社會(huì)可持續(xù)發(fā)展的進(jìn)程 ,高校作為培養(yǎng)大學(xué)生的搖籃,必須責(zé)無(wú)旁貸地承擔(dān) 6 起提高大學(xué)生就業(yè)能力的重任。提高大學(xué)生的就業(yè)能力,不僅需要教師

7、付出辛勤 的勞動(dòng),還需要一套科學(xué)完善的制度作為保障,而高校畢業(yè)生基本情況數(shù)據(jù)庫(kù)管 理系統(tǒng)無(wú)疑是一個(gè)很好的嘗試。本文設(shè)計(jì)的這套數(shù)據(jù)庫(kù)管理系統(tǒng),是綜合日常管 理、實(shí)踐考核、科目成績(jī)統(tǒng)計(jì)、就業(yè)管理等等的綜合性數(shù)據(jù)庫(kù)系統(tǒng)。設(shè)計(jì)學(xué)生 管理這樣一個(gè)系統(tǒng),可以涉及到大多數(shù) MFC 與 C 語(yǔ)言數(shù)據(jù)庫(kù)的重要數(shù)據(jù)庫(kù)對(duì)象、 重要功能和特性,例如:視圖、觸發(fā)器和存儲(chǔ)過(guò)程等。由此,通過(guò)這個(gè)課程設(shè) 計(jì)可以加深學(xué)生對(duì)這些 MFC 與 C 語(yǔ)言數(shù)據(jù)結(jié)構(gòu)知識(shí)的學(xué)習(xí)、理解,積累在實(shí)際 工程應(yīng)用中運(yùn)用各種數(shù)據(jù)庫(kù)對(duì)象的經(jīng)驗(yàn),使學(xué)生掌握使用應(yīng)用軟件開(kāi)發(fā)工具開(kāi) 發(fā)數(shù)據(jù)庫(kù)管理系統(tǒng)的基本方法。在實(shí)用性方面,學(xué)生管理系統(tǒng)是很普遍的一種 應(yīng)用

8、,選擇該系統(tǒng)作為課程設(shè)計(jì)也可以為學(xué)生以后可能遇到的實(shí)際開(kāi)發(fā)提供借 鑒。 2、需求分析 2.1、課程設(shè)計(jì)的目的 運(yùn)用數(shù)據(jù)結(jié)構(gòu)編寫(xiě)一個(gè) C 語(yǔ)言程序,實(shí)現(xiàn)對(duì)停車(chē)場(chǎng)的管理。只要包括:車(chē)輛 到達(dá)時(shí)得信息登記,車(chē)輛離開(kāi)時(shí)得信息記錄及便道的車(chē)輛信息的顯示功能。 2.2、課程設(shè)計(jì)的任務(wù) 該系統(tǒng)實(shí)現(xiàn)以下幾個(gè)功能: 2.21、車(chē)輛到達(dá)信息登記:包括車(chē)牌號(hào),在停車(chē)場(chǎng)停放的位置等; 2.22 、車(chē)輛離開(kāi)信息記錄; 2.23、信息顯示:顯示停車(chē)場(chǎng)內(nèi)和便道內(nèi)的汽車(chē)到達(dá)及位置等信息; 2.3、軟件運(yùn)行和開(kāi)發(fā)工具 1、windows2000 以上操作系統(tǒng) 2、VisualC+6.0 開(kāi)發(fā)環(huán)境 7 2.4、系統(tǒng)總體設(shè)計(jì)圖 3

9、、詳細(xì)信息 3.1 基本信息 車(chē)的車(chē)牌號(hào),到達(dá)時(shí)信息及離開(kāi)時(shí)信息。 4、詳細(xì)設(shè)計(jì) 使 用 Visual C+平 臺(tái) 設(shè) 計(jì) 學(xué) 生 成 績(jī) 管 理 系 統(tǒng) 的 主 框 架 。 4.1 問(wèn)題定義 該程序主要是為了實(shí)現(xiàn)對(duì)車(chē)庫(kù)的管理,為實(shí)現(xiàn)該功能先定義了一個(gè)系統(tǒng)菜單: 停車(chē)場(chǎng)管理系統(tǒng) 車(chē) 輛 到 達(dá) 車(chē) 輛 離 去 便 道 信 息 退 出 信 息 8 (1)添加信息 (4)查找停車(chē)信息 (5)顯示全部信息 (7)顯示統(tǒng)計(jì)數(shù)據(jù) 4.2、流程圖及系統(tǒng)測(cè)試 4.2.1、進(jìn)停車(chē)場(chǎng) 車(chē)輛進(jìn)停車(chē)場(chǎng) 是否有車(chē) 進(jìn)入停車(chē)場(chǎng) 記錄信息 回主菜單 進(jìn)入便道 記錄信息 Y N 圖4.41 進(jìn)停車(chē)場(chǎng)流程 4.2.2 車(chē)輛離

10、開(kāi) 9 車(chē)輛進(jìn)停車(chē)場(chǎng) 是否有車(chē) 進(jìn)入停車(chē)場(chǎng) 記錄信息 回主菜單 進(jìn)入便道 記錄信息 Y N 圖 4.42 車(chē)輛離開(kāi) 4.3、程序運(yùn)行圖 4.3.1、菜單欄 圖 4.31 菜單欄運(yùn)行圖 10 4.3.2、輸入信息欄 圖 4.32 輸入信息欄運(yùn)行圖 4.3.3、出車(chē)欄 11 圖 4.33 出車(chē)欄運(yùn)行圖 4.3.4、顯示欄 圖 4.35 顯示欄運(yùn)行圖 5、心得感受 開(kāi)始時(shí)候的課程設(shè)計(jì)完全沒(méi)有思路,感覺(jué)很迷茫,不知道從何做起。幸好 在課設(shè)之前趙老師給我們做了很詳細(xì)的指點(diǎn),記得在大一的時(shí)候老師就提到過(guò) 她,當(dāng)時(shí)就給我們留下了深刻的印象。是一位很負(fù)責(zé)任的,很有耐心的好老師, 我們很愛(ài)戴趙老師。 課程設(shè)計(jì)是

11、培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題, 鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過(guò)程.隨著 科學(xué)技術(shù)發(fā)展的日新日異,單片機(jī)已經(jīng)成為當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域, 在生活中可以說(shuō)得是無(wú)處不在。因此作為二十一世紀(jì)的大學(xué)來(lái)說(shuō)掌握管理項(xiàng)目 的開(kāi)發(fā)技術(shù)是十分重要的。 回顧起此次圖書(shū)館借書(shū)系統(tǒng)課程設(shè)計(jì),至今我仍感慨頗多,的確,從選題 到定稿,從理論到實(shí)踐,在整整一星期的日子里,可以說(shuō)得是苦多于甜,但是 可以學(xué)到很多很多的東西,同時(shí)不僅可以鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到 12 了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí)。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí) 際相結(jié)合是很重要的

12、,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與 實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的 實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難 重重,這畢竟第一次做的,難免會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程 中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠 牢固,通過(guò)這次課程設(shè)計(jì)之后,一定把以前所學(xué)過(guò)的知識(shí)重新溫故。 在以后會(huì)有更多的課程設(shè)計(jì),我們現(xiàn)在的努力是為了將來(lái)打好基礎(chǔ),趙老師很認(rèn)真的對(duì)待 我們的答辯,這是一種很負(fù)責(zé)任的表現(xiàn),這是要讓我們真正的自己動(dòng)手,了解和掌握一些 基本知識(shí),在以后的工作中做到游刃有余。 這次課

13、程設(shè)計(jì)終于順利完成了,在設(shè)計(jì)中遇到了很多編程問(wèn)題,最后在 趙老師的辛勤指導(dǎo)下,終于游逆而解。同時(shí),在趙錦元老師的身上我學(xué)得到很 多實(shí)用的知識(shí),在次我表示感謝!同時(shí),對(duì)給過(guò)我?guī)椭乃型瑢W(xué)和各位指導(dǎo) 老師再次表示忠心的感謝! 6、附錄 6.1、源程序 #include #include #include #include /常量定義 #define MAX_STOP 5 /定義停車(chē)場(chǎng)最大停車(chē)數(shù) #define MAX_PLATE 10 /定義車(chē)牌號(hào)最大長(zhǎng)度 using namespace std; /使用 std 命名空間 /定義存儲(chǔ)汽車(chē)信息的結(jié)構(gòu)體 13 typedef struct char

14、 license_plateMAX_PLATE; /汽車(chē)牌照號(hào)碼,定義為一個(gè)字符指 針類(lèi)型 char state; /汽車(chē)當(dāng)前狀態(tài),字符 p 表示停放在停車(chē)位上, 字符 s 表示停放在便道上,每輛車(chē)的初始狀態(tài)用字符 i 來(lái)進(jìn)行表示 CAR; /定義模擬停車(chē)場(chǎng)的棧結(jié)構(gòu) typedef struct CAR STOPMAX_STOP; /汽車(chē)信息的存儲(chǔ)空間 int top; /用來(lái)指示棧頂位置的靜態(tài)指針 SeqStack; /定義模擬便道的隊(duì)列結(jié)構(gòu) typedef struct node CAR WAIT; /汽車(chē)信息的存儲(chǔ)空間 struct node *next; /用來(lái)指示隊(duì)列位置的動(dòng)態(tài)指針

15、QNode; /鏈隊(duì)列節(jié)點(diǎn)的類(lèi)型 /定義鏈隊(duì)列的收尾指針 typedef struct QNode *front,*rear; LQueue; /將頭尾指針?lè)庋b在一起的鏈隊(duì) /函數(shù)聲明 int Empty_LQueue(LQueue *q); /判隊(duì)空 int LeaveCheck(SeqStack parking , char *license_plate); /檢查離開(kāi)的車(chē)是 否在停車(chē)場(chǎng)中 int QueueLength(LQueue *q); /判隊(duì)長(zhǎng)度 int Out_LQueue(LQueue * /出隊(duì)操作 int StackEmpty(SeqStack parking); /判斷

16、棧是否為空 int StackFull(SeqStack parking); /判斷棧是否為滿(mǎn) int StackPop(SeqStack /出棧操作 int StackTop(SeqStack parking , char *license_plate); /取棧頂元素 void Car_come(SeqStack /有車(chē)到 來(lái)時(shí)的操作 14 void Car_leave(SeqStack /有車(chē)離開(kāi)的操作 void Display(SeqStack parking); /顯示停車(chē)場(chǎng)內(nèi)的所有信息 調(diào)試時(shí)用 void InitStack(SeqStack /初始化棧 void InitList

17、(LQueue * /初始化隊(duì)列 void In_LQueue(LQueue * /進(jìn)隊(duì)操作 void Input_Check(char *license_plate); /檢驗(yàn)輸入的車(chē)牌是否合法 void StackPush(SeqStack /進(jìn)棧操作 void main() /定義變量 SeqStack parking; LQueue *sidewalk = NULL; char *choice = new char; int flag = 1; /定義一個(gè)變量 判斷是否退出 InitStack(parking); /初始化一個(gè)為空的停車(chē)場(chǎng) InitList(sidewalk); /初始

18、化一個(gè)為空的便道 while(flag) /運(yùn)行界面及功能選擇 coutt*nn; coutt*歡迎來(lái)到王凌鋒的停車(chē)場(chǎng)*nn; coutt| 停車(chē)場(chǎng)模擬管理系統(tǒng) |nn; coutt|-|nn; coutt| |nn; coutt| 有車(chē)到來(lái)時(shí)請(qǐng)按 C 鍵。 |nn; coutt| 有車(chē)要走時(shí)請(qǐng)按 l 鍵。 |nn; coutt| 查看停車(chē)場(chǎng)請(qǐng)按 D 鍵。 |nn; coutt| 要退出系統(tǒng)請(qǐng)按 Q 鍵。 |nn; coutt|-|nn; coutt|*nn; cout請(qǐng)選擇操作:; gets(choice); if(1 != strlen(choice) cout請(qǐng)正確輸入選項(xiàng)!; cont

19、inue; else switch(*choice) case c: case C: Car_come(parking,sidewalk);break; 15 case l: case L: Car_leave(parking,sidewalk);break; case q: case Q: flag=0;break; case d: case D: Display(parking);break; default: cout選擇不正確!請(qǐng)重新選擇!n; /有車(chē)到來(lái)時(shí)的操作 void Car_come(SeqStack /定義變量 cout請(qǐng)輸入車(chē)輛的車(chē)牌號(hào)碼:; Input_Check(lic

20、ense_plate); if(StackFull(parking) /判斷停車(chē)場(chǎng)是否已滿(mǎn),滿(mǎn)則 進(jìn)入便道,不滿(mǎn)進(jìn)入停車(chē)場(chǎng) In_LQueue(sidewalk , license_plate); /進(jìn)入便道 cout停車(chē)場(chǎng)已滿(mǎn)請(qǐng)?jiān)诒愕赖群?您的位置為QueueLength(sidewalk) endl; else StackPush(parking , license_plate); /進(jìn)入停車(chē)場(chǎng) cout請(qǐng)進(jìn)入停車(chē)場(chǎng)中的parking.top+1號(hào)停車(chē)位n; / Display(parking); 16 void Car_leave(SeqStack /定義臨時(shí)停車(chē)場(chǎng) char leave

21、_license_plateMAX_PLATE; /要離開(kāi)的車(chē)牌號(hào) char license_plateMAX_PLATE; /存放從停車(chē)場(chǎng)中讀出來(lái)的車(chē)牌信息 InitStack(tmpparking); /初始化臨時(shí)停車(chē)場(chǎng) if(StackEmpty(parking) /判斷停車(chē)場(chǎng)中是否有車(chē) cout當(dāng)前停車(chē)場(chǎng)中沒(méi)有車(chē)n; return; /退出子函數(shù) cout請(qǐng)輸入要離開(kāi)的車(chē)牌照:; Input_Check(leave_license_plate); cout當(dāng)前停車(chē)場(chǎng)中有parking.top+1輛車(chē)n; if(LeaveCheck(parking , leave_license_pla

22、te) /判斷車(chē)是否在停車(chē)場(chǎng)中 cout您的車(chē)在LeaveCheck(parking , leave_license_plate)號(hào)車(chē)位上n; /車(chē)在停車(chē)場(chǎng)中 while(StackTop(parking , license_plate) cout牌照為license_plate 的車(chē)暫時(shí)退出停車(chē)場(chǎng) parking.top+1 號(hào)位n; StackPush(tmpparking , license_plate); /停車(chē)場(chǎng)中的車(chē)暫時(shí)退出 進(jìn)入臨時(shí)停車(chē)場(chǎng) StackPop(parking); /出棧 cout牌照為license_plate 的車(chē)離開(kāi)停車(chē)場(chǎng) parking.top+1號(hào)位n; S

23、tackPop(parking); /出棧 /將臨時(shí)停車(chē)場(chǎng)中的車(chē)?;赝\?chē)場(chǎng) while(StackEmpty(tmpparking) != 1) StackTop(tmpparking , license_plate); StackPush(parking , license_plate ); cout牌照為license_plate 的車(chē)進(jìn)入停車(chē)場(chǎng) parking.top+1號(hào)位 n; license_plate0 = 0; 17 StackPop(tmpparking); if(parking.top+1 = MAX_STOP-1) /判斷車(chē)離開(kāi)前停車(chē)場(chǎng)是否停滿(mǎn) if(QueueLengt

24、h(sidewalk) /如果停滿(mǎn)則判斷便道上是否有車(chē) /便道中有車(chē) 則從便道中停入停車(chē)場(chǎng) Out_LQueue(sidewalk , license_plate); /出隊(duì) StackPush(parking , license_plate); /入棧 cout在便道中牌照為license_plate 的車(chē)進(jìn)入停車(chē)場(chǎng) parking.top+1號(hào)位n; else /車(chē)不在停車(chē)場(chǎng)中 cout您的車(chē)不在停車(chē)場(chǎng)中!n; /初始化順序棧 void InitStack(SeqStack /判棧空 int StackEmpty(SeqStack parking) if(parking.top = -1)

25、 return 1; else return 0; /判棧滿(mǎn) int StackFull(SeqStack parking) if(parking.top = MAX_STOP-1) return 1; else return 0; /入棧 void StackPush(SeqStack strcpy(parking.STOPparking.top.license_plate , license_plate); parking.STOPparking.top.state = p; 18 /出棧 返回棧頂指針 int StackPop(SeqStack else return parking.t

26、op-; /取棧頂元素 int StackTop(SeqStack parking , char *license_plate ) if(StackEmpty(parking) return 0; else strcpy(license_plate , parking.STOPparking.top.license_plate); return 1; /顯示所有 void Display(SeqStack parking) if(parking.top = -1) printf(停車(chē)場(chǎng)為空n); else while(parking.top != -1) cout車(chē)牌號(hào)為:parking.ST

27、OPparking.top.license_plate; cout,停在parking.top + 1 front=sidewalk-rear = NULL; /入隊(duì) void In_LQueue(LQueue * car_on_sidewalk = (QNode *)malloc(sizeof(QNode); /為新節(jié)點(diǎn)開(kāi)辟新空間 strcpy(car_on_sidewalk-WAIT.license_plate , license_plate); /將數(shù)據(jù)寫(xiě)入節(jié)點(diǎn) car_on_sidewalk-WAIT.state = s; /寫(xiě)入停車(chē)信息 car_on_sidewalk-next =

28、NULL; if(Empty_LQueue(sidewalk) /隊(duì)空則創(chuàng)建第一個(gè)節(jié)點(diǎn) sidewalk-front = sidewalk-rear = car_on_sidewalk; else /隊(duì)非空插入隊(duì)尾 sidewalk-rear-next = car_on_sidewalk; sidewalk-rear = car_on_sidewalk; /判隊(duì)空 int Empty_LQueue(LQueue *q) if(q-front = NULL) return 1; else return 0; /判隊(duì)長(zhǎng)度 返回隊(duì)長(zhǎng) int QueueLength(LQueue *q) QNode

29、*p=q-front; int i=0; while(p != NULL) i+; p=p-next; return i; /出隊(duì) 成功返回 1 隊(duì)空返回 0 int Out_LQueue(LQueue * if(Empty_LQueue(sidewalk) /如果隊(duì)空返回 0 return 0; car_on_sidewalk = sidewalk-front; strcpy(license_plate , car_on_sidewalk-WAIT.license_plate); /取出隊(duì)頭元 素 20 if(sidewalk-front = sidewalk-rear) /隊(duì)中只有一個(gè)元素

30、 sidewalk-front = sidewalk-rear=NULL; /刪除元素 else sidewalk-front = sidewalk-front-next; /隊(duì)頭指針后移 free(car_on_sidewalk); /釋放指針 return 1; /檢查離開(kāi)的車(chē)是否在停車(chē)場(chǎng)中 返回車(chē)在停車(chē)場(chǎng)中位置 不在則返回 0 int LeaveCheck(SeqStack parking,char *license_plate) int flag = parking.top+1; /定義變量記錄當(dāng)前車(chē)在停車(chē) 場(chǎng)中位置 if(StackEmpty(parking) return 0; e

31、lse /查找離開(kāi)車(chē)所在位置 while(parking.top != -1 parking.top-; return flag; /檢驗(yàn)輸入的車(chē)牌是否合法 void Input_Check(char *license_plate) int flag = 1; int i; string tmpstr; while(flag) cintmpstr; getchar(); if(tmpstr.length()MAX_PLATE) for(i=0;i10;i+) license_platei = tmpstr.c_str()i; flag = 0; else cout輸入有誤,請(qǐng)重新輸入:; 21

32、 7、評(píng)分表 計(jì)算機(jī)與通信學(xué)院課程設(shè)計(jì)評(píng)分表 課程名稱(chēng): 數(shù)據(jù)結(jié)構(gòu) 項(xiàng) 目 評(píng) 價(jià) 設(shè)計(jì)方案的合理性與創(chuàng)造性 設(shè)計(jì)與調(diào)試結(jié)果 設(shè)計(jì)說(shuō)明書(shū)的質(zhì)量 答辯陳述與回答問(wèn)題情況 課程設(shè)計(jì)周表現(xiàn)情況 綜合成績(jī) 教師簽名: 日 期: ut2ApOdfXXc02GyBKsKCWw97MrqqWhoj5TL15Zt6jIPYytYCummtARp3v1N5luizi3xh3BhWYreKO8d9g7nmZQoWPJeTLDrw08gVS8DsDQQYGC3cE7moO2tLF0Jf1gK74IUXyBmtIVR97CkrfVqULT5fn2t6MpJR6rbzVPSortZvIj5NB5ndVvSr4iWr1T

33、wLFKgLSPzuhRjQ3CmZU98eUOuijdLSZqPmvrw9zKupxf8WFUG9l2G9277g2rTipa1YpCZEuqxpKBhtVDCooQOzxUz3vJrZmOcijyM62zchmeooTYes8EBMm932tbz2Yo09RtsZEYS8Zrd2Yktj8l6jEAzVAjnfbtryLvsm6oFbfToXVRFFn7OwIYgJlamkUNXJYbz5Rrb7r4VsuR9zpfZFMfsjhcfCA37lNW2VVLRKN7R8psz1BN6oRic5hU5Z6HCxAYqyNPOG8duYbAwqSl20CSg06Dh2sM8HLtgPkIcSkr

34、gOPDpuHBj1LmPk7lYdvC6NNMwL3fwhZFTFVYAARY7lHSSxJ10V3pH3Y19BxYR77Ib7CpZSu2tijqe3hKqkKAu9KSkCpHKXUIKvvyJZpg2YijRkqfbGgOvyqKuxNWI9oMnJtt6QilZxtyrF7d20FbmabcfiixrQKUsVNXBPPFUXyQ1fJSKFSUbkgs2DUVQC9sz4JkbgN4Qqv66pyoARjurNFJ3TxyfclZiEePtwFJthphEipDFNqnR2HjQKV2DzWtMPDJQkBcXmovdsjq CTJagjMdLsKPgaD2s0H0vmZGAHt

35、36gyUEZ7UmANk1ndREuBeqdgrx0venqGnsyIB2ilq3SIQrNL4m56t7Z8Y8da5K0KUpn5Nzg4JvjdtfFHyt82AoGQkXo4VBLmLEiy2P7HtHBho07rCfttxodYDPPdtQsO7wxD0J6fKKlGm4woDzplhtRr2XgqN13hqy59zU1GegDyQniHNTaVSieueFQcYfUCJwd3vk5I7YKmhunDmIZ ut2ApOdfXXc02GyBKsKCWw97MrqqWhoj5TL15Zt6jIPYytYCummtARp3v1N5luizi3xh3BhWYreKO8d9g7nmZQoW

36、PJeTLDrw08gVS8DsDQQYGC3cE7moO2tLF0Jf1gK74IUXyBmtIVR97CkrfVqULT5fn2t6MpJR6rbzVPSortZvIj5NB5ndVvSr4iWr1TwLFKgLSPzuhRjQ3CmZU98eUOuijdLSZqPmvrw9zKupxf8WFUG9l2G9277g2rTipa1YpCZEuqxpKBhtVDCooQOzxUz3vJrZmOcijyM62zchmeooTYes8EBMm932tbz2Yo09RtsZEYS8Zrd2Yktj8l6jEAzVAjnfbtryLvsm6oFbfToXVRFFn7OwIYgJlamkUNXJYbz5

37、Rrb7r4VsuR9zpfZFMfsjhcfCA37lNW2VVLRKN7R8psz1BN6oRic5hU5Z6HCxAYqyNPOG8duYbAwqSl20CSg06Dh2sM8HLtgPkIcSkrgOPDpuHBj1LmPk7lYdvC6NNMwL3fwhZFTFVYAARY7lHSSxJ10V3pH3Y19BxYR77Ib7CpZSu2tijqe3hKqkKAu9KSkCpHKXUIKvvyJZpg2YijRkqfbGgOvyqKuxNWI9oMnJtt6QilZxtyrF7d20FbmabcfiixrQKUsVNXBPPFUXyQ1fJSKFSUbkgs2DUVQC9sz4Jkbg

38、N4Qqv66pyoARjurNFJ3TxyfclZiEePtwFJthphEipDFNqnR2HjQKV2DzWtMPDJQkBcXmovdsjq CTJagjMdLsKPgaD2s0H0vmZGAHt36gyUEZ7UmANk1ndREuBeqdgrx0venqGnsyIB2ilq3SIQrNL4m56t7Z8Y8da5K0KUpn5Nzg4JvjdtfFHyt82AoGQkXo4VBLmLEiy2P7HtHBho07rCfttxodYDPPdtQsO7wxD0J6fKKlGm4woDzplhtRr2XgqN13hqy59zU1GegDyQniHNTaVSieueFQcYfUCJwd3vk5I7YKmhunDmIZ 22

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!