我有一个简单的堆栈,我想使用向上和向下功能来完成它。我的down
函数似乎跳过了一些数字并且它没有正确计数,如果我向上移动一个地方然后向下移动一个地方down
函数返回的值小于{{1}显示的值功能。请帮助我在这里缺少什么?
up
答案 0 :(得分:0)
我的
down
函数似乎跳过了一些数字,因此计数不正确
在down()
中,您至少必须删除
if (stack->count < stack->top)
因为stack->list[stack->top]
是stack
中有效的最后一项。
如果我将
down
函数上移一个位置然后将其下移一个位置,则返回的值小于up
函数显示的值。
可能令人困惑的是,up()
和down()
都显示了它们正在远离的值,因此当up()
从10
移到{{1}时}显示9
,随后的10
从down()
返回9
时显示10
。