帮忙修改下算法
#include<stdio.h>#include<iostream>
using namespace std;
#define MAX 10000
#define isEmpty(s) (s.top==-1)
typedef struct{
int data[MAX];
int top;
}Stack;
void init(Stack &s)//初始化
{
s.top=-1;
for(int i=0;i<10;i++)
s.data[++s.top]=i;
};
void Push(Stack &s,int i)//入栈
{
s.data[++s.top]=i;
};
int Pop(Stack &s)//出栈
{ if(!isEmpty(s))
return s.data[s.top--];
else return NULL;
};
int getBase(Stack s)//返回栈底
{
if(isEmpty(s))
return NULL;
int r;
while(!isEmpty(s))
r=Pop(s);
return r;
};
void print(Stack s)//打印
{
while(!isEmpty(s))
cout<<Pop(s)<<' ';
cout<<endl;
};
void main()//测试
{
Stack s;
init(s);
cout<<getBase(s)<<endl;
print(s);
};
这个能使栈中的元素顺序逆转吗?????