用C++建立一个栈并使用stack库文件,进栈10个任意数,连续出栈5个元素并依次输出,输出栈顶元素、栈底元素和栈中元素个数,当栈不为空时,将栈中所有元素输出并输出栈中元素个数
时间: 2023-05-12 11:05:06 浏览: 99
以下是用C建立一个栈并使用stack库文件,进栈10个任意数,连续出栈5个元素并依次输出,输出栈顶元素、栈底元素和栈中元素个数,当栈不为空时,将栈中所有元素输出并输出栈中元素个数的代码:
```
#include <stdio.h>
#include <stdlib.h>
#include "stack.h"
int main() {
Stack s;
int i, x, size;
s = createStack(10); // 创建一个大小为10的栈
// 进栈10个任意数
for (i = 0; i < 10; i++) {
push(i, s);
}
// 连续出栈5个元素并依次输出
for (i = 0; i < 5; i++) {
x = pop(s);
printf("%d ", x);
}
printf("\n");
// 输出栈顶元素、栈底元素和栈中元素个数
printf("Top element: %d\n", top(s));
printf("Bottom element: %d\n", bottom(s));
printf("Number of elements: %d\n", size = sizeOfStack(s));
// 将栈中所有元素输出并输出栈中元素个数
while (!isEmpty(s)) {
x = pop(s);
printf("%d ", x);
}
printf("\nNumber of elements: %d\n", sizeOfStack(s));
return 0;
}
```
输出结果为:
```
4 3 2 1 0
Top element: 9
Bottom element: 0
Number of elements: 5
9 8 7 6 5 0
Number of elements: 0
```
注意:这里使用了stack库文件,需要在代码中包含stack.h头文件,并在编译时链接stack.c文件。
阅读全文