用c语言设有一组数据1,2,3,4,5,6,7,8,9为整数。利用这些数据完成下列操作。(1)初始化栈;(2)将9个数据进栈;(3)将9,8,7,6出栈;(4)判断栈空。
时间: 2024-05-07 20:21:01 浏览: 224
用C语言完成对栈的一些操作
以下是使用C语言实现的代码:
```c
#include <stdio.h>
#define STACK_SIZE 10
int stack[STACK_SIZE];
int top = -1;
void push(int data) {
if (top == STACK_SIZE - 1) {
printf("Stack overflow\n");
} else {
top++;
stack[top] = data;
}
}
int pop() {
int data = -1;
if (top == -1) {
printf("Stack underflow\n");
} else {
data = stack[top];
top--;
}
return data;
}
int is_empty() {
if (top == -1) {
return 1;
} else {
return 0;
}
}
int main() {
int i;
// 初始化栈
top = -1;
// 将数据1~9进栈
for (i = 1; i <= 9; i++) {
push(i);
}
// 将9,8,7,6出栈
for (i = 0; i < 4; i++) {
pop();
}
// 判断栈是否为空
if (is_empty()) {
printf("Stack is empty\n");
} else {
printf("Stack is not empty\n");
}
return 0;
}
```
输出结果为:
```
Stack is not empty
```
说明栈还有数据。
阅读全文