能否提供一个栈(Stack)插入元素的典型代码实现,使用c语音
时间: 2024-09-29 12:01:44 浏览: 23
C语言 数据结构中栈的实现代码
当然可以。在C语言中,栈通常通过数组或者链表来实现。这里是一个基于数组的简单栈实现,包含插入(入栈)元素的方法:
```c
#include <stdio.h>
#define MAX_SIZE 10 // 栈的最大容量
// 定义栈结构体
typedef struct {
int data[MAX_SIZE]; // 存储栈元素
int top; // 栈顶指针
} Stack;
// 初始化栈
void init(Stack* s) {
s->top = -1;
}
// 判断栈是否已满
int isFull(Stack* s) {
return s->top == MAX_SIZE - 1;
}
// 判断栈是否为空
int isEmpty(Stack* s) {
return s->top == -1;
}
// 入栈(插入)
void push(Stack* s, int value) {
if (isFull(s)) {
printf("Stack is full.\n");
return;
}
s->data[++s->top] = value;
printf("Inserted %d into the stack.\n", value);
}
// 示例
int main() {
Stack myStack;
init(&myStack);
push(&myStack, 5);
push(&myStack, 10);
push(&myStack, 15); // 这里假设栈未满
return 0;
}
```
阅读全文