实现代码(array_stack.c)

打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片
打开网易新闻 查看精彩图片

运行结果:

打开网易新闻 查看精彩图片

结果说明:该示例中的栈,是通过"数组"来实现的!

由于代码中已经给出了详细的注释,这里就不再对函数进行说明了。仅对主函数main的逻辑进行简单介绍。

(01) 在主函数main中,先将 "10, 20, 30"依次压入栈。此时,栈的数据是: 30 --> 20 --> 10

(02) 接着通过pop()返回栈顶元素;pop()操作并不会改变栈中的数据。此时,栈的数据依然是: 30 --> 20 --> 10

(03) 接着通过peek()返回并删除栈顶元素。peek操作之后,栈的数据是: 20 --> 10

(04) 接着通过push(40)将40压入栈中。push(40)操作之后,栈的数据是: 40 --> 20 --> 10