东师C++程序设计17春在线作业2答案资料
奥鹏东师C++程序设计17春在线作业2一、单选题:【20道,总分:60分】东师在线作业为随机作业,请联系QQ515224986代做
1.下面的类型声明中正确的是( )。 (满分:3)
A. int &a;
B. int &*p;
C. int & &q;
D. int I,*pp=&I;
2.如果类B在类A的基础上构造,那么,就称( )。 (满分:3)
A. 类A为基类或父类,类B为超类或子类
B. 类A为基类、父类或超类,类B为派生类或子类
C. 类A为派生类,类B为基类
D. 类A为派生类或子类,类B为基类、父类或超类
3.如果在类A中用成员函数的方式重载了前缀自增运算符++,又定义了类A的一个对象a,则以下用法正确的是( )。 (满分:3)
A. operator++(a);
B. a.operator++( );
C. a.operator++(0);
D. a++;
4.定义类模板时要使用关键字( )。 (满分:3)
A. const
B. new
C. delete
D. template
5.设有函数模板templateQ Sum(Q x,Q y){ return(x)+(y);}则下列语句中对该函数模板错误的使用是( )。 (满分:3)
A. Sum(10,2);
B. Sum(5.0,6.7);
C. Sum(15.2f,16.0f);
D. Sum(″AB″,″CD″);
6.编译时的多态性通过使用( ) 实现。 (满分:3)
A. 构造函数
B. 虚函数
C. 重载函数
D. 析构函数
7.决定C++语言中函数的返回值类型的是( )。 (满分:3)
A. return语句中的表达式类型
B. 调用该函数时系统随机产生的类型
C. 调用该函数时的主调用函数类型
D. 在定义该函数时所指定的数据类型
8.要使用动态联编,必须使用( )调用虚函数。 (满分:3)
A. 类名
B. 对象名
C. 派生类指针
D. 基类指针
9.静态数据成员的初始化必须在( )。 (满分:3)
A. 类内
B. 类外
C. 构造函数内
D. 静态成员函数内
10.在下面有关静态成员函数的描述中,正确的是( )。 (满分:3)
A. 在静态成员函数中可以使用this指针
B. 在建立对象前,就可以为静态数据成员赋值
C. 静态成员函数在类外定义时,要用static前缀
D. 静态成员函数只能在类外定义
11.所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是( )。 (满分:3)
A. 类
B. 对象
C. 函数体
D. 数据块
12.下列关于运算符重载的描述中,正确的是( )。 (满分:3)
A. 可以改变运算符的目数
B. 可以改变运算符的优先级
C. 可以改变运算符的结合性
D. 可以改变运算符的功能
13.下列( )可以是虚函数。 (满分:3)
A. 构造函数
B. 拷贝构造函数
C. 静态成员函数
D. 析构函数
14.通常拷贝构造函数的参数是( )。 (满分:3)
A. 某个对象名
B. 某个对象的成员名
C. 某个对象的引用名
D. 某个对象的指针名
15.下列( )的调用方式是引用调用。 (满分:3)
A. 形参是引用,实参是变量
B. 形参和实参都是变量
C. 形参是变量,实参是地址值
D. 形参是指针,实参是地址值
16.C++语言建立类库是通过( )实现的。 (满分:3)
A. 类的嵌套
B. 类的继承
C. 虚函数
D. 抽象类
17.下面程序的运行结果为( )。#includeclass A{public:A( ){cout<<”1”;}~A( ){cout<<”2”;}}class B:public A{public:B( ){cout<<”3”;}~B( ){cout<<”4”;}}void main( ){B b;} (满分:3)
A. 1234
B. 1324
C. 1342
D. 3142
18.如果在类A中用友元函数的方式重载了后缀自增运算符++,又定义了类A的一个对象a,则以下用法正确的是( )。 (满分:3)
A. operator++(a,0);
B. a.operator++( );
C. a.operator++(0);
D. ++a;
19.如果表达式y*x++中,“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,则采用运算符函数调用格式,该表达式还可以表示为( )。 (满分:3)
A. x.operator++(0).operator*(y)
B. operator*(x.operator++(0),y)
C. operator*(operator++(x,0),y)
D. y.operator*(operator++(x,0))
20.下面对类的析构函数的定义是( ) 。 (满分:3)
A. X::~ X( 参数 );
B. void X::~ X( 参数 );
C. void X::~ X( );
D. X::~ X( );
二、判断题:【20道,总分:40分】
1.如果一个类至少有一个纯虚函数,那么该类就被称为抽象类。 (满分:2)
A. 错误
B. 正确
2.编译时的多态是通过静态联编来实现的,运行时的多态是通过动态联编实现的。 (满分:2)
A. 错误
B. 正确
3.类成员是按照它们在成员初始化表中列出的顺序进行初始化的,与它们在类里被声明的顺序无关。 (满分:2)
A. 错误
B. 正确
4.cout是I/O流库中预定义的输出流对象,cin是输入流对象。 (满分:2)
A. 错误
B. 正确
5.析构函数是不能被派生类继承的。 (满分:2)
A. 错误
B. 正确
6.数组中的每个元素它们的类型可以是不同的。 (满分:2)
A. 错误
B. 正确
7.类是一组对象的抽象,而对象则是类的一个实例。 (满分:2)
A. 错误
B. 正确
8.成员函数体可以写在类的内部也可以写在类的外部。 (满分:2)
A. 错误
B. 正确
9.无论什么方式的继承,基类的私有成员都不能被派生类访问。 (满分:2)
A. 错误
B. 正确
10.在删除一个动态对象时,将自动调用该动态对象所属类的析构函数。 (满分:2)
A. 错误
B. 正确
11.C++流类库是用继承方法建立起来的,它具有两个平行的基类,即istream类和ostream类,所有其他的流类都是从它们直接或间接地派生出来的。 (满分:2)
A. 错误
B. 正确
12.若有声明:class B:virtual public A{};则类B为类A的虚基类。 (满分:2)
A. 错误
B. 正确
13.不能在类声明中给数据成员赋初值。 (满分:2)
A. 错误
B. 正确
14.C++中,对象保存在内存中,栈内存是自动分配和释放的,而堆内存需要用户自己申请和释放。 (满分:2)
A. 错误
B. 正确
15.this指针是一个const指针,不能在程序中修改它或给它赋值。 (满分:2)
A. 错误
B. 正确
16.C++不允许定义有默认参数的函数。 (满分:2)
A. 错误
B. 正确
17.只要一个类定义了一个构造函数(不一定是无参构造函数),系统将不再给它提供缺省的构造函数。 (满分:2)
A. 错误
B. 正确
18.ifstream是用于读文件的文件流。 (满分:2)
A. 错误
B. 正确
19.函数模板是基于不同的数据类型完成类似的操作,而重载函数则是对不同的数据类型完成相同的操作。 (满分:2)
A. 错误
B. 正确
20.构造函数和析构函数都不能说明返回值类型,甚至说明为void类型也不行。 (满分:2)
A. 错误
B. 正确
本内容由www.openhelp100.com整理发布
页:
[1]