一、 课程设计的主要内容 题目描述:利用队列模拟一个排队叫号系统
功能要求及说明: (1 ) 系统采用菜单方式操作,要求实现如下功能: (2 ) 叫号排队:用户叫号时将该用户信息(用户名)入队,并打印用户排队序号、等待人数
(3 ) 业务处理:工作人员处理完前一业务后,从队列头中获取一个用户出队并呼叫该用户(终端打印输出)
(4 ) 队列信息浏览:工作人员可随时查看队列中目前未处理的所有业务信息
(5 ) 采用模块化设计
二、 概要设计 1、本程序包含两个模块 (1) 主函数模块: main(){ 定义及初始化; 让用户控制程序,实现排队叫号功能
} (2) 排队叫号系统单元模块: 主函数调用排队叫号系统单元模块
2、排队叫号的抽象数据类型定义: void QueueInitiate(LQueue * Q) Q 为结构体指针; 操作结果:使队列初始化
int QueueNotEmpty(LQueue Q) 判断队列是否为空; 操作结果:若队列为空,返回0;不为空,则返回1
int QueueAppend(LQueue * Q,int x) Q 为结构体指针,x 传输用户的序号; 操作结果:用户叫号时,使用户序号按顺序入队
int QueueDelete(LQueue * Q,int * d) *d 传输队头元素; 操作结果:处理对头元素,并释放头结点
void Destroy(LQueue Q) 操作结果:用户用完程序退出时,摧毁队列,释放内存
四 详细设计 1、实现菜单函数 void menu() { printf ("****************************************************\n"); printf ("****************1
排队叫号**************************\