- *Copyright (c) 2017, 烟台大学计算机学院
- *All rights reserved.
- *作 者:李浩南
- *完成日期:2017年10月19日
- *版 本 号:v1.0
- *问题描述:定义顺序栈存储结构,实现其基本运算
- *结果显示: (1)初始化栈s
(2)栈为空
(3)依次进栈元素a,b,c,d,e
(4)栈为非空
(5)栈长度:5
(6)从栈顶到栈底元素:e d c b a
(7)出栈序列:e d c b a
(8)栈为空 - (9)释放栈
-
-
main.cpp -
#ifndef SQSTACK_H_INCLUDED
#define SQSTACK_H_INCLUDED
#define MaxSize 100
typedef char ElemType;
typedef struct
{
ElemType data[MaxSize];
int top; //栈指针
} SqStack; //顺序栈类型定义
void InitStack(SqStack *&s); //初始化栈
void DestroyStack(SqStack *&s); //销毁栈
bool StackEmpty(SqStack *s); //栈是否为空
int StackLength(SqStack *s); //返回栈中元素个数——栈长度
bool Push(SqStack *&s,ElemType e); //入栈
bool Pop(SqStack *&s,ElemType &e); //出栈
bool GetTop(SqStack *s,ElemType &e); //取栈顶数据元素
void DispStack(SqStack *s); //输出栈
-
- #endif // SQSTACK_H_INCLUDED
- #endif // SQSTACK_H_INCLUDED