#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 10
typedef struct {
int data[MAXSIZE];
int top;
}SqStack;
// 初始化栈
int InitStack(SqStack* node) {
node->top = -1;
return 1;
}
// 判断栈是否为空
int jugdeStack(SqStack* node) {
if (node->top == -1)
return 1;//栈空
else
return 0;//栈未空
}
// 入栈
int inStack(SqStack *node,int data) {
if (node->top==MAXSIZE-1)
return -1;//栈满,报错
node->top++;
node->data[node->top] = data;
return 1;
}
//出栈
int outStack(SqStack* node,int popData) {
if (node->top == -1)
return -1;//栈空,报错
popData = node->data[node->top];
node->top--;
return 1;
}
//打印栈中全部元素
void printfAll(SqStack* node) {
for (int i = 0; i <= node->top; i++) {
printf("%d\n", node->data[i]);
}
system("pause");
}
//获取栈顶元素
int getTop(SqStack* node,int data) {
if (node->top == -1)
return -1;
data = node->data[node->top];
return 1;
}
int main() {
SqStack test;
InitStack(&test);
for (int i = 0; i < MAXSIZE; i++) {
inStack(&test, i);
}
printfAll(&test);
//system("pause");
return 0;
}
C语言顺序栈(仅做记录,无讲解)
最新推荐文章于 2024-09-15 10:16:56 发布