📄 seqstack.c
字号:
/*顺序栈*/
#include<stdio.h>
#define Maxsize 100
typedef struct
{
int data[Maxsize];
int top;
}SeqStack;
SeqStack *Init_SeqStack()
{
SeqStack *s;
s=(SeqStack *)malloc(sizeof(SeqStack));
s->top=-1;
return s;
}
/*入栈*/
int Push_Seqstack(SeqStack *s,int x)
{
if(s->top==Maxsize-1)return 0;
else{
s->top++;
s->data[s->top]=x;
return 1;
}
}
/*出栈*/
int Pop_SeqStack(SeqStack *s,int *y)
{
if(Empty_SeqStack(s)) return 0;
else{
*y=s->data[s->top];
s->top--;
return 1;
}
}
/*判空栈*/
int Empty_SeqStack(SeqStack *s)
{
if(s->top==-1) return 1;
else return 0;
}
void main()
{
int i,y,*c;
SeqStack *p;
p=Init_SeqStack();
scanf("%d",&y);
while(y!=0)
{
if(Push_Seqstack(p,y)==1)
scanf("%d",&y);
}
while(!Empty_SeqStack(p))
{
if(Pop_SeqStack(p,&y)==1)
printf("%d\t",y);
}
getch();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -