(源代码见大话数据结构)栈的顺序存储结构——进栈&出栈

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了(源代码见大话数据结构)栈的顺序存储结构——进栈&出栈相关的知识,希望对你有一定的参考价值。

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define MAXSIZE 1000
#define OK 1
#define ERROR 0
#define TRUE 1
#define FALS 0
typedef int SElemType;
typedef int Status;
typedef struct
{
    SElemType data[MAXSIZE];
    int top;
}SqStack;
Status Push(SqStack *S,SElemType e);
Status Pop(SqStack *S,SElemType *e);
int main()
{
    SqStack s;
    s.top=0;
    int i,num;
    scanf("%d",&(s.top));
    for(i=0;i<=s.top;i++)
    {
        s.data[i]=i+1;
    }
    Push(&s,222);
    for(i=0;i<=s.top;i++)
    {
        printf("%d ",s.data[i]);
    }
    Pop(&s,&num);
    printf("\n%d",num);
    return 0;
}
Status Push(SqStack *S,SElemType e)
{
    if(S->top==MAXSIZE-1)
        return ERROR;
    S->top++;
    S->data[S->top]=e;
    return OK;
}
Status Pop(SqStack *S,SElemType *e)
{
    if(S->top==-1)
        return ERROR;
    *e=S->data[S->top];
    S->top--;
    return OK;
}


实战BUG:

1.把S->top写成top了,Codeblocks里只说了有两个ERROR但没指出来,看了两遍才看出来。。

 

以上是关于(源代码见大话数据结构)栈的顺序存储结构——进栈&出栈的主要内容,如果未能解决你的问题,请参考以下文章

大话数据结构4之栈与队列

(源代码见大话数据结构)线性表—循环队列的顺序存储结构

大话数据结构--学习目录

栈的顺序存储结构及应用(CJava代码)

栈的顺序存储结构

数据结构&算法08-栈概念&源码