停车场管理链表c语言实现,怎么用C语言写数据结构停车场问题?
1) 問題描述
設(shè)停車場是一個可停放 n 輛汽車的狹長通道,且只有一個大門可供汽車進(jìn)出。汽車在停車場內(nèi)按車輛到達(dá)時間的先后順序,依次由北向南排列(大門在最南端,最先到達(dá)的第一輛車停放在車場的最北端)。若停車場內(nèi)已經(jīng)停滿 n輛車,那么后來的車只能在門外的便道上等候。一旦有車開走,則排在便道上的第一輛車即可開入。當(dāng)停車場內(nèi)某輛車要離開時,在它之后進(jìn)入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其他車輛再按原次序進(jìn)入車場。每輛停放在車場的車在它離開停車場時必須按它停留的時間長短繳納費用。試為停車場編制按上述要求進(jìn)行管理的模擬程序。
2)基本要求
以棧模擬停車場,以隊列模擬車場外的便道,按照從終端讀入數(shù)據(jù)的序列進(jìn)行模擬管理。每一組輸入數(shù)據(jù)包括三個數(shù)據(jù)項:汽車的“到達(dá)”(‘A’表示)或“離去”(‘D’表示)信息、汽車標(biāo)識(牌照號)以及到達(dá)或離去的時刻。對每一組輸入數(shù)據(jù)進(jìn)行操作后的輸出信息為:若是車輛到達(dá),則輸出汽車在停車場內(nèi)或者便道上的停車位置;若是車輛離去,則輸出汽車在停車場停留的時間和應(yīng)繳納的費用(便道上停留的時間不收費)。棧以順序結(jié)構(gòu)實現(xiàn),隊列以鏈表結(jié)構(gòu)實現(xiàn)。
3)測試數(shù)據(jù)
設(shè)n=2,輸入數(shù)據(jù)為:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3, 20),(‘A’,4,25),(‘A’,5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。每一組輸入數(shù)據(jù)包括三個數(shù)據(jù)項:汽車 “到達(dá)”或“離去”信息、汽車牌照號碼及到達(dá)或離去的時刻,其中,‘A’表示到達(dá);‘D’表示離去,‘E’表示輸入結(jié)束。其中:(‘A’,1,5)表示1號牌照車在5這個時刻到達(dá),而(‘D’,1,15)表示1號牌照車在15這個時刻離去。
4)提示
需另設(shè)一個棧,臨時停放為給要離去的汽車讓路而從停車場退出來的汽車。輸入數(shù)據(jù)按到達(dá)或離去的時刻有序。棧中每個元素表示一輛汽車,包含兩個數(shù)據(jù)項:汽車的牌照號碼和進(jìn)入停車場的時刻。
5)輸入輸出:
輸入數(shù)據(jù):程序接受5個命令,分別是:到達(dá)(‘A’,車牌號,時間);離去(‘D’,車牌號,時間);停車場(‘P’, 0, 0)顯示停車場的車數(shù);候車場(‘W’, 0, 0)顯示候車場的車數(shù);退出(‘E’, 0, 0)退出程序。
輸出數(shù)據(jù):對于車輛到達(dá),要輸出汽車在停車場內(nèi)或者便道上的停車位置;對于車輛離去,則輸出汽車在停車場停留的時間和應(yīng)繳納的費用(便道上不收費)。
總結(jié)
以上是生活随笔為你收集整理的停车场管理链表c语言实现,怎么用C语言写数据结构停车场问题?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 网络协议之TCP和UDP
- 下一篇: 99%网赚精准引流技巧!