#include <myhead.h>
#define MAX 4
struct
{
int age;
int score;
char name[20];
}Stu;
typedef struct node
{
Stu s;
struct node *next;
}Node;
typedef struct
{
int len;
Node *top;
}Stack,*Pstack;
typedef struct
{
int len;
Node *rear;
Node *front;
}Queue,*Pqueue;
int get_head()
{
Pstack p=malloc(sizeof(Node));
if(p==NULL)
{
printf("链栈创建失败\n");
return -1;
}
p->len=0;
p->top=NULL;
return p;
}
int push_stack(Pstack L,int e)
{
if(L==NULL||L->len==0)
{
printf("链栈不存在或者为空\n");
return -1;
}
Node *p=malloc(sizeof(Node));
p->data=e;
p->next=L->top;
L->top=p;
L->len++;
return 0;
}
int in_queue(Pqueue L,int e)
{
if(L==NULL)
{
printf("队列不存在\n");
return -1;
}
Node *p=malloc(sizeof(Node));
p->data=e;
if(L->rear==NULL)
{
L->rear=p;
L->front=p;
}
else
{
L->next->next=p;
L->rear=p;
}
L->len++;
printf("入队成功\n");
return 0;
}
int main (int argc, const char *argv[])
{
Pstack L = get_head();
stu s[MAX]={{18,89,"11"},
{19,22,"22"},
{22,33,"44"}.
{18,88,"55"}};
push_stack(Pstack L,int e);
in_queue(Pqueue L,int e);
return 0;
}