2022年数据结构停车场管理系统 .pdf
《2022年数据结构停车场管理系统 .pdf》由会员分享,可在线阅读,更多相关《2022年数据结构停车场管理系统 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据结构停车场管理系统.txt遇事潇洒一点,看世糊涂一点。相亲是经销,恋爱叫直销,抛绣球招亲则为围标。没有准备请不要开始,没有能力请不要承诺。爱情这东西,没得到可能是缺憾,不表白就会有遗憾,可是如果自不量力,就只能抱憾了。#include #include #include #include #include / 清空当前屏幕#define ClearScreen() system( cls ) / 显示字符串 szPrompt 并等待用户按下任意键#define Pause( szPrompt ) printf( %s, szPrompt ),getch() typedef struct c
2、arinformation / 车辆信息 char szRegistrationMark64; / 车牌号 char szArrivalTime16; / 到达时间 char szEntranceTime16; / 进入停车场 ( 开始计费 ) 时间 char szDepartureTime16; / 离开时间 TCARINFORMATION, *LPTCARINFORMATION; typedef struct carstack LPTCARINFORMATION lpCarInformation; / 车辆信息 int nTop; / 栈顶元素下标 int nStackSize; / 栈容
3、量 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; lpCarS
4、tack-nStackSize = nSize; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - / 车辆信息 carinfo 入栈 lpCarStack void Push( LPTCARSTACK &lpCarStack, TCARINFORMATION carinfo ) lpCarStack-nTop+; lpCarStack-lpCarInformationlpCarStack-nTop = carinfo; / 车辆
5、信息从栈 lpCarStack 中弹出并存入 carinfo void Pop( LPTCARSTACK &lpCarStack, TCARINFORMATION &carinfo ) carinfo = lpCarStack-lpCarInformationlpCarStack-nTop; lpCarStack-nTop-; / 若栈 lpCarstack 空, 返回 TRUE;否则 , 返回 FALSE BOOL IsStackEmpty( LPTCARSTACK lpCarStack ) return lpCarStack-nTop = -1; / 若栈 lpStackFull 满, 返
6、回 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 carn
7、ode / 链队结点信息 TCARINFORMATION carinfo; / 车辆信息 struct carnode *lpNext; / 指向下一个元素的指针 TCARNODE, *LPTCARNODE; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - typedef struct carqueue / 链队 LPTCARNODE lpHead; / 头结点 LPTCARNODE lpRear; / 指向当前队尾的指针 in
8、t 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 = lpCarQue
9、ue-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; lpCar
10、Queue-lpRear = lpCarQueue-lpRear-lpNext; lpCarQueue-nEffectiveSize+; / 队头元素从链队 lpCarQueue 中出队并存入 carinfo void DeQueue( LPTCARQUEUE &lpCarQueue, TCARINFORMATION &carinfo ) LPTCARNODE lpTemp = lpCarQueue-lpHead-lpNext; carinfo = lpTemp-carinfo; lpCarQueue-lpHead-lpNext = lpTemp-lpNext; free( lpTemp );
11、 lpCarQueue-nEffectiveSize-; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - / 若链队 lpCarQueue 为空 , 返回 TRUE;否则 , 返回 FALSE BOOL IsQueueEmpty( LPTCARQUEUE lpCarQueue ) return lpCarQueue-nEffectiveSize = 0; / 销毁链队 lpCarQueue void DestroyQueue(
12、LPTCARQUEUE &lpCarQueue ) LPTCARNODE lpNextCarNode = NULL; for ( LPTCARNODE lpCarNode = lpCarQueue-lpHead; lpCarNode != NULL; lpCarNode = lpNextCarNode ) lpNextCarNode = lpCarNode-lpNext; free( lpCarNode ); free( lpCarQueue ); lpCarQueue = NULL; / 将字符串时间格式转换为数字( 分钟 ) 格式 , 例如 12:36 将被转换为 756 ( 12 * 6
13、0 + 36 ) int ConvertTimeFormat( char *lpTime ) int nHour = 0; int nMinute = 0; sscanf( lpTime, %d:%d, &nHour, &nMinute ); return nHour * 60 + nMinute; / 根据在停车场内的停留时间 nContinuanceMinutes (分钟 ) 计算费用double CalculateExpense( int nContinuanceMinutes ) return nContinuanceMinutes * ( 5.0 / 60 ); int main(
14、void ) int nParkCapability = 0; / 停车场容量名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 9 页 - - - - - - - - - putchar( n ); printf(tt=欢迎你进入停车场管理系统=n); printf(tt 徐沙利 20074470149n); printf( 请输入停车场容量: ); scanf( %d, &nParkCapability ); LPTCARSTACK lpCarStack = NULL;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年数据结构停车场管理系统 2022 数据结构 停车场 管理 系统
限制150内