#include<iostream>
using namespace std;
#define maxsize 100
typedef int selemtype;
typedef int status;
typedef struct
{
selemtype *base;
selemtype *top;
int stacksize;
}sqstack;
//顺序栈的初始化
status initstack(sqstack& s)
{
s.base = new selemtype[maxsize];
if (!s.base) exit(-1);
else
cout << "初始化成功" << endl;
s.top = s.base;
s.stacksize = maxsize;
return 1;
}
//入栈
status push(sqstack& s,int e)
{
if (s.top-s.base==s.stacksize)
return 0;
*s.top++=e;
return 1;
}
//出栈
status pop(sqstack& s, selemtype& e)
{
if (s.base == s.top) return 0;
e = *--s.top;
return 1;
}
//取栈顶元素
status gettop(sqstack &s)
{
if (s.base != s.top)
return *(s.top - 1);
}
//打印顺序栈
void print(sqstack s)
{
while (*s.top != *s.base)
{
cout << *--s.top << endl;
}
}
//置空顺序栈
void clearstack(sqstack &s)
{
s.top = s.base;
}
//判断顺序栈是否为空
int