⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bank_sim.h

📁 由C语言通过队列实现的一个银行帐户管理程序
💻 H
字号:
#ifndef BANK_SIM_H
#define BANK_SIM_H

#include <stddef.h>

#define COUNTER         8  /* 银行共有 8 个营业窗口 */
#define ARRIVAL   COUNTER  /* 客户到达事件 */

typedef struct {
	size_t OccurTime, NType; /* 事件发生时刻;事件类型 */
} Event; /* 链表数据元素类型 */

typedef struct Enode {
	Event event;
	struct Enode *next;
} Enode, *EventList;

typedef struct {
	size_t ArrTime, Duration;  /* 到达时刻;办理时间 */
} QElem;  /* 队列数据元素类型 */

typedef struct Qnode {
	QElem Cust;  /* 客户记录 */
	struct Qnode *next;
} Qnode, *Qptr;

typedef struct {
	Qptr front, rear; /* 队头指针,队尾指针 */
} LinkQueue;

int bank_open( void );     /* 初始化操作 */
int CustArr( void );  /* 处理客户到达事件 */
int CustDepart( void );    /* 处理客户离开事件 */
void DelFirst( void );  /* 删除事件表第一个节点,并把值赋给en */
int DeQueue( LinkQueue * );  /* 出队 */
void DestroyAll( void );  /* 销毁链表和队列 */
void DestroyList( EventList ); /* 销毁链表 */
void DestroyQueue( LinkQueue * ); /* 销毁队列 */
int EnQueue( LinkQueue *, QElem );  /* 进队 */
EventList InitList( void ); /* 创建链表 */
int InitQueue( LinkQueue * ); /* 建立空队列 */
size_t Minimun( void );  /* 求长度最短队列 */
int OrderInsert( EventList, Event ); /* 插入事件表 */
size_t QueueLength( LinkQueue );  /* 计算队列长度 */

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -