⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 顺序栈的应用.txt

📁 初始化一个顺序栈
💻 TXT
字号:
 3.	初始化一个顺序栈,编制实现入栈一个元素和出栈一个元素的程序。


#include "malloc.h"
#include "stdio.h"
#define STACK_INIT_SIZE 100
#define STACKINCREMENT 10
typedef struct{
 int *base;   
 int *top;
 unsigned int stacksize;
}SqStack;
SqStack S; 
int e;
int InitStack( )
{   S.base=(int *)malloc(STACK_INIT_SIZE * sizeof(int));
    if(!S.base) return (-2);
    S.top=S.base;
    S.stacksize=STACK_INIT_SIZE;
    return 1;
}

int Push(int ee)
{ if( S.top - S.base>=S.stacksize)
   {S.base= (int *) realloc(S.base,
(S.stacksize+STACKINCREMENT)*sizeof(int));
    if(!S.base) return(-2);
    S.top=S.base+S.stacksize;
    S.stacksize+=STACKINCREMENT;
   }
   *S.top++ = ee;
   return 1;
}
int Pop(  )
{ if(S.top==S.base) return 0;
    e=*--S.top;
  return 1;
}

main(){
   int x;
   InitStack( );
   printf("\ninput a integer:");
   scanf("%d",&x);
   Push(x);
   Pop();
   printf("%d\n",e); 
}
运行情况:
  输入数据: input a integer:36
  运行结果: 36

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -