#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <string.h>
#define FALSE -1
#define TRUE 1
#define MAX_QUEUE_SIZE 200
#define MAX_STACK_SIZE 8
int price = 2; //收费每秒单价
int earn = 0; //当日收入总和
//时间结构体
typedef struct {
int hour;
int min;
int sec;
}Time;
//车结构体且并入时间结构体
typedef struct {
char ID[8];
Time iTime;
Time oTime;
}Car;
//栈结构体
typedef struct {
Car base[MAX_STACK_SIZE];
int top;
int length;
int maxLength;
}Stack;
//列队结构体
typedef struct {
Car base[MAX_QUEUE_SIZE];
int front;
int rear;
int length;
int maxLength;
}DeQueue;
//自动获取车牌结构体
void getID(Car* P){
int num = rand()%10000+10000; //产生车辆的数字部分,且保证位数是五
char locations[25][5] = {"@A","@B","@C","@D","@E","@F","@G","@H",
"@J","@K","@L","@M","@N","@O","@P","@Q","@R","@S",
"@T","@U","@V","@W","@X","@Y","@Z"};
sprintf(P->ID,"%s%d",locations[rand()%25],num); //sprintf函数四个参数分别对应
}
//栈的初始化
Stack *IniSTK() {
Stack *STK = malloc(sizeof (Car)*MAX_STACK_SIZE);
for (int i = 0;i < MAX_STACK_SIZE; i++)
STK->base[i] = *(Car*)malloc(sizeof (Car));
STK-> top = -1;
STK-> maxLength = 8;
return STK;
}
//列队初始化
DeQueue *IniDQ() {
DeQueue *DQ = malloc(sizeof(DeQueue)*MAX_QUEUE_SIZE);
for (int i = 0;i < MAX_QUEUE_SIZE; i++)
DQ-
代码出错不知道怎么改
这是一个使用C++实现的停车管理系统,包括栈和队列的数据结构,用于管理进出车辆的时间和计费,支持添加车辆、删除车辆、查看停车场和候车区信息等功能。系统通过生成随机车牌、获取当前时间,并计算停车费用。
摘要由CSDN通过智能技术生成