#include<iostream.h>
const int MAXSIZE=100;

typedef struct
{
  int data[MAXSIZE];
  int top;
}SeqStack;  // 顺序栈的类型定义



void Init_SeqStack(SeqStack *s) //栈的初始化
{   
    if((s=new SeqStack)==NULL) cout<<"error";
    s->top=-1;
}


int Empty_SeqStack(SeqStack *s) //栈判空
{
  if(s->top==-1)  return 1;
  else return 0;
}


int Push_SeqStack(SeqStack *s,int x) //入栈
{
  if(s->top==MAXSIZE-1)  return 0;
  else
  {
    s->data[++s->top]=x;
    return 1;
  }
}


int Pop_SeqStack(SeqStack *s,int *x) //出栈
{
  if(Empty_SeqStack(s)) return 0;
  else
  {
    *x=s->data[s->top--];
    return 1;
  }
}
 
 
void main()//输入三个数据,并将其输出
{
 SeqStack s;
 int x,i;
 Init_SeqStack(&s);
 cout<<"请输入4个数据:";
 for(i=0;i<3;i++)
 {
   cin>>x;
   Push_SeqStack(&s,x);
 }
 while(!(Empty_SeqStack(&s)))
 {Pop_SeqStack(&s,&x); cout<<x;}
}


这个程序输出有错误 麻烦高手帮忙修改一下 ,谢谢了