南开19春学期(1709、1803、1809、1903)《面向对象程序设计》在线作业1 (2)

上传人:QQ11****5545 文档编号:89039081 上传时间:2019-05-15 格式:DOC 页数:9 大小:33KB
返回 下载 相关 举报
南开19春学期(1709、1803、1809、1903)《面向对象程序设计》在线作业1 (2)_第1页
第1页 / 共9页
南开19春学期(1709、1803、1809、1903)《面向对象程序设计》在线作业1 (2)_第2页
第2页 / 共9页
亲,该文档总共9页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《南开19春学期(1709、1803、1809、1903)《面向对象程序设计》在线作业1 (2)》由会员分享,可在线阅读,更多相关《南开19春学期(1709、1803、1809、1903)《面向对象程序设计》在线作业1 (2)(9页珍藏版)》请在金锄头文库上搜索。

1、19春学期(1709、1803、1809、1903)面向对象程序设计在线作业-0003试卷总分:100 得分:100一、 单选题 (共 35 道试题,共 70 分)1.read函数的功能是从输入流中读取( )。A.一个字符B.当前字符C.一行字符D.指定若干个字符正确答案:D2.当使用ifstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为( )。A.ios:inB.ios:outC.ios:trunkD.ios:binary正确答案:A3.面向对象程序设计思想的主要特征中不包括( )。A.封装性B.多态性C.继承性D.功能分解,逐步求精正确答案:D4.关于纯虚函数,下列表

2、述正确的是( )。A.纯虚函数是未给出实现版本(即无函数体定义)的虚函数B.纯虚函数的声明总是以“=0”结束C.派生类必须实现基类的纯虚函数D.含有纯虚函数的类一定是派生类正确答案:B5.建立类模板对象的实例化过程为( )。A.基类-派生类B.构造函数-对象C.模板类-对象D.模板类-模板函数正确答案:C6.可以用p.a的形式访问派生类对象p的基类成员a其中a是( )。A.私有继承的公有成员B.公有继承的私有成员C.公有继承的保护成员D.公有继承的公有成员正确答案:D7.下面描述中,错误的是( )。A.在基类定义的public成员在公有继承的派生类中可见,也能在类外被访问B.在基类定义的pub

3、lic和protected成员在私有继承的派生类中可见,在类外可以被访问C.在基类定义的public和protected成员在保护继承的派生类中可见D.在派生类中不可见的成员要变成可访问的,需要进行访问声明正确答案:B8.在公有派生情况下,有关派生类对象和基类对象的关系,下列叙述不正确的是()。A.派生类的对象可以直接访问基类的所有成员B.派生类的对象可以初始化基类的引用C.派生类的对象不可以直接访问基类中的私有成员D.派生类的对象的地址可以赋给指向基类的指针正确答案:A9.关于下面程序段说法正确的是( ) class X private: int n; public: X(X&); ; X:

4、X(X&x) n=x.n X obj1,obj2(obj1);A.语句obj2(obj1);的功能是用对象obj1初始化具有相同类类型的对象obj2B.语句obj2(obj1);的功能是用对象obj2初始化具有相同类类型的对象obj1C.X(X&x)中的&符号可以删除D.X(X&x)函数中不能访问对象的私有成员正确答案:A10.已知X类中的一个成员函数说明如下: void Set(X*a); 其中,X*a的含义是( )。A.a是指向X类对象的指针,用来作为Set()的形参B.将X*a的计算结果传递给Set()函数C.a是X类对象的引用,用来做为Set()的形参D.以上都不对正确答案:A11.下

5、面选项中,不是类的成员函数为( )。A.构造函数B.析构函数C.友元函数D.缺省参数的构造函数正确答案:C12.下面程序段中是内联函数的是( )。 class location private: int x ,y; public: void init(int initx,int inity) x=initx; y=inity; int getx()return x; int gety(); ; inline int location:gety() return y;A.init (int initx,int inity)B.getx(),gety()C.A和B都是D.A和getx()正确答案:

6、C13.下面描述中,错误的是()。A.公有继承时,基类中的public成员在派生类中仍是public的B.公有继承时,基类中的private成员在派生类中仍是private的C.公有继承时,基类中的protected成员在派生类中仍是protected的D.私有继承时,基类中的public成员在派生类中是private的正确答案:B14.虚函数必须是类的()。A.友元函数B.成员函数C.构造函数D.析构函数正确答案:B15.将一个函数声明为某类的友元函数后,则在函数中不可以直接访问该类的()。A.公有成员B.私有成员C.保护成员D.都可访问正确答案:D16.有关重载函数的描述正确的是()。A.

7、函数名相同的函数就是重载函数B.函数名相同但返回值类型不同的函数就是重载函数C.函数名相同但参数个数或类型不同的函数就是重载函数D.函数功能相同的函数就是重载函数正确答案:C17.类MyClass的定义如下: class MyClass public: MyClass() value = 0; SetVariable(int i) value = i; private: int value; 则对下列语句序列正确的描述是()。 MyClass *p,my; p=&my;A.语句p=&my;是把对象my赋值给指针变量pB.语句MyClass *p,my;会调用两次类MyClass的构造函数C.对

8、语句 *p.SetVariable(5)的调用是正确的D.语句p-SetVariable(5)与语句my.SetVariable(5)等价正确答案:D18.下列关于C+类的描述中错误的是( )。A.类与类之间可以通过一些手段进行通信和联络B.类用于描述事物的属性和对事物的操作C.类与类之间必须是平等的关系,而不能组成层次关系D.类与类之间可以通过封装而具有明确的独立性正确答案:C19.在表达式x+y*z中,+ 是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。A.operator+有两个参数,operator*有两个参数B.operator+有两个参数,ope

9、rator*有一个参数C.operator+有一个参数,operator*有两个参数D.operator+有一个参数,operator*有一个参数正确答案:C20.在创建派生类对象时,构造函数的执行顺序是( )。A.对象成员构造函数、基类构造函数、派生类本身的构造函数B.派生类本身的构造函数、基类构造函数、对象成员构造函数C.基类构造函数、派生类本身的构造函数、对象成员构造函数D.基类构造函数、对象成员构造函数、派生类本身的构造函数正确答案:D21.对于多重继承,有( )。A.一个派生类只能有一个基类B.一个基类只能产生一个派生类C.一个基类必须产生多个派生类D.一个派生类可有多个基类正确答案

10、:D22.若定义cinstr;当输入 Microsoft Visual Studio 6.0! 所得的结果是str= ()。A.Microsoft Visual Studio 6.0!B.MicrosoftC.Microsoft VisualD.Microsoft Visual Studio 6.0正确答案:B23.下面关于对象概念的描述中,( )是错误的。A.对象就是C语言中的结构变量B.对象代表着正在创建的系统中的一个实体C.对象是一个状态和操作(或方法)的封装体D.对象之间的信息传递是通过消息进行的正确答案:A24.在类的定义形式中,数据成员、成员函数和( )组成了类定义体。A.成员的访

11、问控制信息B.公有消息C.私有消息D.保护消息正确答案:A25.一个类的友元函数能够访问该类的( )。A.私有成员B.保护成员C.公有成员D.所有成员正确答案:D26.在下列选项中( )不是ostream类的对象。A.cinB.cerrC.clogD.cout正确答案:A27.如果一个类至少有一个纯虚函数,那么就称该类是()。A.抽象类B.虚基类C.派生类D.以上都不对正确答案:A28.“#include ”是()预处理命令。A.宏定义B.文件包含C.条件编译D.工程配置正确答案:B29.对于公有派生,它的“继承方式“是( )。A.privateB.publicC.protectedD.ina

12、ccessible正确答案:B30.关于多继承二义性的描述中,错误的是()。A.一个派生类的基类中都有某个同名成员,在派生类中对这个成员的访问可能出现二义性B.解决二义性的最常用的方法是对成员名的限定法C.基类和派生类同时出现的同名函数,也存在二义性问题D.一个派生类是从两个基类派生出来的,而这两个基类又有一个共同的基类, 对该基类成员进行访问时,可能出现二义性正确答案:C31.用于类中虚成员函数说明的关键字( )。A.virtualB.publicC.protectedD.private正确答案:A32.有关带默认参数的函数的描述正确的是()。A.只能在函数定义时设置默认参数值B.只能在函数

13、声明时设置默认参数值C.函数调用时,必须使用默认的参数值,不能给出新的实参值D.设置默认参数时,应该设置最右边的若干个参数的默认值正确答案:D33.友元关系不能( )。A.继承B.是类与类之间是关系C.是一个类的成员函数与另一个类的关系D.提高程序的运行效率正确答案:A34.下列引用的定义中,( )是错误的。A.int i; int &j=i;B.int i; int &j; j=i;C.float i; float &j=i;D.char d; char &k=d;正确答案:B35.程序在调用重载函数时,根据()区分到底要调用哪个函数。A.函数名B.返回值类型C.参数个数和类型D.以上都可以

14、正确答案:C二、 判断题 (共 15 道试题,共 30 分)1.定义纯虚函数所用的关键字是purevirtual。A.对B.错正确答案:B2.在私有继承中,基类中只有公有成员对派生类是可见的。A.对B.错正确答案:B3.析构函数是一种函数体为空的成员函数。A.对B.错正确答案:B4.类模板可以使用两种形式的参数,分别是类型参数和普通单数。A.对B.错正确答案:A5.只有返回引用的函数可以作为赋值语句的左值。A.对B.错正确答案:A6.类中所提供的成员函数可以直接访问该类的私有成员。A.错误B.正确正确答案:B7.派生类中至少包含了它的所有基类的成员(除构造函数和析构函数外),在这些成员中可能有的是不可访问。A.对B.错正确答案:A8.面向对象的英文缩写是OOP。A.对B.错正确答案:A9.运算符重载的形式有两种:成员函数形式和友元形式。A.对

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 自考

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号