顺序栈C语言实现

网友投稿 546 2022-11-18

顺序栈C语言实现

顺序栈C语言实现

“`

#include #define MAXSIZE 10001#define ELEMTYPE int#define STACK_EMPTY -9999#define N 10typedef struct stack{ ELEMTYPE data[MAXSIZE]; int top;} Seq_Stack;void initStack(Seq_Stack *S);void push(Seq_Stack *S,ELEMTYPE e);ELEMTYPE pop(Seq_Stack *S);int isStackEmpty(Seq_Stack *S);int isStackFull(Seq_Stack *S);void printStack(Seq_Stack *S);int main(void){ Seq_Stack Seq_S; initStack(&Seq_S); int i; for(i=1;i<=N;++i) { push(&Seq_S,i); } printStack(&Seq_S); return 0;}void initStack(Seq_Stack *S){ S->top = -1;}int isStackEmpty(Seq_Stack *S){ return S->top == -1;}int isStackFull(Seq_Stack *S){ if(S->top == MAXSIZE-1) return 1; return 0;}void push(Seq_Stack *S,ELEMTYPE e){ if(isStackFull(S)) return; S->data[++ S->top] = e;}ELEMTYPE pop(Seq_Stack *S){ if(isStackEmpty(S)) return STACK_EMPTY; return S->data[S->top --];}void printStack(Seq_Stack *S){ while(!isStackEmpty(S)) { printf("%d\t",pop(S)); }}

···

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Linux查看进程启动时间与运行时间
下一篇:开始学习Docker啦--容器理论知识(一)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~