#include "stdio.h"
#include "malloc.h"
#include<stdlib.h>
#define maxsize 10
typedef struct node
{
int data;
struct node *next;
}linklist; typedef struct node1
{
linklist *rear;
}linkqueue; linkqueue *setnull(linkqueue *a) //链队列的初始化
{
linklist *q;
a=(linkqueue*)malloc(sizeof(linkqueue));
q=(linklist*)malloc(sizeof(linklist));
a->rear=q;
q=q->next;
return a;
} void outqueue(linkqueue *a) //链队列的输出
{
linklist *s;
s=a->rear->next;
while(s=s->next)
{
s=s->next;
printf("%d",s->data);
}
} void enqueue(linkqueue *a) //链队列的入队
{
linklist *s;
int x;
printf("请输入需要入对的数");
scanf("%d",&x);
s=(linklist*)malloc(sizeof(linklist));
s->next=a->rear->next;
a->rear->next=s;
s->data=x;
a->rear=s;
outqueue(a);
}
void dequeue(linkqueue *a) //链队列的出队
{
linklist *s;
s=a->rear->next;
if(a->rear=a->rear->next)
{
printf("队空");
outqueue(a);
}
else{
a->rear->next=a->rear->next->next;
free(s);
outqueue(a);
}
}
int main()
{
linkqueue *a;
int x,i=2;
a=setnull(a);
for(;;)
{
printf("0-入队 1-出队 2-退出");
scanf ("%d",&i);
switch(i)
{
case 0: enqueue(a); break;
case 1: dequeue(a); break;
case 2: return 0;
}//end case
}
system("pause");
}
#include "malloc.h"
#include<stdlib.h>
#define maxsize 10
typedef struct node
{
int data;
struct node *next;
}linklist; typedef struct node1
{
linklist *rear;
}linkqueue; linkqueue *setnull(linkqueue *a) //链队列的初始化
{
linklist *q;
a=(linkqueue*)malloc(sizeof(linkqueue));
q=(linklist*)malloc(sizeof(linklist));
a->rear=q;
q=q->next;
return a;
} void outqueue(linkqueue *a) //链队列的输出
{
linklist *s;
s=a->rear->next;
while(s=s->next)
{
s=s->next;
printf("%d",s->data);
}
} void enqueue(linkqueue *a) //链队列的入队
{
linklist *s;
int x;
printf("请输入需要入对的数");
scanf("%d",&x);
s=(linklist*)malloc(sizeof(linklist));
s->next=a->rear->next;
a->rear->next=s;
s->data=x;
a->rear=s;
outqueue(a);
}
void dequeue(linkqueue *a) //链队列的出队
{
linklist *s;
s=a->rear->next;
if(a->rear=a->rear->next)
{
printf("队空");
outqueue(a);
}
else{
a->rear->next=a->rear->next->next;
free(s);
outqueue(a);
}
}
int main()
{
linkqueue *a;
int x,i=2;
a=setnull(a);
for(;;)
{
printf("0-入队 1-出队 2-退出");
scanf ("%d",&i);
switch(i)
{
case 0: enqueue(a); break;
case 1: dequeue(a); break;
case 2: return 0;
}//end case
}
system("pause");
}