1、seqstack.h
#ifndef __SEQSTACK_H__
#define __SEQSTACK_H__
#define MAX 10
typedef int datatype;
typedef struct
{
datatype data[MAX];
int top; //栈顶元素下标
}seqStack;
//创建
seqStack *create();
//判空
int empty(seqStack *S);
//判满
int full(seqStack *S);
//入栈(进栈/压栈)
int push(seqStack *S,datatype e);
//出栈(弹栈)
int pop(seqStack *S);
//遍历栈
void show(seqStack *S);
//销毁栈
void destroy(seqStack *S);
#endif
2、seqstack.c
#include<stdio.h>
#include<stdlib.h>
#include"seqstack.h"
//创建
seqStack *create()
{
seqStack *S = (seqStack *)malloc(sizeof(seqStack));
if(S == NULL)
{
printf("创建失败\n");
return NULL;
}
//初始化
S->top = -1;
printf("创建成功\n");
return S;
}
//判空
int empty(seqStack *S)
{
return S->top == -1? 1:0; //1表示空,0表示非空
}
//判满
int full(seqStack *S)
{
return S->top == MAX-1? 1:0; //1表示满,