资源简介
C语言实现停车场管理系统,用栈和队列等模拟~~~~~~~~~
代码片段和文件信息
//zhao.h文件
*****************************************
#include
#include
#include
#include
#include
// 清空当前屏幕
#define ClearScreen() system( “cls“ )
// 显示字符串 szPrompt 并等待用户按下任意键
#define Pause( szPrompt ) printf( “%s“ szPrompt )getch()
typedef struct carinformation // 车辆信息
{
char szRegistrationMark[64]; // 车牌号
char szArrivalTime[16]; // 到达时间
char szEntranceTime[16]; // 进入停车场(开始计费)时间
char szDepartureTime[16]; // 离开时间
} TCARINFORMATION *LPTCARINFORMATION;
typedef struct carstack
{
LPTCARINFORMATION lpCarInformation; // 车辆信息
int nTop; // 栈顶元素下标
int nStackSize; // 栈容量
} TCARSTACK *LPTCARSTACK;
// 初始化栈 lpCarStack 将其容量设置为 nSize
void InitStack( LPTCARSTACK &lpCarStack int nSize )
{
lpCarStack = ( LPTCARSTACK ) malloc( sizeof ( TCARSTACK ) );
lpCarStack->lpCarInformation = ( LPTCARINFORMATION ) malloc(
nSize * sizeof ( TCARINFORMATION )
);
lpCarStack->nTop = -1;
lpCarStack->nStackSize = nSize;
}
// 车辆信息 carinfo 入栈 lpCarStack
void Push( LPTCARSTACK &lpCarStack TCARINFORMATION carinfo )
{
lpCarStack->nTop++;
lpCarStack->lpCarInformation[lpCarStack->nTop] = carinfo;
}
// 车辆信息从栈 lpCarStack 中弹出并存入 carinfo
void Pop( LPTCARSTACK &lpCarStack TCARINFORMATION &carinfo )
{
carinfo = lpCarStack->lpCarInformation[lpCarStack->nTop];
lpCarStack->nTop--;
}
// 若栈 lpCarstack 空返回 TRUE;否则返回 FALSE
BOOL IsStackEmpty( LPTCARSTACK lpCarStack )
{
return lpCarStack->nTop == -1;
}
// 若栈 lpStackFull 满返回 TRUE;否则返回 FALSE
BOOL IsStackFull( LPTCARSTACK lpCarStack )
{
return lpCarStack->nTop == ( lpCarStack->nStackSize - 1 );
}
// 销毁栈 lpCarStack将指针 lpCarStack 置为 NULL
void DestroyStack( LPTCARSTACK &lpCarStack )
{
free( lpCarStack->lpCarInformation );
free( lpCarStack );
lpCarStack = NULL;
}
typedef struct carnode // 链队结点信息
{
TCARINFORMATION carinfo; // 车辆信息
struct carnode *lpNext; // 指向下一个元素的指针
} TCARNODE *LPTCARNODE;
typedef struct carqueue // 链队
{
LPTCARNODE lpHead; // 头结点
LPTCARNODE lpRear; // 指向当前队尾的指针
int nEffectiveSize; // 当前队中元素个数
} TCARQUEUE *LPTCARQUEUE;
// 初始化链队 lpCarQueue
void InitQueue( LPTCARQUEUE &lpCarQueue )
{
lpCarQueue = ( LPTCARQUEUE ) malloc( sizeof( TCARQUEUE ) );
lpCarQueue->lpHead = ( LPTCARNODE) malloc( sizeof( TCARNODE ) );
lpCarQueue->lpHead->lpNext = NULL;
lpCarQueue->lpRear = lpCarQueue->lpHead;
lpCarQueue->nEffectiveSize = 0;
}
// 车辆信息 carinfo 入队 lpCarQueue
void EnQueue( LPTCARQUEUE &lpCarQueue TCARINFORMATION carinfo )
{
LPTCARNODE lpCarNode = ( LPTCARNODE ) malloc( sizeof( carnode ) );
lpCarNode->carinfo = carinfo;
lpCarNode->lpNext = NULL;
lpCarQueue->lpRear->lpNext = lpCarNode;
lpCarQueue->lpRear = lpCarQueue->lpRear->lpNext;
lpCarQueue->nEffectiveSize++;
}
// 队头元素从链队 lpCarQueue 中出队并存入 carinfo
void DeQueue( LPTCARQUEUE &lpCarQueue TCARINFORMATION &carinfo )
- 上一篇:QML_MVC_Demo
- 下一篇:基本图形填充课程设计报告+代码
相关资源
- C语言嵌入式Modbus协议栈,支持主站和
- C语言实现栈操作
- 数据结构大作业 停车场管理 C语言
- MFC智能停车场管理系统
- 火烧连营C++版本
- 数据结构课程设计 停车场管理系统
- 基于Qt的智能停车场.rar
- 链表栈的基本操作(C语言
- 停车场管理系统c++235245
- 自动排号机C++队列实现
- 数据结构C++语言进出堆栈动画
- C# To C++ Converter 17.10.2 (最新破解版
- 停车场管理系统(vc MFC实现)
- 课程设计 停车场管理系统 MFC
- PJSIP SIP协议栈C语言
- MFC 停车场管理系统
- MFC使用双栈实现简单计算器
- 停车场管理系统C语言报告
- MFC停车场车辆信息管理系统附数据库
- 队列应用银行排队问题模拟:计算客户
- c语言停车场管理收费系统
- 用c++编写的停车场管理程序
- 数据结构课程程序设计实践运动会分
- 数据结构王红梅
- 操作系统 进程调度 多级队列反馈
- 黑马最新c、c++全栈培训第24期高清无
- MFC停车场管理系统项目
- 黑马程序员最新24期C/C++全栈培训讲义
- IC卡停车场管理系统源代码
- 停车场管理系统 MFC 数据结构课程设计
评论
共有 条评论