资源简介

数据结构中的栈的四则运算实现...............................................

资源截图

代码片段和文件信息

#include
#include

#define STACK_INIT_SIZE 10
#define STACKINCREMENT 10


char op[7]={‘+‘‘-‘‘*‘‘/‘‘(‘‘)‘‘\n‘};

typedef struct 
{
int *base;
int *top;
int stacksize;
}SqStack;

void InitStack(SqStack *s)
{
s->base=(int *)malloc(STACK_INIT_SIZE*sizeof(int));
s->top=s->base;
s->stacksize=STACK_INIT_SIZE;
}

char GetTop(SqStack *s)  //返回线顶元素
{
if(s->top==s->base)
{
printf(“栈为空!“);
return 0;
}
return *(s->top-1);
}

void Push(SqStack *sint e)
{
if(s->top-s->base>=s->stacksize)
{
s->base=(int *)realloc(s->base(s->stacksize+STACKINCREMENT)*sizeof(int));
s->top=s->base+s->stacksize;
s->stacksize+=STACKINCREMENT;
}
*(s->top)=e;
s->top++;
}

void Pop(SqStack *sint *e)
{
if(s->top==s->base)
{
pr

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2011-07-07 22:05  stack3\
     文件        3753  2011-06-08 19:22  stack3\1.c
     目录           0  2011-07-07 22:05  stack3\Debug\
     文件       14620  2011-06-08 19:22  stack3\Debug\1.obj
     文件      176211  2011-06-08 19:22  stack3\Debug\stack3.exe
     文件      238744  2011-06-08 19:22  stack3\Debug\stack3.ilk
     文件      177404  2011-06-05 23:13  stack3\Debug\stack3.pch
     文件      427008  2011-06-08 19:22  stack3\Debug\stack3.pdb
     文件       33792  2011-07-07 21:59  stack3\Debug\vc60.idb
     文件       53248  2011-06-08 19:22  stack3\Debug\vc60.pdb
     文件        4277  2011-06-06 00:21  stack3\stack3.dsp
     文件         537  2011-06-05 22:11  stack3\stack3.dsw
     文件       41984  2011-07-07 21:59  stack3\stack3.ncb
     文件       54784  2011-07-07 21:59  stack3\stack3.opt
     文件         246  2011-06-10 00:00  stack3\stack3.plg

评论

共有 条评论