问题 单项选择题

有如下程序:#nclude<iostremn>using namespace std;class Stack{public:Stack(unsigned n=10:size(n){rep_=new int[size];top=O;}Stack(Stack&s):size(s.size){ rep_=new int[size];for(int i=0;i<size;i++)rep_[i]=s.rep_[i];top=s.top;}~Stack(){delete[]rep_;}void push(int a){rep_[top]=a; top++;}int opo(){--top;return rep_[top];}bool is Empty()const{return top==O;}pavate: int*rep_; unsigned size,top;};int main(){ Stack s1; for(int i=1;i<5;i++) s1.push(i); Stack s2(s1); for(i=1;i<3;i++) cout<<s2.pop()<<’,’; s2.push(6); s1.push(7); while(!s2.isEmpty()) cout<<s2.pop()<<’,’;return 0;} 执行上面程序的输出是

A.4,3,2,1

B.4,3,6,7,2,1

C.4,3,6,2,1

D.1,2,3,4

答案

参考答案:C

单项选择题
问答题