下载此文档

c程序病人排队看病.doc


文档分类:医学/心理学 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
#include<>
//#include<>
#include<>
typedef int ElemType;
typedef struct queueNode/*链式队列结点的类型定义*/
{
ElemType data; /*数据域*/
struct queueNode *next; /*指针域*/
}QueueNode;
typedef struct //链式队列的类型定义
{
QueueNode *front; //队头指针
QueueNode *rear; //队尾指针
}LinkQueue;
//链式队列的初始化
void QueueInitial(LinkQueue *pQ)
{//指针pQ所指向的链式队列初始化为有表头结点链表
pQ->front=(QueueNode *)malloc(sizeof(QueueNode));
if(pQ->front==NULL)
{
printf("内存分配失败!\n");
exit(1);
}
pQ->rear=pQ->front;
pQ->front->next=NULL; //头结点指针域置空
}
//链式队列判空
int IsEmpty(LinkQueue *pQ)
{//链队为空时返回1,否则返回0
return pQ->front==pQ->rear;
}
//元素进队
void EnQueue(LinkQueue *pQ,ElemType e)
{//将元素e插入到队尾
QueueNode *p;
p=(QueueNode *)malloc(sizeof(QueueNode));
if(p==NULL) //内存分配失败
{
printf("内存分配失败!\n");
exit(1);
}
p->data=e;
p->next=NULL; //设置为尾结点
pQ->rear->next=p; //尾部插入
pQ->rear=p; //尾指针后移
}
//元素出队
ElemType DeQueue(LinkQueue *pQ)
{//若队列元素不为空,则删除队头元素,并返回它的值
QueueNode *first;
ElemType temp;
if(IsEmpty(pQ)) //队列为空,退出
{
printf("空对!\n");
exit(1);
}
first=pQ->front->next; //first指向队列头结点
temp=first->data; //暂存队头元素值
pQ->front->next=first->next; // 摘下队头结点
if(pQ->rear==first) //只有一个结点时,修改尾指针
pQ->rear=pQ->front;
free(first);
return temp;
}
//依次输出所有元素
void Output(LinkQueue *pQ)
{//依次输出队列中的所有元素
printf("从队首到对尾列出所有排队病人的病历号依次为:\n");
QueueNode *p=p

c程序病人排队看病 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小35 KB
  • 时间2018-04-27