#include<stdio.h>
#include"stdlib.h"
#define TURE 1
#define FALSE 0
#define Stack_Size 50

typedef struct
{
    int a[Stack_Size];
    int top;
}SeqStack;

void InitStack(SeqStack *S)//*初始化
{
    S->top=-1;
}

int Push(SeqStack *S)
{
    if(S->top==Stack_Size-1)
        return(FALSE);
    int c;
    printf("输入插入的值\n");
    scanf("%d",&c);
    while((c!=0)&&(S->top!=Stack_Size-1))
    {
        S->top++;
        S->a[S->top]=c;
        scanf("%d",&c);
    }
    return(TURE);
}

int Pop(SeqStack *S)
{
    printf("出栈的顺序");
    if(S->top==-1)
        return(FALSE);
    int c;
    while(S->top!=-1)
    {
        c=S->a[S->top];
        printf("%d ",c);
        S->top--;
    }
    return(TURE);
}

void main()
{
    SeqStack *S;
    InitStack(S);
    printf("建立栈\n");
    Push(S);
    Pop(S);
}
我只是想建立一个栈,给它赋值然后按出栈的顺序输出!
我调试过了没有错,但是运行时就不行了!错误了!谁知道怎么解决的!?说一下!
谢了!