欧阳老师 发表于 2017-5-5 17:38:25

奥鹏东北师范C++程序设计17春在线作业12答案

东北师范C++程序设计17春在线作业12答案
C++程序设计17春在线作业1




1
1. 函数模板的使用实际上是将函数模板实例化成一个具体的()。
A. 类
B. 对象
C. 模板函数
D. 模板类
标准资料: 满分:3
2. 假定classA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为()。
A. x(a)
B. x
C. x&ampgta
D. x.a
标准资料: 满分:3
3. 下列关于构造函数的描述中,错误的是()。
A. 构造函数可以设置默认参数;
B. 构造函数在定义类对象时自动执行
C. 构造函数可以是内联函数
D. 构造函数不可以重载
标准资料: 满分:3
4. 关于void指针,下列说法正确的是()。
A. void指针就是已定义而未初始化的指针
B. void指针就是未指向任何数据的指针
C. void指针值可以直接赋给一个非void指针
D. 指向任何类型数据的指针可直接赋值给一个void指针
标准资料: 满分:3
5. 下面对类的构造函数的定义是() 。
A. void XX( 参数 )
B. XX( 参数 )
C. int XX( 参数 )
D. float XX( 参数 )
标准资料: 满分:3
6. 类模板的模板参数()。
A. 只可作为数据成员的类型
B. 只可作用成员函数的返回类型
C. 只可作为成员函数的参数类型
D. 以上三者皆可
标准资料: 满分:3
7. 下列说法正确的是()。
A. 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方
B. 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方
C. 类的内联函数必须在类体内定义
D. 类的内联函数必须在类体外通过加关键字inline定义
标准资料: 满分:3
8. 假设A为抽象类,下列声明()是正确的。
A. A fun(int)
B. A *p
C. int fun(A)
D. A obj
标准资料: 满分:3
9. 应在下列程序划线处填入的正确语句是()。 #include class Base { public void fun(){cout&amplt&amplt&quotBasefun&quot&amplt&ampltENDL} } class Derivedpublic Base { void fun() {_____________ //显示调用基类的函数fun() cout&amplt&amplt&quotDerivedfun&quot&amplt&ampltENDL } }
A. fun()
B. Base.fun()
C. Basefun()
D. Base&ampgtfun()
标准资料: 满分:3
10. 应在下列程序划线处填入的正确语句是()。 #include class Base { public void fun(){cout&amplt&amplt&quotBasefun&quot&amplt&ampltENDL} } class Derivedpublic Base { void fun() {_____________ //显示调用基类的函数fun() cout&amplt&amplt&quotDerivedfun&quot&amplt&ampltENDL } }
A. fun()
B. Base.fun()
C. Basefun()
D. Base&ampgtfun()
标准资料: 满分:3
11. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()。
A. 类
B. 对象
C. 函数体
D. 数据块
标准资料: 满分:3
12. 在下面有关析构函数特征的描述中,正确的是()。
A. 一个类中可以定义多个析构函数
B. 析构函数名与类名完全相同
C. 析构函数不能指定返回类型
D. 析构函数可以有一个或多个参数
标准资料: 满分:3
13. 若有定义“int x=17”,则语句“cout&amplt&ampltoct&amplt&ampltx”的输出结果是()
A. 11
B. 0x11
C. 21
D. 021
标准资料: 满分:3
14. C++是一种()的程序设计语言。
A. 面向对象
B. 即可面向过程,又可面向对象
C. 面向过程
D. 面向系统
标准资料: 满分:3
15. 假设已经有定义const char*const name=&quotchen&quot 下面的语句中正确的是()。
A. name= a
B. name=&quotlin&quot
C. name=new char
D. cout&amplt&ampltname
标准资料: 满分:3
16. 若有定义“int x=17”,则语句“cout&amplt&amplthex&amplt&ampltx”的输出结果是()。
A. 11
B. 0x11
C. 21
D. 021
标准资料: 满分:3
17. 当使用fstream流类定义一个流对象并打开一个磁盘文件时, 文件的隐含打开方式为()。
A. ios::in
B. ios::out
C. ios::in|ios::out
D. 以上都不对
标准资料: 满分:3
18. 析构函数是一种特殊的成员函数,显式定义时其访问属性应被定义为()。
A. public
B. private
C. protected
D. static
标准资料: 满分:3
19. 在 C++ 中,数据与操作的封装是借助于()达到的。
A. 指针
B. 类
C. 数组
D. 函数
标准资料: 满分:3
20. 当派生类中有和基类一样名字的成员时,如果没有使用类名加以限制,则()。
A. 基类的同名成员将覆盖派生类的成员
B. 将产生二义性
C. 派生类的同名成员将覆盖基类的成员
D. 是不允许的
标准资料: 满分:3


2 判断题
1. ofstream是用于读文件的文件流。
A. 错误
B. 正确
标准资料:
2. 指针和引用都是变量,都占有单独的内存空间。
A. 错误
B. 正确
标准资料:
3. 在C++中,只能重载已有的运算符。
A. 错误
B. 正确
标准资料:
4. 撤销包含有对象成员的派生类对象时,自动调用析构函数的执行顺序依次为派生类、对象成员所属类、基类的析构函数。
A. 错误
B. 正确
标准资料:
5. C++利用函数重载实现面向对象程序设计的多态性。
A. 错误
B. 正确
标准资料:
6. 赋值号两边的数据类型不一致时,将无法进行赋值运算。
A. 错误
B. 正确
标准资料:
7. 指针是个变量,占有单独的内存空间,而引用本身不是变量,不单独占用内存空间。
A. 错误
B. 正确
标准资料:
8. 用new分配的空间,使用结束后必须用delete显式地释放。
A. 错误
B. 正确
标准资料:
9. 无论何时编译器都为类构造一个无参数的缺省的构造函数。
A. 错误
B. 正确
标准资料:
10. 若有声明:class B A{}则类B的继承方式为公有继承。
A. 错误
B. 正确
标准资料:
11. 类中重载提取运算符“&ampgt&ampgt”和插入运算符“&amplt&amplt”时只能用成员函数而不能用友元函数的形式。
A. 错误
B. 正确
标准资料:
12. 一个类的友元一定是另一个类的成员函数。
A. 错误
B. 正确
标准资料:
13. C++编译器不能够区分重载的无参函数和缺省参数的函数。
A. 错误
B. 正确
标准资料:
14. new和delete运算符可以被重载。
A. 错误
B. 正确
标准资料:
15. 在删除一个动态对象时,将自动调用该动态对象所属类的析构函数。
A. 错误
B. 正确
标准资料:
16. 当基类的构造函数没有参数,或没有显式定义构造函数时,派生类可以不定义构造函数。
A. 错误
B. 正确
标准资料:
17. ifstream是用于写文件的文件流。
A. 错误
B. 正确
标准资料:
18. 一个派生类继承多个基类称为虚拟继承。
A. 错误
B. 正确
标准资料:
19. 重载函数是基于不同的数据类型完成类似的操作,而函数模板则是对不同的数据类型完成相同的操作。
A. 错误
B. 正确
标准资料:
20. C++中的函数就是面向对象理论中的方法。
A. 错误
B. 正确
标准资料:
C++程序设计17春在线作业2
1
1. 下面的类型声明中正确的是()。
A. int &ampa
B. int &amp*p
C. int &amp &ampq
D. int I*pp=&ampI
标准资料: 满分:3
2. 如果类B在类A的基础上构造,那么,就称()。
A. 类A为基类或父类,类B为超类或子类
B. 类A为基类、父类或超类,类B为派生类或子类
C. 类A为派生类,类B为基类
D. 类A为派生类或子类,类B为基类、父类或超类
标准资料: 满分:3
3. 如果在类A中用成员函数的方式重载了前缀自增运算符++,又定义了类A的一个对象a,则以下用法正确的是()。
A. operator++(a)
B. a.operator++()
C. a.operator++(0)
D. a++
标准资料: 满分:3
4. 定义类模板时要使用关键字()。
A. const
B. new
C. delete
D. template
标准资料: 满分:3
5. 设有函数模板 template&ampltclass Q&ampgt Q Sum(Q xQ y){ return(x)+(y) } 则下列语句中对该函数模板错误的使用是()。
A. Sum(102)
B. Sum(5.06.7)
C. Sum(15.2f16.0f)
D. Sum(″AB″″CD″)
标准资料: 满分:3
6. 编译时的多态性通过使用() 实现。
A. 构造函数
B. 虚函数
C. 重载函数
D. 析构函数
标准资料: 满分:3
7. 决定C++语言中函数的返回值类型的是()。
A. return语句中的表达式类型
B. 调用该函数时系统随机产生的类型
C. 调用该函数时的主调用函数类型
转载请注明易百网www.openhelp100.com
D. 在定义该函数时所指定的数据类型
标准资料: 满分:3
8. 要使用动态联编,必须使用()调用虚函数。
A. 类名
B. 对象名
C. 派生类指针
D. 基类指针
标准资料: 满分:3
9. 静态数据成员的初始化必须在()。
A. 类内
B. 类外
C. 构造函数内
D. 静态成员函数内
标准资料: 满分:3
10. 在下面有关静态成员函数的描述中,正确的是()。
A. 在静态成员函数中可以使用this指针
B. 在建立对象前,就可以为静态数据成员赋值
C. 静态成员函数在类外定义时,要用static前缀
D. 静态成员函数只能在类外定义
标准资料: 满分:3
11. 所谓数据封装就是将一组数据和与这组数据有关操作组装在一起,形成一个实体,这实体也就是()。
A. 类
B. 对象
C. 函数体
D. 数据块
标准资料: 满分:3
12. 下列关于运算符重载的描述中,正确的是()。
A. 可以改变运算符的目数
B. 可以改变运算符的优先级
C. 可以改变运算符的结合性
D. 可以改变运算符的功能
标准资料: 满分:3
13. 下列()可以是虚函数。
A. 构造函数
B. 拷贝构造函数
C. 静态成员函数
D. 析构函数
标准资料: 满分:3
14. 通常拷贝构造函数的参数是()。
A. 某个对象名
B. 某个对象的成员名
C. 某个对象的引用名
D. 某个对象的指针名
标准资料: 满分:3
15. 下列()的调用方式是引用调用。
A. 形参是引用,实参是变量
B. 形参和实参都是变量
C. 形参是变量,实参是地址值
D. 形参是指针,实参是地址值
标准资料: 满分:3
16. C++语言建立类库是通过()实现的。
A. 类的嵌套
B. 类的继承
C. 虚函数
D. 抽象类
标准资料: 满分:3
17. 下面程序的运行结果为()。 #include class A{ public: A(){cout&amplt&amplt”1”} ~A(){cout&amplt&amplt”2”} } class B:public A{ public: B(){cout&amplt&amplt”3”} ~B(){cout&amplt&amplt”4”} } void main(){ B b }
A. 1234
B. 1324
C. 1342
D. 3142
标准资料: 满分:3
18. 如果在类A中用友元函数的方式重载了后缀自增运算符++,又定义了类A的一个对象a,则以下用法正确的是()。
A. operator++(a0)
B. a.operator++()
C. a.operator++(0)
D. ++a
标准资料: 满分:3
19. 如果表达式y*x++中“*”是作为成员函数重载的运算符,“++”是作为友元函数重载的运算符,则采用运算符函数调用格式,该表达式还可以表示为()。
A. x.operator++(0).operator*(y)
B. operator*(x.operator++(0)y)
C. operator*(operator++(x0)y)
D. y.operator*(operator++(x0))
标准资料: 满分:3
20. 下面对类的析构函数的定义是() 。
A. X~ X( 参数 )
B. void X~ X( 参数 )
C. void X~ X()
D. X~ X()
标准资料: 满分:3


2 判断题
1. 如果一个类至少有一个纯虚函数,那么该类就被称为抽象类。
A. 错误
B. 正确
标准资料:
2. 编译时的多态是通过静态联编来实现的,运行时的多态是通过动态联编实现的。
A. 错误
B. 正确
标准资料:
3. 类成员是按照它们在成员初始化表中列出的顺序进行初始化的,与它们在类里被声明的顺序无关。
A. 错误
B. 正确
标准资料:
4. cout是I/O流库中预定义的输出流对象,cin是输入流对象。
A. 错误
B. 正确
标准资料:
5. 析构函数是不能被派生类继承的。
A. 错误
B. 正确
标准资料:
6. 数组中的每个元素它们的类型可以是不同的。
A. 错误
B. 正确
标准资料:
7. 类是一组对象的抽象,而对象则是类的一个实例。
A. 错误
B. 正确
标准资料:
8. 成员函数体可以写在类的内部也可以写在类的外部。
A. 错误
B. 正确
标准资料:
9. 无论什么方式的继承,基类的私有成员都不能被派生类访问。
A. 错误
B. 正确
标准资料:
10. 在删除一个动态对象时,将自动调用该动态对象所属类的析构函数。
A. 错误
B. 正确
标准资料:
11. C++流类库是用继承方法建立起来的,它具有两个平行的基类,即istream类和ostream类,所有其他的流类都是从它们直接或间接地派生出来的。
A. 错误
B. 正确
标准资料:
12. 若有声明:class Bvirtual public A{}则类B为类A的虚基类。
A. 错误
B. 正确
标准资料:
13. 不能在类声明中给数据成员赋初值。
A. 错误
B. 正确
标准资料:
14. C++中,对象保存在内存中,栈内存是自动分配和释放的,而堆内存需要用户自己申请和释放。
A. 错误
B. 正确
标准资料:
15. this指针是一个const指针,不能在程序中修改它或给它赋值。
A. 错误
B. 正确
标准资料:
16. C++不允许定义有默认参数的函数。
A. 错误
B. 正确
标准资料:
17. 只要一个类定义了一个构造函数(不一定是无参构造函数),系统将不再给它提供缺省的构造函数。
A. 错误
B. 正确
标准资料:
18. ifstream是用于读文件的文件流。
A. 错误
B. 正确
标准资料:
19. 函数模板是基于不同的数据类型完成类似的操作,而重载函数则是对不同的数据类型完成相同的操作。

A. 错误
B. 正确
标准资料:
20. 构造函数和析构函数都不能说明返回值类型,甚至说明为void类型也不行。
A. 错误
B. 正确
标准资料:






东北师范 在线作业 程序设计








更多免费学习资料请进www.openhelp100.com下载


东师在线作业都是随机作业,只能代做
如需帮助


页: [1]
查看完整版本: 奥鹏东北师范C++程序设计17春在线作业12答案