不知道这道题如何理解?
这道题指针的序号范围为1~m,初始状态为m+1,可以看出这个栈是由开口处向闭口处,序号依次增大的。现在栈顶序号为m,则目前栈内有一个元素——m。之后退出了一个元素,栈顶指针top值就要增大1,变成m+1了。
设栈的存储空间为S(1:m),初始状态为top=m+1。经过一系列入栈与退栈操作后,top=m。现又在栈中退出一个元素后,栈顶指针top值为( ) A. m+1 B. 0 C. m-1 D. 产生栈空错误
答案:A
解析:栈的顺序存储空间为S(1: m),初始状态top=m+1,所以这个栈是m在栈底,1是开口向上的。所以经过一系列入栈与退栈操作后,top=m,则有1个元素,若现在又退出一个元素,那么栈顶指针下移一位,回到m+1的位置。因此这题选择A。