(1)有如下程序:
#inCludeusing namespaCe std; Class MyClass{
publiC:
MyClass(int X):val(X){}
void Print()Const}tout<<”Const:val=”<<VAL<<’\T’;} Print(){tout<<”val= void="">
private:
int val; };
int main(){
Const MyClass objl(10); MyClass obj2(20);
objl.Print(); obj2.Print(); retum 0;
}
执行这个程序的输出结果是( )。
A)val=10 Const:val=20
B)Const:val=10 Const:val=20
C)Const:val=10 val=20
D)val=10 val=20
答案:C
(2)有如下程序:
#jnClude
using namespaCe std; Class Part{
publiC:
Part(int x=0):val(X){Cout<<VAL;} p ~Part(){Cout<<val;}<>
private:
int val; t };
Class Whole{ publiC:
Whole(int x,int Y,int z=0):p2(x),pl(y),val(z){Cout<<VAL;} p ~Whole(){eout<<val;}<>
private:
Part pl,p2; int val;
};
int main() {
Whole obj(1,2,3); return 0;
}
执行这个程序的输出结果是( )。
A)123321
B)213312
C)213
D)123123
答案:B
(3)有如下程序:
#inCludeusing namespaCe std; Class Base{
publiC:
Base(int x=0){Cout<<X;} p };<>
Class Derived:publiC Base{ publiC:
Derived(int X=0){Cout<<X;} p private:<>
Base val; };
int main() {
Derived d(1); return 0;
}
执行这个程序的输出结果是( )。
A)0
B)1
C)01
D)001
答案:D
(4)下列代码段中声明了3个类:
Class Person{};
Class Student:publiC Person{}; Class Undergraduate:Student{};
下列关于这些类之间关系的描述中,错误的是( )。
A)类Person是类Undergraduate的基类
B)类Undergraduate从类Student公有继承
C)类Student是类Person的派生类
D)类Undergraduate是类Person的派生类
答案:B
(5)有如下程序:
#inCludeusing namespaCe std; Class Base{
publiC:
void output(){Cout<<1;}
virtual void Print(){Cout<<'B’;} };
Class Derived:publiC Base{ publiC:
void output(){Cout<<2;} void Print(){Cout<<’D ';} };
int main() {
Base * ptr=new Derived; ptr一>output();
ptr一>Print(); delete ptr;
retum0; }
执行这个程序的输出结果是( )。
A)1B
B)lD
C)2B
D)2D
答案:B
相关信息参考郑大自考网 高老师:13592419990(微信同号)