停車場管理系統C++課程設計報告報告_第1頁
停車場管理系統C++課程設計報告報告_第2頁
停車場管理系統C++課程設計報告報告_第3頁
停車場管理系統C++課程設計報告報告_第4頁
停車場管理系統C++課程設計報告報告_第5頁
已閱讀5頁,還剩41頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、-PAGE . z. - .- -可修編- -科技學院面向對象程序設計課程設計報告學 院:電氣與信息工程學院 專業班級: 計科升2013-01 學生: 廖帥林 學 號: 2015520134 設計地點(單位)_I514_ 設計題目:_ 停 車 場 管 理 系 統 設 計 _ 完成日期: 2016 年 1月 8 日指導教師評語: _ _ _成績(五級記分制):_ _ 指導教師(簽字):_ _ -. z.科技學院課程設計任務書設計題目:停車場管理系統設計學生廖帥林課程名稱面向對象課程設計專業班級計科升2013-01地 點I514起止時間12月28日1月8日設計容及要求1)問題描述定義車輛類,屬性有

2、車牌號、顏色、車型(小汽車、小卡、中卡和大卡)、到達的時間和離開的時間等信息和相關的對屬性做操作的行為。定義一個管理類,完成對停車場的管理。停車場的具體要求:設停車場是一個可停放n輛汽車的狹長通道,且只有一個大門可供汽車進出。汽車在停車場按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車停放在車場的最北端),若車場已停滿n輛汽車,則后來的汽車只能在門外的便道上等待,一旦有車開走,則排在便道上的第一輛車即可開入;每輛停放在車場的車在它離開停車場時必須按它停留的時間長短交納費用。2)功能要求(1)添加功能:程序能夠添加到達停車場的車輛信息,要求車輛的車牌號要唯一,如果添加

3、了重復編號的記錄時,則提示數據添加重復并取消添加。(2)查詢功能:可根據車牌號、車型等信息對已添加的停車場中的車輛信息進行查詢,如果未找到,給出相應的提示信息,如果找到,則顯示相應的記錄信息;(3)顯示功能:可顯示當前系統中所有車輛的信息,每條記錄占據一行。(4)編輯功能:可根據查詢結果對相應的記錄進行修改,修改時注意車牌號的唯一性。(5)刪除功能:主要實現對已添加的車輛記錄進行刪除。如果當前系統中沒有相應的人員記錄,則提示記錄為空!”并返回操作。(6)統計功能:能統計停車場中車輛的總數、按車型、按到達時間進行統計等。3)問題的解決方案根據系統功能要求,可以將問題解決分為以下步驟:(1)應用系

4、統分析,建立該系統的功能模塊框圖以及界面的組織和設計;(2)分析系統中的各個實體及它們之間的關系;(3)根據問題描述,設計系統的類層次;(4)完成類層次中各個類的描述;(5)完成類中各個成員函數的定義;(6)完成系統的應用模塊;(7)功能調試;(8)完成系統總結報告。根據題目要求,運用所學知識,完成設計和實現工作,并按照書寫規,撰寫課程設計報告。設計參數(1)系統分析、設計正確。(2)結果以圖表方式顯示。(3)界面簡潔、美觀。(4)報告格式規。進度要求周一:明確設計任務,學習相關基礎知識周二:熟悉各知識點,進行基礎練習周三:根據題目要求,進行設計和實現周四:根據題目要求,進行設計和實現周五:程

5、序測試參考資料1Richard Johnsonbaugh. Martin Kalin.面向對象程序設計C+語言描述.機械工業.2009年2錢能.+語言程序設計教程.清華大學.2005年其它說明.本表應在每次實施前一周由負責教師填寫二份,院系審批后交院系辦備案,一份由負責教師留用。.若填寫容較多可另紙附后。3.一題多名學生共用的,在設計容、參數、要求等方面應有所區別。教研室主任: 王雙明 指導教師:焦曉軍 2015年1月8-. z.摘要該系統是用C+語言編寫的一個簡單的操作系統,在匯編環境下,用戶可以按照界面的提示,選擇不同的功能。該車庫管理系統主要的設計方法是定義了兩個類(Car和Manage

6、)。Car類中定義了一些Car的基本屬性,得到信息的函數和輸出信息的函數,Manage(管理類)中主要實現車輛信息的添加,刪除,查詢,顯示,統計和修改功能。該系統可以大大的節省管理者的時間和資源,也對所管理的對象的效率是非常高的。關鍵詞:C+ 停車場管理系統 函數 功能目錄 TOC o 1-3 h z u HYPERLINK l _Toc1130 摘要 PAGEREF _Toc1130 III HYPERLINK l _Toc7701 目錄 PAGEREF _Toc7701 IV HYPERLINK l _Toc11362 第一章 軟件需求分析 PAGEREF _Toc11362 1 HYPE

7、RLINK l _Toc29563 1.1 軟件需求 PAGEREF _Toc29563 1 HYPERLINK l _Toc31844 1.2 系統中各功能函數的關系圖 PAGEREF _Toc31844 1 HYPERLINK l _Toc27266 第二章 系統分析與設計 PAGEREF _Toc27266 4 HYPERLINK l _Toc23371 2.1系統運用的語言 PAGEREF _Toc23371 4 HYPERLINK l _Toc5751 2.2類的定義 PAGEREF _Toc5751 4 HYPERLINK l _Toc16268 2.3類中各函數執行的流程圖 PA

8、GEREF _Toc16268 5 HYPERLINK l _Toc27374 2.4 主要函數功能實現 PAGEREF _Toc27374 17 HYPERLINK l _Toc4505 第三章 軟件的實現 PAGEREF _Toc4505 19 HYPERLINK l _Toc3346 第四章 系統的調試 PAGEREF _Toc3346 20 HYPERLINK l _Toc20070 4.1主界面的調試 PAGEREF _Toc20070 20 HYPERLINK l _Toc10396 4.3查詢功能的調試 PAGEREF _Toc10396 22 HYPERLINK l _Toc2

9、1270 4.4編輯功能的調試 PAGEREF _Toc21270 23 HYPERLINK l _Toc11588 4.5統計的調試 PAGEREF _Toc11588 23 HYPERLINK l _Toc17179 4.5刪除的調試 PAGEREF _Toc17179 24 HYPERLINK l _Toc16611 第五章 總結 PAGEREF _Toc16611 25 HYPERLINK l _Toc17488 致 PAGEREF _Toc17488 26 HYPERLINK l _Toc21424 參考文獻 PAGEREF _Toc21424 27-. z.第一章 軟件需求分析1.

10、1 軟件需求本程序是運用C+語言編寫的系統。其功能是對在庫的車輛信息進行有效的管理,所以該系統主要面對的是停車場管理員。停車場管理員可以根據本系統的操作提示完成對所需要管理的對象進行有效的管理。在本系統中有很多功能,例如可以輸入新的車輛信息,包括車輛的車牌、車的顏色、車的入庫時間、車型、停車所交的費用等等。所以本系統不失為一個管理車輛的有效系統,尤其是面對對車輛需要有效管理的停車場、車站、二手車交易市場等等。1.2 系統中各功能函數的關系圖主界面與各功能函數的關系:主界面統計功能刪除功能編輯功能顯示功能查詢功能添加功能圖 1.1 主界面與各功能函數關系圖添加函數功能:不添加,返回主界面添加頁面

11、主界面完成添加判斷不重復則添加繼續添加圖1.2 添加函數功能圖查詢函數功能:完成查詢查詢頁面不再查詢,返回主界面主界面繼續查詢圖1.3 查詢函數功能圖顯示函數功能:顯示界面顯示車庫所有車輛信息圖1.4 顯示函數功能圖主界面庫為空,提示記錄為空主界面 圖1.5 庫為空顯示函數功能圖編輯函數功能:按照提示進行修改輸入的車輛信息有誤,提示記錄不存在編輯功能頁面主界面找到要修改的車輛,并顯示出具體的信息圖1.6 編輯函數功能圖刪除函數功能:主界面刪除車輛功能函數選擇要刪除的車牌號給出提示信息 圖1.7 刪除函數功能圖第二章 系統分析與設計2.1系統運用的語言本系統主要是運用面對對象C+語言所編寫的軟件

12、。運用了類的定義以及一些成員函數等等。本系統中主要運用面對對象C+語言對本系統的主要對象car進行類的定義,然后再運用Manage類的一些函數功能來實現。2.2類的定義其中Car中的類成員如下:表2-1 Car類成員表string number; 車牌號(受保護成員變量)string color;車的顏色(受保護成員變量)string type;車型(受保護成員變量)string intime;車入庫時間(受保護成員變量)string outtime;車出庫時間(受保護成員變量)void setouttime( string s)設置出庫時間函數string Getouttime()得到出庫時

13、間void setnumber( string s)設置車牌號函數string Getnumber()得到車牌號函數void setcolor( string s)設置車的顏色string Getcolor() const得到車得顏色void setintime( string s)設置入庫時間 函數void settype( string s)設置車型函數string Gettype()得到車型原函數string Getintime()得到入庫時間函數void output()輸出成員變量的函數void input()輸入信息的函數Manage中類成員如下:表2-2 Manage類成員表in

14、t count下標(私有成員變量)int capacity最大存儲容量(私有成員變量)bool Add()添加函數Void Display()顯示函數Void Search()查找函數Void Delete()刪除函數Void Edit()編輯函數Void Totle()統計函數Car car500定義一個Car類的對象2.3類中各函數執行的流程圖添加函數流程圖:開始輸入值a判斷車庫是否已滿 Ya是否等于cari.Getnumber()()r()N N N 否 添加到car數組 YCount+1,給出提示信息 結 束 圖22.1添加函數流程圖顯示函數流程圖:開 始判斷count是否為0N提示記

15、錄為空 Y顯示所有車輛總數 結 束2.2顯示函數流程圖編輯函數流程圖: 開始輸入車牌號aa是否等于cai.Getnumber()()er() N Y輸出對應的車信息,并給出提示信息選擇操作 調用修改函數提示修改結果 結 束 2.3 編輯函數流程圖刪除函數流程圖: 開 始輸入要刪除的車牌號a判斷a是否等于cari.Getnumber() N Y刪除并給出提示信息、 結 束2.4 刪除函數流程圖按照本系統的功能,首先定義了一個類Car,其代碼如下:class Carprotected:string number; /車牌號string color; /車的顏色string type; /車型str

16、ing intime; /車的入庫時間string outtime; /車出庫時間 public:void input() coutnumber;coutcolor;couttype;coutintime;coutouttime; void output()cout車牌號:number 車的顏色:color 車型:type 車入庫時間:intime 車出庫時間:outtimeendl;void setintime( string s) intime=s;string Getintime()/得到入庫得到時間函數return intime;void setouttime( string s) o

17、uttime=s;string Getouttime()/得到出庫時間函數return outtime; void setnumber( string s) number=s;string Getnumber()/得到車牌號函數return number;void setcolor( string s)color=s; string Getcolor() const /得到顏色函數 return color;void settype( string s)type=s;string Gettype()/得到類型函數return type;;Manage的定義,其代碼如下:Class Manage

18、Car car500;/定義一個存放的數組int count;/下標int capacity;/最大存儲容量public:Manage( int capa=500,int ct=0) capacity=capa; count=ct; Manage()bool Add()/添加函數string a;/定義存儲需添加的車牌號的變量cout請輸入你要添加車輛的信息endl; couta;if(count=capacity) /判斷容量是否已滿cout車庫已滿endl;return true;for(int i=0;icount;i+)/判斷不重復添加 if(a=cari.Getnumber() co

19、ut本車輛已經添加!endl;return true;carcount+.input();cout添加成功endl;return true;void Search()/查找函數 cout請輸入你要查詢車輛信息的方式: 1.按車牌號進行查詢 2.按車型進行查詢A;string B;string C;if(count=0)cout記錄為空!endl;switch(A)case 1: coutB; for(int i=0;icount;i+) if(B=cari.Getnumber() cari.output(); break; cout記錄為空!endl; ;break;case 2: coutC

20、; for(int i=0;icount;i+) if(C=cari.Gettype() cari.output(); break; cout記錄為空!endl; ;break;void Display()/顯示全部車輛信息函數 if(count=0)cout記錄為空endl;for(int i=0;icount;i+) cari.output();bool Edit()/修改函數string a;/定義存儲需添加的車牌號的變量int c;/可以選擇多方式修改string d;/要修改的對應的參數int b;couta; for(int i=0;icount;i+)if(a=cari.Getn

21、umber() cari.output(); b=i; break; cout記錄為空!endl;cout0.修改車牌號 1.修改顏色 2.修改車型 3.修改入庫時間 4.修改出庫時間 5.退出修改界面endl;coutc; switch(c) case 0: coutd; carb.setnumber(d); cout修改成功!endl; break; case 1: coutd; carb.setcolor(d); cout修改成功!endl; break; case 2: coutd; carb.settype(d); cout修改成功!endl; break; case 3: cout

22、d; carb.setintime(d); cout修改成功!endl; break; case 4: coutd; carb.setouttime(d); cout修改成功!endl; break; case 5: cout你已成功退出修改界面endl; break; return true;void Delete()/刪除函數 string a;cout請輸入你要刪除車輛的信息:endl;couta;if(count=0)cout記錄為空!endl; for(int i=0;icount;i+) if(a=cari.Getnumber() for(int j=i;jcount-1;j+)/

23、查找到刪除并進行移位carj=carj+1;cout刪除成功endl;count-;break; 2.4 主要函數功能實現另外一些需要一些函數來完成二級頁面的界面顯示,其代碼如下:void Add1()int b;/編號cout*endl;cout* *endl;cout 1.添加車輛具體信息 endl;cout 0.退出添加功能界面 endl;coutb;switch(b) case 1:a.Add();break; case 0:cout你已成功退出添加功能界面 endl;break;void Search1()int b;/編號cout*endl;cout* *endl;cout 1.查

24、找車輛具體信息 endl;cout 0.退出查詢功能界面 endl;coutb;switch(b) case 1: a.Search();break; case 0: cout你已成功退出查詢功能界面endl;break;void Display1()int b;/編號cout*endl;cout* *endl;cout 1.顯示車輛具體信息 endl;cout 0.退出顯示功能界面 endl;coutb;switch(b) case 0: cout你已成功退出顯示功能界面 endl;break; case 1: a.Display();break;void Delete1()int b;/編

25、號cout*endl;cout* *endl;cout 1.刪除車輛具體信息 endl;cout 0.退出刪除功能界面 endl;coutb;switch(b) case 0:cout你已成功退出刪除功能界面 endl;break; case 1:a.Delete();break;void Edit1()int b;/編號cout*endl;cout* *endl;cout 1.編輯車輛具體信息 endl;cout 0.退出編輯功能界面 endl;coutb;switch(b) case 0:cout你已成功退出編輯功能界面endl;break; case 1:a.Edit();break;v

26、oid Totle1()int b;/編號cout*endl;cout* *endl;cout 1.統計車輛具體總數 endl;cout 0.退出統計功能界面 endl;coutb;switch(b) case 0:cout你已成功退出統計功能界面 endl;break; case 1:a.Totle();break;第三章 軟件的實現主函數主要代碼如下:Manage a;/定義一個Managede的全局對象int main()cout*歡迎進入華瑞車庫管理系統*endl;int a;/選擇功能序號 do cout*請選擇你需要的功能*endl; cout*endl; cout* 1.添加車輛信息功能 *endl; cout* 2.查詢車輛信息功能 *endl; cout* 3.顯示車輛信息功能 *endl; cout* 4.刪除車輛信息功能 *endl; cout* 5.修改車輛信息功能 *endl; cout* 6.統計車庫車輛數功能 *endl; cout* 0.退出功能界面 *endl; cout請輸入你的選擇:a; switch(a) case 0:co

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論