编辑代码

#include <stdio.h>
#define datatype char
#define MAXSIZE 100
typedef struct
{   datatype data[MAXSIZE];
    int top;
}SEQSTACK;
SEQSTACK *s;

int main () {
}  
void Init_Stack(SEQSTACK *s)
{   s->top=-1;
}
int Stack_Empty (SEQSTACK *s)
{   if(s->top==-1)
        return 1;
    else
        return 0;
}
void Push_Stack(SEQSTACK *s,datatype x)
{   if(s->top==MAXSIZE-1)
        printf("Stack full\n");
    else
    {   s->top++;
        s-data[s->top]=x;
    }
}
datatype Gettop_Stack(SEQSTACK *s)
{   datatype x;
    if(Stack_Empty(s))
    {   printf("Stack empty.\n");
        x=NULL;
    }
    else
        x=s->data[s->top];
    return x;
}
datatype  Pop_Stack(SEQSTACK *s)
{   datatype x;
    if(Stack_Empty(s))
    {   printf(" Stack empty\n");
        x=NULL;
    }
    else
    {   x=s->data[s->top];
        s->top--;   
    }
    return x;
}