#include<stdio.h>
//定义最大值
#define MAX_SIZE 101
int A[MAX_SIZE];
int top = - 1;
//进栈
void Push(int x)
{
if(top == MAX_SIZE - 1)
{
printf("Stack overflow\n");
return;
}
A[++top] = x;
}
//出栈
void Pop()
{
if(top == -1)
{
printf("Stack is no element to pop\n");
return;
}
top--;
}
//栈是否为空
int IsEmpty()
{
if(top == -1)return 1;
return -1;
}
//返回栈顶
int Top()
{
return A[top];
}
//输出栈值
void Print()
{
int i;
printf("Stack: ");
for(int i = 0;i<top;i++)
printf("%d",A[i]);
printf("\n");
}
//测试
int main()
{
Push(2);Print();
Push(4);Print();
Push(6);Print();
Pop();Print();
Push(12);Print();
}
数据结构-栈(数组实现)
最新推荐文章于 2024-09-07 18:43:14 发布
该程序定义了一个固定大小的栈,使用数组实现。主要功能包括进栈(Push)、出栈(Pop)、检查栈是否为空(IsEmpty)、获取栈顶元素(Top)以及打印栈内所有元素(Print)。在主函数中,进行了进栈、出栈和打印操作的示例测试。
摘要由CSDN通过智能技术生成