本文主要是介绍顺序栈的出入栈,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
#include <stdio.h>
#define MaxSize 10
typedef struct{
int data[MaxSize];
int top;
}SqStack;
void InitSqStack(SqStack &S){
S.top=-1;
}
bool Full(SqStack &S){
if(S.top == MaxSize-1)
return false;
return true;
}
bool Empty(SqStack &S){
if(S.top==-1)
return false;
return true;
}
bool push(SqStack &S,int e){
if(Full(S)){
S.data[++S.top]=e;
return true;
}
return false;
}
bool pop(SqStack &S,int &x){
if(Empty(S)){
x=S.data[S.top--];
return true;
}
return false;
}
int main() {
SqStack S;
int x;
InitSqStack(S);
push(S,1);
push(S,2);
push(S,3);
pop(S,x);
printf_s("%d",x);
pop(S,x);
printf_s("%d",x);
pop(S,x);
printf_s("%d",x);
if(pop(S,x) == false)
printf_s("出错啦");
}
这篇关于顺序栈的出入栈的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!