C语言停车场管理系统源代码

#include

#include

#define stacksize 2 //车站//容量

///////////////////////////////////////////////////////

typedef struct Snode{

int number;

float int_time[2];

float bian_time[2];

}record;

typedef struct {

record *base;

record *top;

int size;

}Stack;

/////////////////////////////////////////////////////

typedef struct Qnode{

int number;

float int_time[2];

struct Qnode *next;

}Qnode,*Queue;

typedef struct {

Queue front;

Queue rear;

}Linkqueue;

void xunhuan(Stack L,Linkqueue Q);

void jixu(Stack L,Linkqueue Q);

/////////////////////////////////////////////////////

/////////////////////////////////////////////////////

void InitStack(Stack &L) //堆栈操作

{

L.base=(record*)malloc(sizeof(Snode)*stacksize);

if(!L.base)

exit(0);

L.top=L.base;

L.size=stacksize;

}

/////////////////////////////////////////////////////

void input(Stack &L,record h)

{

*L.top++=h;

}

///////////////////////////////////////////////////

Snode output(Stack &L,record &e)

{

e=*--L.top;

return e;

}

int Stackman(Stack L)

{

if(L.top-L.base==L.size)

return 0;

else

return 1;

}

int StackEmpty(Stack L)

{

if(L.base==L.top)

return 0;

else

return 1;

}

//////////////////////////////////////////////////

//////////////////////////////////////////////////

void Initque(Linkqueue &Q) //队列操作

{

Q.front=Q.rear=(Queue)malloc(sizeof(Qnode));

if(!Q.front)

exit(0);

Q.front->next=NULL;

}

//////////////////////////////////////////////////

void enqueue(Linkqueue &Q,int number,float time[])

{

Queue q;

printf("停车场已满,请将车辆停入便道!\n");

q=(Queue)malloc(sizeof(Qnode));

q->int_time[0]=time[0];

q->int_time[1]=time[1];

q->number=number;

q->next=NULL;

Q.rear->next=q;

Q.rear=q;

}

///////////////////////////////////////////////////

void outqueue(Linkqueue &Q,Queue &e)

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐