版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、停車場管理系統(tǒng)1題目要求設(shè)有一個可以停放n輛汽車的狹長停車場,它只有一個大門可以供車輛進出。車輛按到達停車場時間的早晚依次從停車場最里面向大門口處停放(最先到達的第一輛車放在停車場的最里面)。如果停車場已放滿n輛車,則后來的車輛只能在停車場大門外的便道上等待,一旦停車場內(nèi)有車開走,則排在便道上的第一輛車就進入停車站。停車站內(nèi)如有某輛車要開走,在它之后進入停車場的車都必須先退出停車站為它讓路,待其開出停車場后,這些車輛再依原來的次序進場。每輛車在離開停車場時,都應(yīng)根據(jù)它在停車場內(nèi)停留的時間長短交費。如果停留在便道上的車未進停車場就要離去,允許其離去,不收停車費,并且仍然保持在便道上等待的車輛的次
2、序。編制一程序模擬該停車場的管理?!净疽蟆恳蟪绦蜉敵雒枯v車到達后的停車位置(停車場或便道上),以及某輛車離開停車場是的停車時間及它應(yīng)該交的費用。2需求分析根據(jù)題目要求,因為停車場是一個單條的序列,可以用結(jié)構(gòu)體實現(xiàn);在程序中,需要知道每輛來車的具體停放位置,應(yīng)提供提示、查找、標記工作。車輛離開要計時計費。另外,每天開始時,停車場要初始化。3總體設(shè)計這個系統(tǒng)可以分為:初始化、有車進入、有車離開、退出四個模塊。4詳細設(shè)計開始顯示一系列選項功能輸入n,判斷n是不是1-4?y 根據(jù)n的值調(diào)用各功能模塊函數(shù)結(jié)束main()函數(shù)體內(nèi)包含了界面選則部分menu(),并單獨抽出來作為一個獨立函數(shù),目的在于
3、系統(tǒng)執(zhí)行每部分模塊后能夠方便返回到系統(tǒng)界面。即main()函數(shù)寫為n如下:void main()/*主函數(shù)*/menu();/*菜單函數(shù)*/菜單函數(shù):void menu()int n,w;doputs(tt*menu*nn);puts(ttt 1.初始化);puts(ttt 2.有車進入);puts(ttt 3.有車離開);puts(ttt 4.退出);puts(nntt*n);printf(please choice your number(1-4): bb);scanf(%d,&n);if(n4) /*對選擇的數(shù)字作判斷*/w=1;getchar();else w=0;while(w=1)
4、;switch(n)case 1:chushi();break; /*初始化函數(shù)*/case 2:jinru();break; /*車輛進入函數(shù)*/case 3:likai();break; /*車輛離開函數(shù)*/case 4:exit(0); /*退出*/初始化模塊設(shè)計:【需求分析】該模塊是將每一天開始的停車場內(nèi)和便道車位清零。首先建立場內(nèi)場外的結(jié)構(gòu)體,結(jié)構(gòu)體內(nèi)成員即車位的狀態(tài)。用循環(huán)實現(xiàn)車位的致零即可。struct changnei/*場內(nèi)車道信息*/int neikong;chnn-1;struct changwai/*場外車道信息*/int waikong;chwm-1;n和m分別是停車
5、場和便道的車位預(yù)設(shè)值,用宏定義。用戶可根據(jù)實際情況改變。#define n 100/*預(yù)設(shè)停車場有100個車位*/#define m 100/*預(yù)設(shè)便道有100個出位*/ void chushi()/*初始化函數(shù)*/int i,j;for(i=0;i=n-1;i+)chni.neikong=0;/*將場內(nèi)車道設(shè)置為空*/for(j=0;j=m-1;j+)chwi.waikong=0;/*將便道車道設(shè)置為空*/printf(nntt已初始化nn);menu();函數(shù)出示化后將回到菜單界面。車輛進入函數(shù):【需求分析】車輛到達后,要指定車輛的停車位置。用戶根據(jù)菜單函數(shù)進入車輛進入模塊。按照每輛車的到
6、達次序給予車輛次序號,由0號開始。車輛信息也建立結(jié)構(gòu)體。struct car/*車輛信息*/int car_num;/*車輛次序號*/int car_arr;/*車輛到達時間*/int car_lef;/*車輛離開時間*/int car_stay;/*車輛停放位置*/carcixuhao;其中,cixuhao是車輛次序號的宏定義:#define cixuhao 1000/*預(yù)設(shè)車輛次序號。不管車輛到達時停在場內(nèi)或便道,均依次設(shè)置一個次序號,由0開始*/給予車輛次序號之后,用循環(huán)判斷停車場是否停滿,再分別給予選擇:場內(nèi)是否已滿已滿,將車停在便道未滿,指定停車場位置void jinru()/*車輛
7、進入函數(shù)*/int i,a;int h=0;printf(nn請輸入該車次序號(從0號開始):);scanf(%d,&a);for(i=0;in;i+)if(chni.neikong=0);/*無車標記0*/if(chni.neikong=1)/*有車標記1*/h=h+1;if(h=n)printf(停車場內(nèi)已停滿,請停在便道上n);else cara.car_stay=h;chnh.neikong=1;printf(該車應(yīng)該停在停車場內(nèi)第道%d(從0道開始記)n,h);printf(請輸入該車進停車場時刻(24小時整點計時):n);scanf(%d,&cara.car_arr);便道上還有車
8、嗎?menu();程序執(zhí)行完后回到菜單。有車離開記錄該車離開時間得到停車時間和費用便道上還有車嗎?n返回主菜單y令其進場輸入次序號和進場時間車輛離開函數(shù):【需求分析】若有一輛車要離開,則需要記錄該車的離開時間,以計算出該車在停車場內(nèi)的停車時間和應(yīng)該繳納的費用。該車離開后,要判斷便道上是否有車等待進入,如有,則將便道上第一輛車停放在停車場內(nèi)最后的位置并記錄好進場時間;若無,則返回菜單。void likai()/*車輛離開函數(shù)*/int i,k,choi,time;double fee;printf(請輸入離開車輛次序號 ,并將此車之后的車先全部退出停車場!);scanf(%d,&i);print
9、f(n請輸入離開車輛的離開時刻(24小時整點計時):n);scanf(%d,&cari.car_lef);fee=d*(cari.car_lef-cari.car_arr);time=cari.car_lef-cari.car_arr;printf(次序號為%d的車停車時間%d小時,應(yīng)收費%f元n,i,time,fee);printf(nnn請讓場內(nèi)退出的車再依次進場!nnn);printf(便道上現(xiàn)在有車嗎?(請選擇1或2)n1.有n2.沒有n);/*因便道上可能沒有車,因此要做選擇*/scanf(%d,&choi);if(choi=2)menu();if(choi=1)printf(請讓便
10、道上的第一輛車進場n);printf(該車次序號為:n);scanf(%d,&k);printf(請輸入該車進場時間:n);scanf(%d,&cark.car_arr);menu();d為預(yù)設(shè)停車場單位小時費用,用宏定義,便于以后修改。#define d 1.2/*預(yù)設(shè)車輛停車費為1.2元每小時*/5上機操作(1) 主菜單函數(shù)(2) 初始化操作(3) 有車進入以上分別舉例0,1,2三個車的進場情況(4) 有車離開若便道上沒車,則退回到主菜單若便道上有車6總結(jié)通過該實例的實習(xí),要求大家進一步理解和運用結(jié)構(gòu)化程序設(shè)計的思想和方法,初步掌握開發(fā)一個小型實用系統(tǒng)的基本方法,學(xué)會調(diào)試較長的程序,學(xué)會利
11、用流程圖表示算法,進一步掌握和提高利用c語言進行程序設(shè)計的能力。7原程序代碼#include#include#include#define n 100/*預(yù)設(shè)停車場有100個車位*/#define m 100/*預(yù)設(shè)便道有100個出位*/#define d 1.2/*預(yù)設(shè)車輛停車費為1.2元每小時*/#define cixuhao 1000/*預(yù)設(shè)車輛次序號。不管車輛到達時停在場內(nèi)或便道,均依次設(shè)置一個次序號,由0開始*/void menu();void chushi();void jinru();void likai();struct car/*車輛信息*/int car_num;/*車輛次
12、序號*/int car_arr;/*車輛到達時間*/int car_lef;/*車輛離開時間*/int car_stay;/*車輛停放位置*/carcixuhao;struct changnei/*場內(nèi)車道信息*/int neikong;chnn-1;struct changwai/*場外車道信息*/int waikong;chwm-1;void main()/*主函數(shù)*/menu();/*菜單函數(shù)*/void menu()int n,w;doputs(tt*menu*nn);puts(ttt 1.初始化);puts(ttt 2.有車進入);puts(ttt 3.有車離開);puts(ttt
13、4.退出);puts(nntt*n);printf(please choice your number(1-4): bb);scanf(%d,&n);if(n4)/*對選擇的數(shù)字作判斷*/w=1;getchar();else w=0;while(w=1);switch(n)case 1:chushi();break;/*初始化函數(shù)*/case 2:jinru();break;/*車輛進入函數(shù)*/case 3:likai();break;/*車輛離開函數(shù)*/case 4:exit(0);/*退出*/void chushi()/*初始化函數(shù)*/int i,j;for(i=0;i=n-1;i+)ch
14、ni.neikong=0;/*將場內(nèi)車道設(shè)置為空*/for(j=0;j=m-1;j+)chwi.waikong=0;/*將便道車道設(shè)置為空*/printf(nntt已初始化nn);menu();void jinru()/*車輛進入函數(shù)*/int i,a;int h=0;printf(nn請輸入該車次序號(從0號開始):);scanf(%d,&a);for(i=0;in;i+)if(chni.neikong=0);/*無車標記0*/if(chni.neikong=1)/*有車標記1*/h=h+1;if(h=n)printf(停車場內(nèi)已停滿,請停在便道上n);else cara.car_stay=
15、h;chnh.neikong=1;printf(該車應(yīng)該停在停車場內(nèi)第道%d(從0道開始記)n,h);printf(請輸入該車進停車場時刻(24小時整點計時):n);scanf(%d,&cara.car_arr);menu();void likai()/*車輛離開函數(shù)*/int i,k,choi,time;double fee;printf(請輸入離開車輛次序號 ,并將此車之后的車先全部退出停車場!);scanf(%d,&i);printf(n請輸入離開車輛的離開時刻(24小時整點計時):n);scanf(%d,&cari.car_lef);fee=d*(cari.car_lef-cari.car_arr);time=cari.car_lef-cari.car_arr;printf(次序號為%d的車停車時間%d小時,應(yīng)收費%f元n,i,t
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年外教服務(wù)合同
- 柜臺租賃合同的稅務(wù)處理
- 工程拆遷房屋合同模板
- 公司股權(quán)承包合同-合同范本
- 項目合作協(xié)議書格式模板
- 專業(yè)內(nèi)部施工承包合同模板
- 2024年二人股權(quán)購買協(xié)議
- 2024合伙開公司合同范本
- 廣告公司經(jīng)營權(quán)買賣合同
- 2024年超市用工協(xié)議樣本
- 成人氧氣吸入療法-中華護理學(xué)會團體標準
- 【S鋼材民營企業(yè)經(jīng)營管理探究17000字(論文)】
- 林木種質(zhì)資源調(diào)查表(新表)
- 蔬菜出口基地備案管理課件
- 子宮異常出血的護理
- 高考英語單詞3500記憶短文40篇
- 《耳穴療法治療失眠》課件
- 詢盤分析及回復(fù)
- 氯化工藝安全培訓(xùn)課件
- 指導(dǎo)巡察工作精細科學(xué)
- 企業(yè)法律知識培訓(xùn)消費者權(quán)益保護實務(wù)
評論
0/150
提交評論