王道数据结构实践代码----顺序栈的实现(C语言版)
前言
日期:2021年10月28日
书籍:王道2021年数据结构考研复习指导
代码内容:实现顺序栈的基本实现,主要功能如下:
❶ 栈的数据结构
❷ 出栈
❸ 入栈
❹ 判栈空
❺ 读栈顶
代码难点
1.关于i++和++i的使用
代码展示
1.顺序栈的数据结构
//【1】预编译部分
#include <stdio.h>
#include <stdlib.h>
//【2】宏定义部分
#define bool char
#define true 1
#define false 0
//【3】自定义变量部分
#define MaxSize 50 //定义栈中元素的最大个数
//【4】顺序栈的数据结构
typedef int Elemtype; //自定义顺序栈的数据元素类型
typedef struct SqStack
{
Elemtype data[MaxSize];
int top; //栈顶指针
}SqStack;
2.顺序栈的初始化和判空
//【5】顺序栈的初始化
bool Initstack(SqStack *S)
{
S->top = -1; //初始化栈顶指针(判空条件S->top = -1;)
}
//【6】判栈空
bool StackEmpty(SqStack S)
{
if(S.top == -