#include<stdio.h>
#include<malloc.h>
#include<assert.h>
typedef struct stack //栈
{
int* a;
int top;
int stackmax;
}STack,*lpstack;
lpstack create(int max) //初始化
{
lpstack stack = (lpstack*)malloc(sizeof(STack)); //动态分配空间
assert(stack); //加断点
stack->a = (int*)malloc(sizeof(int)*max);
stack->stackmax = max;
stack->top = -1;
return stack;
}
void push(lpstack stack, int data) //入栈
{
if (stack->top == stack->stackmax)
return;
stack->a[++stack->top] = data;
}
int pop(lpstack stack) //出栈
{
if (stack->top == -1)
return;
return stack->top--;
}
int empty(lpstack stack) //判空
{<
C语言用栈实现逆序
这段代码展示了如何使用C语言实现一个栈,并利用栈来实现整数序列的逆序输出。通过创建栈、入栈、出栈等操作,依次将输入的整数序列倒序打印出来。
摘要由CSDN通过智能技术生成