数组实现栈
【摘要】 学习了改进,利用define typedef比上次写的链表更容易改变功能,方便维护,代码更健壮。
大佬别嫌弃,萌新总是很笨,用typedef都想不到。
#include<stdio.h>#include<stdbool.h>#define maxsize 10typedef int datatype;typedef struct stack{ da...
学习了改进,利用define typedef比上次写的链表更容易改变功能,方便维护,代码更健壮。
大佬别嫌弃,萌新总是很笨,用typedef都想不到。
-
#include<stdio.h>
-
#include<stdbool.h>
-
#define maxsize 10
-
typedef int datatype;
-
typedef struct stack
-
{
-
datatype data[maxsize];
-
int top;
-
}Stack;
-
Stack s;
-
void init()//初始化
-
{
-
s.top=-1;
-
}
-
int Empty()//是否空
-
{
-
if(s.top==-1)return 1;
-
return 0;
-
}
-
int full()//是否满
-
{
-
if(s.top==maxsize-1)return 1;
-
return 0;
-
}
-
void Push(datatype element)//入栈
-
{
-
if(!full()){
-
s.top++;
-
s.data[s.top]=element;
-
}
-
else printf("栈满\n");
-
}
-
void Pop()//出栈
-
{
-
if(!Empty()) s.top--;
-
else printf("栈空\n");
-
}
-
datatype Top()//取栈顶元素
-
{
-
if(!Empty()) return s.data[s.top];
-
printf("栈空\n");
-
}
-
void Destroy()//销毁
-
{
-
s.top=-1;
-
}
测试不写了。
文章来源: fantianzuo.blog.csdn.net,作者:兔老大RabbitMQ,版权归原作者所有,如需转载,请联系作者。
原文链接:fantianzuo.blog.csdn.net/article/details/81286583
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)