#include <stdio.h>
#include <stdlib.h>
#define OK 1
typedef struct
{char name[20];
char sno[20];
struct QNode *next;
} QNode,*QueuePtr;
typedef struct
{QueuePtr front;
QueuePtr rear;
}LinkQueue;
int InitQueue(LinkQueue *q)//初始化
{
q->front = (QueuePtr)malloc(sizeof(QNode));
q->rear=q->front;
if(q->front==NULL)
{
printf("初始化失败。\n");
return 0;}
q->front->next=NULL;
return 1;
}
int EnQueue(LinkQueue *Q)//后插
{
QueuePtr temp=(QueuePtr)malloc(sizeof(QNode));
if(!temp) return 0;
printf("请输入姓名:");
scanf("%s",temp->name);
printf("请输入学号:");
scanf("%s",temp->sno);
temp->next=NULL;
Q->rear->next=temp;
Q->rear=temp;
return 1;
}
int DeQueue (LinkQueue *q)//出队 出去后队列中就没了
{
if(q->front==q->rear)
printf("队列为空。\n");
QueuePtr temp=q->front->next;
printf(" 姓名为%s \n",temp->name);
printf(" 学号为%s \n",temp->sno);
q->front->next=temp->next;
if(q->rear==temp)
q->rear=q->front;//最后一个元素被删,队尾指针指向头指针
free(temp);
}
int Length(LinkQueue q)//不改变队头指针的内容所以不用指针
{ int i=0;
while(q.front!=q.rear)
{
i++;
q.front=q.front->next;
}
return i;
}
int DeQueuetou (LinkQueue q)//出队列的头,不改变 队列头指针的内容,所以不用指针。666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666
{
if(q.front==q.rear)
printf("队列为空。\n");
QueuePtr temp=q.front->next;
printf(" 姓名为%s \n",temp->name);
printf(" 学号为%s \n",temp->sno);
}
int main(int argc, char *argv[]) {
LinkQueue SQ;
LinkQueue *L;
L=&SQ;
int n;
printf("请输入要进行的操作。\n");
printf("1.初始化。\n");
printf("2.入队。\n");
printf("3.出队。\n");
printf("4.输出队的长度。\n");
printf("5.输出队列的头。\n");
while(1)
{
scanf("%d",&n);
switch(n)
{
case 1:
if(InitQueue(L)==1)
printf("初始化成功。\n");
break;
case 2:
EnQueue(L);
break;
case 3:
{
int i;
i=Length(SQ);
while(i>0)
{i--;
DeQueue(L);}
break;}
case 4:
printf("当前长度为%d。\n",Length(SQ));
break;
case 5:
DeQueuetou (SQ);
break;
}
}
return 0;
}
2018-05-29链队列的实现
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- UIord平台将带来内容创作的春天 村目 2018-02-13 19:57 · 字数 561 · 阅读 0 · 区...