使用C语言实现一个入栈和出栈的函数
时间: 2024-02-13 11:04:57 浏览: 73
入栈出栈的C语言实现
5星 · 资源好评率100%
好的,下面是入栈和出栈的函数实现。
首先,定义一个栈结构体及其相关信息:
```c
#define MAX_SIZE 100 // 栈的最大大小
typedef struct {
int data[MAX_SIZE]; // 栈数据
int top; // 栈顶指针
} Stack;
```
然后,实现入栈函数 push:
```c
void push(Stack *s, int value) {
if (s->top == MAX_SIZE - 1) { // 栈已满
printf("Stack overflow!\n");
return;
}
s->data[++(s->top)] = value; // 栈顶指针上移并赋值
}
```
最后,实现出栈函数 pop:
```c
int pop(Stack *s) {
if (s->top == -1) { // 栈已空
printf("Stack underflow!\n");
return -1;
}
return s->data[(s->top)--]; // 返回栈顶元素并将栈顶指针下移
}
```
这样,我们就实现了栈的入栈和出栈操作。
阅读全文