程序有点小毛病,始终提示不合法

来源:百度知道 编辑:UC知道 时间:2024/05/09 19:42:57
#include<stdio.h>
#include<malloc.h>

typedef struct Lnode{
int data;
struct Lnode *next;
}Lnode,*LinkStack; //定义链栈

void InitStack(LinkStack &s)
{int n;
s=(LinkStack)malloc(sizeof(Lnode));
s->next=NULL;
printf("输入入栈元素的个数");
scanf("%d",&n);
printf("请由入栈顺序依次输入入栈元素");
scanf("%d",&s->data);
for(int i=0;i<n-1;i++)
{
LinkStack p=(LinkStack)malloc(sizeof(Lnode));
scanf("%d",&p->data);
p->next=s;
s=p;
}
}//初始化栈

int StackEmpty(LinkStack s)
{
if(s==NULL) return 1;//栈空
else return 0;
}//判断链栈是否为空

void Pop(LinkStack &s, int &e)
{
if(!s) printf("error\n");
e=s->data;
LinkStack p=s;
s=s->next;
free(p);
}//删除链栈中的元素

void Push(LinkStack &s, int e)
{
LinkStack p=(LinkStac

#include<stdio.h>
#include<malloc.h>

typedef struct Lnode{
int data;
struct Lnode *next;
}Lnode,*LinkStack; //定???

void InitStack(LinkStack &s)
{
int n;
s=(LinkStack)malloc(sizeof(Lnode));
s->next=NULL;
printf("?入入?元素的??");
scanf("%d",&n);
printf("?由入??序依次?入入?元素");
scanf("%d",&s->data);
for(int i=0;i<n-1;i++)
{
LinkStack p=(LinkStack)malloc(sizeof(Lnode));
scanf("%d",&p->data);
p->next=s;
s=p;
}
}//初始化?

int StackEmpty(LinkStack s)
{
if(s==NULL) return 1;//?空
else return 0;
}//判???是否?空

void Pop(LinkStack &s, int &e)
{
if(!s) printf("error\n");
e=s->data;
LinkStack p=s;
s=s->next;
free(p);
}//?除??中的元素

void Push(LinkStack &