停车场项目需求
问题描述:停车场是一个能放 n 辆车的狭长通道,只有一个大门,汽车按到达的先后次序停放。若车场满了,车要停在门
外的便道上等候,一旦有车走,则便道上第一辆车进入。当停车场中的车离开时,由于通道窄,在它后面的车
要先退出,待它走后在依次进入。汽车离开时按停放时间收费。
基本功能要求:
(1)建立三个数据结构分别是:停放栈、让路栈、等候队列。
(2)输入数据模拟管理过程,数据(入或出,车号)
功能描述:进车登记、出车登记、按车牌号查询停车车辆信息、查询出入车记录、
查询场内车辆信息、查询等候车辆信息、退出系统。
(1)linux系统编写(链表、栈、队列);
(2)进车登记:登记车牌号以及入场时间;
(3)出车登记:计算出停车时间,记录车辆车牌;
(4)按车牌号查询车辆信息:停车时间,是否来过停车场,是否还在停车场
(5)查询出入记录:所有车辆,包括已经离开的
(6)查询场内车辆信息:列出所有场内车辆信息
(7)查询等候车辆信息:显示等候车辆数量以及所有车牌号
问题描述:停车场是一个能放 n 辆车的狭长通道,只有一个大门,汽车按到达的先后次序停放。若车场满了,车要停在门
外的便道上等候,一旦有车走,则便道上第一辆车进入。当停车场中的车离开时,由于通道窄,在它后面的车
要先退出,待它走后在依次进入。汽车离开时按停放时间收费。
基本功能要求:
(1)建立三个数据结构分别是:停放栈、让路栈、等候队列。
(2)输入数据模拟管理过程,数据(入或出,车号)
功能描述:进车登记、出车登记、按车牌号查询停车车辆信息、查询出入车记录、
查询场内车辆信息、查询等候车辆信息、退出系统。
(1)linux系统编写(链表、栈、队列);
(2)进车登记:登记车牌号以及入场时间;
(3)出车登记:计算出停车时间,记录车辆车牌;
(4)按车牌号查询车辆信息:停车时间,是否来过停车场,是否还在停车场
(5)查询出入记录:所有车辆,包括已经离开的
(6)查询场内车辆信息:列出所有场内车辆信息
(7)查询等候车辆信息:显示等候车辆数量以及所有车牌号
(8)退出系统。
头文件:
/*****************************************************
> File name: CarPark.h
> Author: Mr.YUAN
> 日期: 2017-11-27 19:13
*****************************************************/
#ifndef _CARPRAK_H_
#define _CARPARK_H_
#define MAXMUM 3
#define success 1003
#define failure 1000
#define Stack_Full 1001
#define PUSH_OK 1002
#include<time.h>
#include<stdlib.h>
#include<string.h>
typedef struct CAR
{
char num[10];
time_t intime;
time_t outtime;
double expense;
int length;
int place;
}car;
typedef struct SeqStack
{
car park[MAXMUM];
int top;
}stack;
typedef struct node
{
car data;
struct node *next;
}Node;
typedef struct queue
{
Node * front;
Node * rear;
}car_queue;
int StackInit(stack *S);
int QueueInit(car_queue *Q);
int menu();
int Push1_Stack(stack *S,car *Car,car_queue *Q);
int in_queue(car_queue *p ,car *Car);
int Push_Stack1(stack *S,car *Car);
car *PopStack1(stack *S,car *Car);
int PopStack(stack *S,car *Car,car_queue *Q);
int Push_Stack(stack *S,car *Car,car_queue *Q);
int display_stack(stack *S);
int display_queue(car_queue *Q);
#endif
//接口函数
/*****************************************************
> File name: CarPark.