中文字幕第五页-中文字幕第页-中文字幕韩国-中文字幕最新-国产尤物二区三区在线观看-国产尤物福利视频一区二区

C語言怎么實現停車場管理系統

本篇內容介紹了“C語言怎么實現停車場管理系統”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

成都創新互聯專注于雙清企業網站建設,響應式網站設計,商城網站建設。雙清網站建設公司,為雙清等地區提供建站服務。全流程按需網站策劃,專業設計,全程項目跟蹤,成都創新互聯專業和態度為您提供的服務

1.問題描述:停車場內只有一個可停放n輛汽車的狹長通道,且只有一個大門可供汽車進出。汽車在停車場內按車輛到達時間的先后順序,依次由北向南排列(大門在最南端,最先到達的第一輛車停放在停車場的最北端),若車場內已停滿n輛汽車,則后來的汽車只能在門外的便道上等候,一旦有車開走,則排在便道上的第一輛車即可開入;當停車場內某輛車要離開時,在它之后開入的車輛必須先退出車場為它讓路,待該輛車開出大門外,其它車輛再按原次序進入車場,每輛停放在車場的車在它離開停車場時必須按它停留的時間長短交納費用。試為停車場編制按上述要求進行管理的模擬程序。

2.基本要求

(1)以棧模擬停車場,以隊列模擬車場外的便道,按照從終端讀入的輸入數據序列進行模擬管理。(2)每一組輸入數據包括三個數據項:汽車“到達”或“離去”信息、汽車牌照號碼及到達或離去的時刻,對每一組輸入數據進行操作后的輸出數據為:若是車輛到達,則輸出汽車在停車場內或便道上的停車位置;若是車離去;則輸出汽車在停車場內停留的時間和應交納的費用(在便道上停留的時間不收費)。(3)棧以順序結構實現,隊列以鏈表結構實現。(4)按照題意要求獨立進行設計,設計結束后按要求寫出設計報告。

一、代碼塊:

#include <stdio.h>#include <malloc.h>#include <stdlib.h>typedef int ElemType;#define MaxSize 100#define QNODE struct QNodetypedef struct Node //車輛信息{ char AL; int NO; int time;}Node;typedef struct Stack //棧定義{ struct Node data[MaxSize]; int top; int num;}SqStack;QNODE        //隊列節點{ struct Node data; QNODE *next;};typedef struct linkqueue    //隊列結構體定義{ QNODE *front,*rear; int num;}LinkQueue;SqStack *Init_SeqStack() //置空棧{ SqStack *s; s=(SqStack*)malloc(sizeof(SqStack));   s->top=-1; s->num=0; return s;}LinkQueue *Init_LQueue()    //創建空隊列{ LinkQueue *q;   QNODE *p;   q=(LinkQueue*)malloc(sizeof(LinkQueue));   p=(QNODE*)malloc(sizeof(QNODE)); p->next=NULL; q->front=q->rear=p; q->num=0; return q;}int ISEmpty_SeqStack(SqStack *s) //判斷棧是否為空,棧為空返回1{ if(s->top ==-1) return 1; else return 0;}int ISFULL_SeqStack(SqStack *s,int n) //判斷棧是否已滿,若棧滿返回1{ if(s->top==n-1) return 1; else return 0;}int ISEmpty_LQueue(LinkQueue *q) //判斷隊列是否為空,隊列為空返回1{ if(q->front==q->rear) return 1; else return 0;}void IN_Lqueue( LinkQueue *q,struct Node s)  //入隊{ QNODE *p; p=(QNODE*)malloc(sizeof(QNODE)); p->data=s; q->num++; p->next=NULL; q->rear->next =p; q->rear =p;}void Push_SeqStack(SqStack *p,struct Node s)  //入棧{ p->top ++; p->data[p->top]=s; p->num++;}int POP_SeqStack(SqStack *s,struct Node car)//出棧{ SqStack *p; int t;  p=Init_SeqStack(); while(s->data[s->top].NO !=car.NO)//找到車牌號為P.NO的車, {   Push_SeqStack(p,s->data[s->top]); s->top--; s->num--; } t=car.time-s->data[s->top].time; s->top--; s->num--; while(ISEmpty_SeqStack(p)==0) { Push_SeqStack(s,p->data[p->top]); p->top--; p->num--; } return t;}struct Node Out_LQueue(LinkQueue *q)  //出隊{ QNODE *p; p=q->front->next; q->front->next=p->next; q->num --; if( q->front->next==NULL)  q->rear=q->front; return p->data; free(p);}int main(){ SqStack *parkstack;  //parkstack為表示停車場的棧 LinkQueue *parkqueue;    //parkqueue為表示便道的隊列 struct Node car; int n,a=0,t;        //n為停車場棧的最大容量 float f;          //f為每小時收費 parkstack=Init_SeqStack(); parkqueue=Init_LQueue(); //初始界面  printf("***************停車場信息查詢***************\n"); printf("請輸入停車場最大容量n="); scanf("%d",&n); printf("\n請輸入每分鐘收取費用f="); scanf("%f",&f); printf("\n請輸入車輛信息\n");  scanf("%c,%d,%d",&car.AL,&car.NO,&car.time); while(car.AL!='Q') {  if(car.AL=='A' )  {    // 汽車到達的情況   if(ISFULL_SeqStack(parkstack,n)==1) //棧滿的情況   {   IN_Lqueue(parkqueue,car);  //進入隊列等待    printf("這輛車在門外便道上第%d個位置\n",parkqueue->num);   printf("\n");   printf("請輸入車輛信息\n");   }   else   {   Push_SeqStack(parkstack,car); //入棧   printf("這輛車在停車場內第%d個位置\n",parkstack->num);   printf("\n");   printf("請輸入車輛信息\n");   }  }  if(car.AL=='L' )   //汽車離開的情況  {        t=POP_SeqStack(parkstack,car);//出棧  printf("這輛車停留時間為%d,收費為%f。\n",t,f*t);  printf("\n");  printf("請輸入車輛信息\n");    if(ISEmpty_LQueue(parkqueue)==0)  //隊列不為空需要進棧     Push_SeqStack(parkstack,Out_LQueue(parkqueue) );  }  if(car.AL=='P'&&car.NO==0&&car.time==0 )//顯示停車場的車數  {   printf("停車場的車數為%d\n",parkstack->num);    printf("\n");   printf("請輸入車輛信息\n");  }    if(car.AL=='W'&&car.NO==0&&car.time==0 )//顯示候車場的車數  {   printf("候車場的車數為%d\n",parkqueue->num);  printf("\n");  printf("請輸入車輛信息\n");  } scanf("%c,%d,%d",&car.AL,&car.NO,&car.time); } printf("輸入結束\n"); return 1;}

二、運行:

關鍵字:A——arrive;L——leave;P——park;Q——quit;W——wait.

“C語言怎么實現停車場管理系統”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注創新互聯網站,小編將為大家輸出更多高質量的實用文章!

新聞標題:C語言怎么實現停車場管理系統
文章出自:http://www.2m8n56k.cn/article30/ggdjso.html

成都網站建設公司_創新互聯,為您提供面包屑導航、網站建設關鍵詞優化移動網站建設、網頁設計公司、響應式網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:[email protected]。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

綿陽服務器托管
主站蜘蛛池模板: 国产资源精品一区二区免费 | 成年人视频在线免费播放 | 18免费视频| 欧美一级黄视频 | 久久久久999| 国产精品国产国产aⅴ | 亚洲国产第一区二区香蕉日日 | 亚洲精品国产经典一区二区 | 欧美一级毛片俄罗斯 | 另类综合视频 | 久久成人性色生活片 | 三级网站免费看 | 91porny九色国产首页在线 | 一本久道久久综合婷婷 | 亚洲视频在线网站 | 日韩欧美一区二区三区在线观看 | 一级片视频在线 | 欧美18毛片免费看 | 欧美巨大另类极品videohd | 国产日韩精品一区在线不卡 | 性欧美视频a毛片在线播放 性欧美一级 | 国产成人精品三级 | 在线观看一级毛片免费 | 国产一级一片免费播放刺激 | 精品香蕉99久久久久网站 | 欧美午夜精品久久久久久黑人 | 久久精品午夜视频 | 亚洲一级在线 | 亚洲国产欧洲综合997久久 | 一级毛片不卡 | 久久国产精品久久久久久久久久 | 一色屋色费精品视频在线观看 | 成人午夜大片免费看爽爽爽 | 欧美a欧美1级 | 日韩精品一区二三区中文 | 精品久| 伊人久久大香线焦综合四虎 | 美女黄视频在线 | 一级特色大黄美女播放网站 | 一本色道久久爱 | 欧美又粗又硬又大久久久 |