数据结构-顺序栈

本文通过一个简单的C语言程序演示了栈的基本操作,包括初始化、元素入栈及出栈过程。程序首先初始化一个空栈,然后向栈中压入两个元素,并弹出栈顶元素。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

复习日历-2018/7/26晚19:30

测试代码

#include <stdio.h>
#include <stdlib.h>
typedef int ElemType;
#define MAXSIZE 100
typedef struct seqStack{
    ElemType stack[MAXSIZE];
    int top;
}seqStack;  //栈的数据类型的定义
void initSeqStack(seqStack *L);
int seqStackPush(seqStack *L,ElemType e);
int seqStackPop(seqStack *L);
int main()
{
    seqStack L;
    initSeqStack(&L);
    seqStackPush(&L,1);
    seqStackPush(&L,2);
    seqStackPop(&L);
    return 0;
}
//初始化顺序栈
void initSeqStack(seqStack *L){
    L->top = 0;
    printf("initSeqStack is ok!\n");
}
//入栈
int seqStackPush(seqStack *L,ElemType e){
    if(L->top >= MAXSIZE){
        return 0;
    }
    L->stack[L->top] = e;
    L->top++;
    printf("push %d is ok!\n",e);
    return 1;
}
//出栈
int seqStackPop(seqStack *L){
    if(L->top <= 0){
        return 0;
    }
    L->top--;
    printf("seqStackPop %d is ok!\n",L->stack[L->top]);
    return 1;
}

测试结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值