用C语言实现栈的基本操作
时间: 2023-04-10 10:03:21 浏览: 88
可以使用数组或链表来实现栈的基本操作,以下是使用数组实现栈的基本操作的示例代码:
```c
#include <stdio.h>
#define MAX_SIZE 100
int stack[MAX_SIZE];
int top = -1;
void push(int value) {
if (top == MAX_SIZE - 1) {
printf("Stack overflow!\n");
return;
}
stack[++top] = value;
}
int pop() {
if (top == -1) {
printf("Stack underflow!\n");
return -1;
}
return stack[top--];
}
int peek() {
if (top == -1) {
printf("Stack is empty!\n");
return -1;
}
return stack[top];
}
int main() {
push(10);
push(20);
push(30);
printf("Top element is %d\n", peek());
printf("Popped element is %d\n", pop());
printf("Top element is %d\n", peek());
return 0;
}
```
这段代码实现了栈的基本操作,包括 push、pop 和 peek。其中,push 将元素压入栈中,pop 将栈顶元素弹出并返回,peek 返回栈顶元素但不弹出。