版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
源程序代碼:#include<stdio.h>#include<stdlib.h>#include<iostream.h>#include<time.h>#defineMaxSize5#definefee2#defineL 10000#defineM 20000typedefintElemType;ElemTypetmpnum=0;ElemTypetmptime=0;typedefstruct{ElemTypecar_num[MaxSize];ElemTypecar_time[MaxSize];inttop;}STACK;typedefstructqnode{ElemTypecar_num;ElemTypecar_time;structqnode*next;}QTYPT;typedefstructqptr{QTYPT*front;QTYPT*rear;}SQUEUE;SQUEUELQ;voidInitStack(STACK*S){S->top=-1;)intFull(STACK*S){if(S->top==MaxSize-1){printf("\nStackisfull!Push");return0;)return1;)intPush(STACK*S,ElemTypenum,ElemTypetime){if(S->top==MaxSize-1){printf("\nStackisfull!Push");return0;)S->top++;S->car_num[S->top]=num;S->car_time[S->top]=time;return1;)intEmpty(STACK*S){return(S->top==-1?1:0);)intPop(STACK*S,ElemType*num,ElemType*time){if(Empty(S)){puts("StackisfreePop");return0;)*num=S->car_num[S->top];*time=S->car_time[S->top];S->top—;return1;)intGetTop(STACK*S,ElemType*num,ElemType*time){if(Empty(S)){puts("StackisfreeGettop");)*num=S->car_num[S->top];*time=S->car_time[S->top];return1;)voidInitQueue(SQUEUE*LQ){QTYPT*p=NULL;p=(QTYPT*)malloc(sizeof(QTYPT));p->next=NULL;LQ->front=LQ->rear=p;)intEnQueue(SQUEUE*LQ,ElemTypenum,ElemTypetime){QTYPT*s;s=(QTYPT*)malloc(sizeof(QTYPT));s->car_num=num;s->car_time=time;s->next=LQ->rear->next;LQ->rear->next=s;LQ->rear=s;return1;)intCountQueue(SQUEUE*LQ){inti=1;QTYPT*mfront=NULL;QTYPT*mrear=NULL;mfront=LQ->front;mrear=LQ->rear;while(!(LQ->front==LQ->rear)){i++;LQ->front=LQ->front->next;)LQ->front=mfront;returni;)intEmpty_Q(SQUEUE*LQ){return(LQ->front==LQ->rear?1:0);)intOutQueue(SQUEUE*LQ,ElemType*num,ElemType*time){QTYPT*p;if(Empty_Q(LQ)){puts("QuenueisfreeOutQuenue");return0;)p=LQ->front->next;*num=p->car_num;*time=p->car_time;LQ->front->next=p->next;if(LQ->front->next==NULL)LQ->rear=LQ->front;free(p);return1;)intGetHead(SQUEUE*LQ,ElemType*num,ElemType*time){if(Empty_Q(LQ)){puts("QuenueisfreeGetHead");return0;)*num=LQ->front->next->car_num;*time=LQ->front->next->car_time;return1;)voidsleep(inttime){clock_tgoal;goal=time*(CLOCKS_PER_SEC)+clock();while(goal>clock())(;))intchackinput(STACK*S,intpnum){inti=0;intnum;num=pnum;i=S->top;for(;!(i==-1);i--)if(S->car_num[i]==num)return1;return0;)intchacktime(STACK*S,intptime){returnS->car_time[S->top]<=ptime?1:0;)intdisplaystats(STACK*S,intpinput){voiddisplayhead(void);inti=0;i=S->top;switch(pinput){case10000:(if(!Empty(S))for(;!(i==-1);i--)printf("<===%d時(shí)%d號(hào)車停與%d車位===>\n",S->car_time[i],S->car_time[i],i+1);elsecout<<〃停車場(chǎng)為空〃;printf(〃還有車%d個(gè)位\n”,MaxSize-S->topT);break;)case20000:(displayhead();break;)default:(return1;))return0;)voiddisplayhead(void){cout<<'\n'<<〃<===============CT停車場(chǎng)管理系統(tǒng)===================>"<<endl;cout<<〃<==操作說(shuō)明:*******==>"<<endl;cout<<〃<==A:停車命令*******==>"<<endl;cout<<〃<==D:出車命令***==>"<<endl;cout<<〃<==E:退出程序***==>"<<endl;cout<<〃<==L:顯示停車場(chǎng)內(nèi)狀況〃<<endl;cout<<〃<==============================================>〃<<endl;)voiddisplayChange(STACK*S,ElemTypepnum,intptime){printf(〃(單價(jià)%d元/小時(shí))\n〃,fee);printf(〃<======================電子收據(jù)===================>\n〃);printf(〃<==停車時(shí)間: %d小時(shí)==>\n〃,ptime-tmptime);printf(〃<==車牌號(hào)碼: %d==>\n〃,tmpnum);printf(〃<==應(yīng)收費(fèi)用: %d元==>\n〃,(ptime-tmptime)*fee);printf(〃<====================謝謝=歡迎下次再來(lái)=============>\n〃);printf(〃正在打印收據(jù)請(qǐng)稍等\n〃);for(intcount=1;count<1;count++){printf(〃二〃);fflush(stdout);sleep(1);printf(〃八n〃);sleep(1);)voidwait(char*string){printf(〃%s\n〃,string);for(intcount=1;count<1;count++){printf(〃-〃);fflush(stdout);sleep(1);)printf(〃八n〃);)intoutparkstation(STACK*S1,STACK*TS,ElemTypepnum){intt_num=0;intt_time=0;while(1){Pop(S1,&t_num,&t_time);if(t_num==pnum){tmpnum=t_num;tmptime=t_time;while(!Empty(TS)){Pop(TS,&t_num,&t_time);Push(S1,t_num,t_time);)return1;)Push(TS,t_num,t_time);)return0;)intinparkstation(STACK*S){intparknum;intparktime;printf(〃還有車%d個(gè)位\n〃,MaxSize-S->top-1);printf(〃請(qǐng)輸入車牌號(hào)碼:〃);cin>>parknum;while(chackinput(S,parknum)){printf(〃車牌號(hào)碼重復(fù),請(qǐng)輸入%d1或者其他〃,parknum);cin>>parknum;)printf(〃請(qǐng)輸入停車時(shí)間:〃);cin>>parktime;printf("%d號(hào)車于%d時(shí)??吭?d位\n”,parknum,parktime,S->top+2);Push(S,parknum,parktime);return1;)intinbiandao(SQUEUE*SQ,STACK*S){intparknum;printf(〃對(duì)不起,停車場(chǎng)已滿,請(qǐng)您到便道等待.您將第〃);printf("%d進(jìn)入停車場(chǎng)\n〃,CountQueue(SQ));printf(〃請(qǐng)輸入車牌號(hào)碼:〃);cin>>parknum;while(chackinput(S,parknum)){printf(〃車牌號(hào)碼重復(fù),請(qǐng)輸入%d1或者其他〃,parknum);cin>>parknum;)EnQueue(SQ,parknum,0);return1;)intOutParkingStation(SQUEUE*biandao,STACK*car,STACK*tmp){intparknum=0;intparktime=0;intbuf=0;if(!Empty(car)){displaystats(car,10000);printf(〃請(qǐng)輸入您要調(diào)出的車牌號(hào)碼:〃);cin>>parknum;while(!chackinput(car,parknum)){printf(〃沒(méi)有您要的%d的車牌號(hào)碼,請(qǐng)輸入正確的車牌號(hào)碼:〃,parknum);cin>>parknum;)outparkstation(car,tmp,parknum);printf(〃%d時(shí)%d號(hào)車進(jìn)入停車場(chǎng)\n〃,tmptime,tmpnum);printf(〃請(qǐng)輸入現(xiàn)在的時(shí)間:〃);cin>>parktime;while(!chacktime(car,parktime)){cout<<〃輸入時(shí)間小于停車時(shí)間,請(qǐng)重新輸入:〃;cin>>parktime;)displayChange(car,parknum,parktime);if(biandao->front==biandao->rear){)else(printf("%d號(hào)車位空開(kāi)\口〃,。2)乂0口+2);printf(〃%d時(shí)便道上的%d號(hào)汽車駛?cè)耄號(hào)車位”,parktime,biandao->front->next->car_num,car->top+2);OutQueue(biandao,&parknum,&buf);Push(car,parknum,parktime);)return2;)printf(〃停車場(chǎng)為空\(chéng)口〃);return1;);intmain(intargc,char*agv口){charchance='A';STACKcar;InitStack(&car);STACKtmp;InitStack(&tmp);SQUEUEbiandao;InitQueue(&biandao);loop:while(1){displayhead();cout<<〃=>:〃;cin>>chance;switch(chance){case'A':(wait(〃正在查詢車位,請(qǐng)稍等:〃);if(Full(&car))inparkstation(&car)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度智能城市建設(shè)內(nèi)部股權(quán)轉(zhuǎn)讓協(xié)議范本
- 2025年度商業(yè)空間窗簾設(shè)計(jì)、安裝及后期維護(hù)合同4篇
- 2025年美團(tuán)電商平臺(tái)用戶隱私保護(hù)與數(shù)據(jù)安全協(xié)議
- 2025版小區(qū)房屋裝修智能家居系統(tǒng)安全評(píng)估與認(rèn)證合同2篇
- 2025年度新能源項(xiàng)目用地承包及轉(zhuǎn)讓合同協(xié)議書(shū)4篇
- 2025年度門窗行業(yè)環(huán)保檢測(cè)與認(rèn)證服務(wù)合同4篇
- 二零二五年度外教合同終止與清算協(xié)議合同
- 二零二五年度土地租賃合同(農(nóng)業(yè)開(kāi)發(fā))4篇
- 二零二五年度錨具市場(chǎng)推廣合作合同4篇
- 展會(huì)現(xiàn)場(chǎng)觀眾組織與服務(wù)合同(2025版)2篇
- 2024年秋季學(xué)期學(xué)校辦公室工作總結(jié)
- 鋪大棚膜合同模板
- 長(zhǎng)亭送別完整版本
- 2024年英語(yǔ)高考全國(guó)各地完形填空試題及解析
- 智能養(yǎng)老院視頻監(jiān)控技術(shù)方案
- 你比我猜題庫(kù)課件
- 無(wú)人駕駛航空器安全操作理論復(fù)習(xí)測(cè)試附答案
- 建筑工地春節(jié)留守人員安全技術(shù)交底
- 默納克-NICE1000技術(shù)交流-V1.0
- 蝴蝶蘭的簡(jiǎn)介
- 老年人心理健康量表(含評(píng)分)
評(píng)論
0/150
提交評(píng)論