c++实现停车场管理系统(栈和队列)

今天数据结构课设就答辩完了,我跟大家分享一下我的课程设计,c++实现停车场管理系统。一个头文件和一个main函数。

Node.h文件代码如下:

#ifndef NODE_H
#define NODE_H
#include 
#include
#include  
#include
#include 
#include
#include
#include 
#include "Node.h"
using namespace std;

 
struct node 
{ 
 string no;//车牌号 
 int time;//车辆进入的时间(以小时为单位) 
 int sub;//车辆在停车场的位置 
} nod; 
mapmp;//用来检测车辆在停车场或者在便道内 
dequeq1;//模拟停车场 
dequeq2;//模拟便道 
stacksk;//交换媒介 
string str1="park",str2="pavement"; 
void Push(int n)//车辆驶入操作 
{
	cout<<"请输入要进入车辆的车牌号"<>x; 
	cout<<"请输入该车辆进入停车场的时间(例如0210 1530)"<>y; 
	if(!mp[x])//如果此车不在停车场或者便道内执行以下命令 
	{ 
		 if(q1.size()>x; 
	cout<<"请输入该车辆驶出停车场的时间(例如0210 1530)"<>y; 
	if(!mp[x])
		cout<<"错误:该辆并不在停车场内!"<n)//如果车在便道里,那么直接离开,后面的车向前移动 
	{ 
		mp[x]=0; 
		while(q2.back().no!=x) 
		{ 
			 q2.back().sub--; 
			 sk.push(q2.back()); 
			 q2.pop_back(); 
		} 
		q2.pop_back(); 
		while(!sk.empty()) 
		{ 
			 q2.push_back(sk.top()); 
			 sk.pop(); 
		}
		cout<<"由于该车辆并未进入停车场,所以不进行收费"<>x; 
	if(!mp[x]) 
		cout<<"该车辆并未在停车场"<

main.cpp文件如下:

#include  
#include "Node.h"
using namespace std;
int main() 
{ 
 int n; 
 cout<<"  **************停车场管理系统**************"<>n;
if (cin.good()!=1||n<=0) 
	{
		cout <<"输入有误请重新输入!" << endl;	
		cin.clear();  	
		cin.sync();   
		goto Start;
	}
 
 cout<>t; 
	 if(t==1) 
		Push(n); 
	 else if(t==2) 
		Pop(n); 
	 else if(t==3) 
		Query1(n); 
	 else if(t==4) 
		Query2(n); 
	 else if(t==0)
		break; 
	 else 
		 cout<<"输入有误,请重新输入!"<

设计实现思路就是用栈和队列实现的。具体代码和课设报告在我的github上https://github.com/coder23263/Parking_lot_management_system,谢谢观看。

你可能感兴趣的:(c+)