#include "stdio.h"
#include "malloc.h"
#include "stdlib.h"
#define maxsize 100
//顺序栈结构体定义
typedef int ElemType;
typedef struct Stack
{
ElemType Stack[maxsize];
int top;
//*struct Stack *rear;*//
}Stack;
//初始化
void InitStack (Stack *s)
{
s->top=0;
}
//判栈栈S是否为空
int StackEmpty (Stack s)
{
if(s.top==0)
return 1;
else
return 0;
}
//入栈
void StackPush(Stack *s,ElemType a)
{
if(s->top==maxsize-1)
{
exit (0);
}
else
{
s->top++;
s->Stack[s->top]=a;
}
}
//出栈
void StackPop (Stack *s,ElemType *b)
{
if(StackEmpty (*s))
printf("空stack");
else
*b=s->Stack[s->top--];
}
//获取栈顶元素内容
void GetTop (Stack s,ElemType *b)
{
if(StackEmpty(s))
printf("空stack");
else
*b=s.Stack[s.top];
}
/*创建一个顺序栈myStack,首先依次向栈压入数据元素1,2,...,10,然后依次输出堆栈中的数据元素并
构建栈结构体
最新推荐文章于 2024-07-06 22:16:55 发布
本文介绍了如何使用C++构建顺序栈结构体,包括初始化、判断栈空、入栈、出栈和获取栈顶元素等基本操作。通过CodeBlocks软件进行上机调试,创建顺序栈myStack,并演示了压入1到10的元素及输出栈中数据的过程。
摘要由CSDN通过智能技术生成