假设你执行了下列的栈操作:s = Stack()s.push(1)s.push(3)s.pop()s.push(5)s.push(7)现在栈内还有哪些元素?
举一反三
- 假设你执行了下列的栈操作:s = Stack()s.push(1)s.push(3)s.push(5)s.pop()s.push(7)现在栈内还有哪些元素? A: 1, 5, 7 B: 3, 5, 7 C: 1, 3, 7 D: 1, 3, 5
- 栈S初始为空,进行一下操作后从栈顶到栈底的元素依次为:S.push(5);S.push(4);S.pop();S.push(2);S.pop();S.pop();S.push(1) A: 5, 4, 2, 1 B: 1, 2, 4, 5 C: 1 D: 5, 4
- 以下操作完成以后,栈S中从栈底到栈顶的元素依次是( )。InitStack(S);Push(S,5);GetTop(S,a);Push(S,3);Pop(S,b)Push(S,x+y) ; A: 5 3 B: 8 C: 5 3 8 D: 5 8
- 写出下列程序段的输出结果(栈的元素类型为char)。 void main(){ Stack S; char x,y; InitStack(S); x= ‘c’; y= ‘k’; Push(S,x); Push(S, ‘a’); Push(S,y); Pop(S,x); Push(S, ‘t’); Push(S,x); Pop(S,x); Push(S, ‘s’); while(!StackEmpty(S)) { Pop(S,y); printf(y); } printf(x); }
- 对一个初始为空的栈s执行操作push(s,5),push(s,2),push(s,4),pop(s,x),getTop(s,x)后,x的值应是。