#include"stdio.h"
#include"malloc.h"
typedef char datatype;
typedef struct SeqStack
{
datatype elem[100];
int top;
}SeqStack,*LinkList;
void IniSeqStack(LinkList p)
{
p->top=-1;
}
int push(LinkList p,datatype m)
{
if(p->top==99)
{
printf("栈满了!
");
return 0;
}
else
{
p->top++;
p->elem[p->top]=m;
return 1;
}
}
int pop(LinkList p)
{
if(p->top==-1)
{
printf("栈已经空了!
");
return 0;
}
else
{
while(p->top!=-1)
{
printf("%c",p->elem[p->top]);
p->top--;
}
return 1;
}
}
void main()
{
datatype m;
LinkList p;
p=(SeqStack *)malloc(sizeof(SeqStack));
IniSeqStack(p);//初始化
while(m!='#')
{
scanf("%c",&m);
push(p,m);//进栈
}
pop(p);//出栈
putchar('
');
free(p);
}
本文出自 “阿凡达” 博客,请务必保留此出处http://shamrock.blog.51cto.com/2079212/817863