今天道尔智控就给我们广大朋友来聊聊停车场系统维保手册,以下1个关于停车场管理系统维护保养记录的观点希望能帮助到您找到想要的答案。
广州智能停车场管理系统预算
贡献用户名:【不知我者怎居我心*】 ,现在由道尔智控小编为你详解与【停车场系统维保手册】的相关内容!
贡献者回答#include<iostream>
using namespace std;
typedef struct{
int number;
int time;
}car;
typedef struct{
car *base;
car *top;
int stacksize;
}sqstack;
void Initstack(sqstack *s){
s->base=(car *)malloc(sizeof(car));
if(!s->base) exit(-1);
s->top=s->base;
s->stacksize=0;
}
void push(sqstack *s,car e){
*s->top++=e;
s->stacksize++;}
car pop(sqstack *s){
car e;
if(s->top==s->base)
{cout<<"停车场内没有该车辆!"<<"\n";
exit(0) ;}
e=*--s->top;
s->stacksize--;
return e;
}
typedef struct Qnode{
int number;
int time;
struct Qnode *next;
}QNode,*QueuePtr;
typedef struct{
QueuePtr front;
QueuePtr rear;
int length;
}LinkQueue;
int InitQueue(LinkQueue *Q){
Q->front=Q->rear=(QueuePtr)malloc(sizeof(QNode));
if(!Q->front)exit(-1);
Q->front->next=NULL;
Q->length=0;
return 1;
}
void EnQueue(LinkQueue *Q,car *a ){
QueuePtr p;
p=(QueuePtr)malloc(sizeof(QNode));
if(!p)exit(-1);
p->number=a->number;
p->time=a->time;
p->next=NULL;
Q->rear->next=p;
Q->rear=p;
Q->length++;}
QueuePtr DeQueue(LinkQueue *Q){
QueuePtr p,e,s={0};
if(Q->front==Q->rear){
cout<<"便道上没有车辆!"<<"\n";
return s;}
p=Q->front->next;
e=p;
Q->front->next=p->next;
Q->length--;
if(Q->rear==p)Q->front=Q->rear;
return e;
}
void arrive(sqstack *s,LinkQueue *p,car a,int n){
if(s->stacksize<n){
push(s,a);
cout<<"车牌号为"<<a.number<<"的车辆进入停车场"<<s->stacksize<<"号车道"<<"\n";
}
else {
EnQueue(p,&a);
cout<<"由于停车场内车位已满,车牌号为"<<a.number<<"的车辆停在便道的"<<p->length<<"号位置"<<"\n";
}}
void leave(sqstack *tcc,sqstack *dcc,LinkQueue *p,car a,int n){
car x,y;
QueuePtr b;
int find=1,arrivetime=0;
while(find){
y=pop(tcc);
push(dcc,y);
if(y.number==a.number){
find=0;
arrivetime=y.time;
}}
pop(dcc);
while(dcc->stacksize){
x=pop(dcc);
push(tcc,x); }
if(tcc->stacksize<n&&p->length!=0){
b=DeQueue(p);
x.number=b->number;
x.time=a.time;
push(tcc,x);
cout<<"车牌号为"<<x.number<<"的车辆从便道上进入停车场"<<tcc->stacksize<<"号车道"<<"\n"; }
cout<<"\n"<<"==============================================="<<"\n";
cout<<"车牌号码:"<<a.number<<" \n ";
cout<<"进站时刻: "<<arrivetime<<"\n ";
cout<<"出站时刻: "<<a.time<<"\n ";
cout<<"停留时间: "<<a.time-arrivetime<<"\n ";
cout<<"\n"<<"================================================"<<"\n";}
int main(){
sqstack In,Out;
LinkQueue Q;
car a;
int sum=1000,n;
float price;
char ch;
cout<<"\n"<<"================================停车场管理==================================="<<"\n";
cout<<"'A'或者'a'表示车辆到达 'D'或者'd'表示车辆离开 'E'或者'e'表示退出系统"<<"\n\n";
Initstack(&In);
Initstack(&Out);
InitQueue(&Q);
cout<<"请输入停车场的车位总数:";
cin>>n;
getchar();
cout<<"\n"<<"请输入A/D/E,车牌号,时刻:";
cin>>ch>>a.number>>a.time;
getchar();
while(1){
switch(ch){
case 'a':
case 'A':arrive(&In,&Q,a,n);break;
case 'D':
case 'd':leave(&In,&Out,&Q,a,n);break;
case 'e':
case 'E':exit(-1);break; }
cout<<"\n"<<"请输入A/D/E,车牌号,时刻:";
cin>>ch>>a.number>>a.time;
getchar();
}
getchar();
getchar();
return 0;
}

今天有关内容《(停车场系统维保手册)停车场管理系统维护保养记录》先分享到这里了,如果想要了解更多,请关注ask.drzk.cn,您的关注是给小编最大的鼓励。