(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
(6)有如下程序:
#inCludeusing namespaCe std; Class B{
publiC:
virtual void show(){Cout<<”B”;} };
Class D:publiC B{ . publiC:
void show(){Cout<<”D”;} };
void funl(B * ptr){ptr一>show();} void fUN2(B&ref){ref.show();}
voidfhIl3(B b){b.show();} int main()
{
B b,* P=new D; D d;
funl(P); fun2(b); fun3(d);
delete P; return 0; }
执行这个程序的输出结果是( )。
A)BBB
B)BBD
C)DBB
D)DBD
答案:C
(7)C++中的模板包括( )。
A)对象模板和函数模板
B)对象模板和类模板
C)函数模板和类模板
D)变量模板和对象模板
答案:C
(8)下列关于类模板的模板参数的叙述中,错误的是( )。
A)模板参数可以作为数据成员的类型
B)模板参数可以作为成员函数的返回类型
C)模板参数可以作为成员函数的参数类型
D)模板参数不能作为成员函数的局部变量的类型
答案: D
(9)下列关于C++预定义流对象的叙述中,正确的是( )。
A)Cin是C++预定义的标准输入流对象
B)Cin是C++预定义的标准输入流类
C)Cout是C++预定义的标准输入流对象
D)Cout是C++预定义的标准输入流类
答案:A
(10)有如下语句序列:
Char str[10];Cin>>str;
当从键盘输入“I love this game”时,str中的字符串是( )。
A)”I love this game”
B)”I love thi”
C)”I love”
D)”I”
答案:D
点击加载更多评论>>