一个病人看病的程序,始终有错误,请高手指点!
#include <stdio.h>#include <malloc.h>
typedef struct qnode{
int data;
struct qnode *next;
}qnode, *queueptr; //结点类型;
typedef struct {
queueptr front;
queueptr rear;
}linkqueue; // 链队类型;
void initqueue(linkqueue &q){
q->front=q->rear=(queueptr)malloc(sizeof(qnode)); //创建空队;
if (!q->front) exit(-2);
q->front->next =NULL;
}
void main()
{
int no=0;
linkqueue *q;
initqueue(&q);
qnode *p;
printf("输入病历号: \n");
scanf("%d",&no);
p=(queueptr)malloc(sizeof(qnode)); //创建结点;
p->data =no;
p->next =NULL;
if(q->rear ==NULL) //第一个病人排队;
{
q->front =q->rear =p;
}
else{
q->rear ->next =p;
q->rear =p;
}
printf("出现\n");
}