如果以链表作为栈的存储结构,在出栈操作时,则( )
A、
必须判别栈是否满
B、
判别栈元素的类型
C、
必须判别栈是否空
D、
对栈不作任何判别
【正确答案】:C
【题目解析】:
出栈的实现:
int Pop {SeqStk *stk) {
if (EmptyStack(stk)) //判断是否下溢(栈空)
{ error(“下溢”);
return 0;
}
else //未下溢,栈顶元素出栈
{ stk->top--; //top值减1
return 1;
}
}
故出栈都必须先判断栈是否为空。选C。