c语言车辆管理系统课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include<> #include<>

#include<>

#define MAX 3 /*车库容量*/

#define price /*每车每分钟费用*/ typedef struct time

{

int hour;

int min;

}Time; /*时间结点*/

typedef struct node

{

char num[10];

Time reach;

Time leave;

}CarNode;/*车辆信息结点*/

typedef struct NODE

{

CarNode *stack[MAX + 1];

int top;

}Moni_Cheku;

typedef struct car

{

CarNode *data;

struct car *next;

}QueueNode;

typedef struct Node

{

QueueNode *head;

QueueNode *rear;

}Moni_Biandao;

void InitStack(Moni_Cheku *); /*初始化车库*/

int InitQueue(Moni_Biandao *);

/*初始化便道*/

int Arrival(Moni_Cheku *, Moni_Biandao *); /*车辆到达*/void

Leave(Moni_Cheku *, Moni_Cheku *, Moni_Biandao *); /*车辆离开*/ void List(Moni_Cheku, Moni_Biandao); /*显示车库和便道的存车信息*/ int main()

{

Moni_Cheku Enter, Temp;

Moni_Biandao Wait;

int ch;

InitStack(&Enter); /*初始化车站*/

InitStack(&Temp); /*初始化让路的临时链表*/

InitQueue(&Wait); /*初始化便道*/

printf("\n");

printf(" ^_^欢迎进入停车场管理系统1!^_^\n");

printf("\n");

printf("提示!(1).该车库的最大容量为:%d;\n",MAX);printf("(2).该车库的收费标准为:%元/(辆*分钟).\n",price);while (1)

{

system("CLS");

printf("********************

********************\n");

printf("1.车辆到达");

printf(" 2.车辆离开");

printf(" 3.列表显示");

printf(" 4.退出系统\n");主菜单

printf("**********************************************\n");

printf("请选择(1-4):[ ]\b\b");

while (1)

{

scanf("%d",&ch);

if (ch >= 1 && ch <= 4)break;

else printf("错误!请重选(1-4):[ ]\b\b");

switch (ch)

{

case 1:Arrival(&Enter, &Wait); break; /*车辆到达*/case 2:Leave(&Enter,

&Temp, &Wait); break; /*车辆离开*/

case 3:List(Enter, Wait); break; /*打印列表信息*/case 4:exit(0); /*退出主程序*/

default: break;

}

}

return 0;

}

void InitStack(Moni_Cheku *s) /*初始化车库*/

{

int i;

s->top = 0;

for (i = 0; i <= MAX; i++)

s->stack[s->top] = NULL;

}

int InitQueue(Moni_Biandao *Q) /*初始化便道*/

{

Q->head = (QueueNode *)malloc(sizeof(QueueNode));if (Q->head != NULL)

Q->head->next = NULL;

Q->rear = Q->head;

return(1);

}

else return(-1);

}

void PRINT(CarNode *p, int room) /*输出出库车的信息*/{ int A1, A2, B1, B2;

{

printf("请输入离开的时间:/**:**/");

scanf("%d:%d", &(p->, &(p->);

printf("离开车辆的车牌号为:");

puts(p->num);

printf("其到达时间为: %d:%d\n", p->, p->;

printf("离开时间为: %d:%d\n", p->, p->;

A1 = p->;

A2 = p->;

B1 = p->;

B2 = p->;

printf("应交费用为:%元",((B1-A1)*60+(B2-A2))*price);

相关文档
最新文档