可以给我一个完整的程序不???我用过这种方法,可是编译不出来,我也不知道那里错了!!!是用顺序表对输入一组数进行倒置的程序!!急求!!!帮个忙!!谢谢!!!
追答假设用数组A[ ]来存储这一组数
算法如下:
#include
#include
#include
define MaxSize 100
int main()
{
typedef struct {
int data[MaxSize];
int top;
}SqStack;
int A[MaxSize];
SqStack *s;
void initStack(SqStack *&s)
{
s=(SqStack *)malloc(sizeof(SqStack))
s->top=-1;
}
int push(SqStack *&s, int x)
{
if(s->top==MaxSize)
return 0;
s->top++;
s->data[s->top]=x;
return 1;
}
pop(SqStack *&s,int y)
{
if(s->top==-1)
return 0;
y=s->data[s->top];
s->top-- ;
return 1;
}
for(i=0;i<n;i++)
scanf("%d",A[i]);
initStack(s);/*其中s表示空栈*/
for(i=0;i<n;i++)
push(s,A[i]);
for(i=0;i<n;i++)
{
pop(s,e);
printf("%d",e);
}
system("pause");
return 1;
}
你自己试试吧 我没运行不太清楚可不可行。