问题 填空题

请将下列栈类Stack补充完整。 class Stack{ private:int pList[100]; //int 数组,用于存放栈的元素int top; // 栈顶元素(数组下标) public:Stack():top(0){}void Push(const int &item); // 新元素item压入栈int Pop(void); // 将栈顶元素弹出栈 }; void Stack::Push(const int &item){if(top==99) // 如果找满,程序终止 exit(1);top++;// 栈顶指针增1 ______; } int Stack::Pop(){if(top<0)// 如果栈空,程序终止 exit(1);return pList[top--]; }

答案

参考答案:pList[top]=item

解析: 此题考查的是堆栈数据结构。堆栈是一种先进后出的队列,每次入栈在栈顶,出栈也在栈顶。当栈顶指针所指位置是最后一个有效数据时,下次出栈直接取出栈顶指针所指数据,然后栈顶指针再减1;入栈时需要将栈顶指针先增1,然后将数据存入栈顶指针所指位置。本题中,从Pop()函数中可以看出,是先取数然后top才会减1,Push()函数应先增1再取数。所以应填入pList[top]=item。

问答题 简答题
填空题