入栈和出栈c语言源程序,用c语言可执行文件实现顺序栈的出栈、入栈、判栈空、判栈满!急求啊? 爱问知识人...
#define TRUE 1
#define FALSE 0
#define OK 1
#define ERROR 0
#define OVERFLOW -2
棧定義
typedef struct
{
SElemType *base;
SElemType *top;
int stacksize;
}SqStack;
typedef int Status;
出棧
Status Pop(SqStack *S,SElemType *e)
{
if((*S)。
top == (*S)。base)
return ERROR;
*e = * --(*S)。top;
return OK;
}
入棧
Status Push(SqStack *S,SElemType e)
{
if((*S)。
top - (*S)。base >= (*S)。stacksize)
{
(*S)。base = (SElemType *)realloc((*S)。base,
((*S)。
stacksize STACKINCREMENT) * sizeof(SElemType));
if(!(*S)。base)
exit(OVERFLOW);
(*S)。top = (*S)。
base (*S)。stacksize;
(*S)。stacksize = STACKINCREMENT;
}
*((*S)。top) = e;
return OK;
}
判棧空
Status StackEmpty(SqStack S)
{
if(S。
top == S。base) return TRUE;
else return FALSE;
}
判棧滿
Status StackFull(SqStack S)
{
if(S。
top - S。base >= S。stacksize)
return TRUE;
else return FALSE;
}。
全部
總結
以上是生活随笔為你收集整理的入栈和出栈c语言源程序,用c语言可执行文件实现顺序栈的出栈、入栈、判栈空、判栈满!急求啊? 爱问知识人...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言多线程游戏,如何用C语言实现多线程
- 下一篇: c语言格式化字符漏洞,格式化字符串漏洞题