16秋北理工《面向对象程序设计》在线作业.docx
- 文档编号:8139892
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:53
- 大小:33.29KB
16秋北理工《面向对象程序设计》在线作业.docx
《16秋北理工《面向对象程序设计》在线作业.docx》由会员分享,可在线阅读,更多相关《16秋北理工《面向对象程序设计》在线作业.docx(53页珍藏版)》请在冰豆网上搜索。
16秋北理工《面向对象程序设计》在线作业
北理工《面向对象程序设计》在线作业
一、单选题(共38道试题,共76分。
)
1.在下列函数原型中,可以作为类A构造函数的是()。
A.voidA(int);
B.intA();
C.A(int)const;
D.A(int);
正确答案:
2.若函数原型为voidFun(intx,inty=6,intchar='a'),则下列调用错误的是()。
A.Fun(5)
B.Fun(5,'b')
C.Fun(5,8)
D.Fun(2,4,'b')
正确答案:
3.下列描述中,错误的是()。
A.内联函数主要解决程序的运行效率问题
B.内联函数的定义必须出现在内联函数第一次被调用之前
C.内联函数中可以包括各种语句
D.对内联函数不可以进行异常接口声明
正确答案:
4.不可以成为类的数据成员的是______
A.自身类的对象
B.另一个类的对象
C.自身类的指针或引用
D.其他基本数据类型
正确答案:
5.下列关于虚基类的描述中,错误的是()
A.设置虚基类的目的是消除二义性
B.虚基类子对象的初始化由最派生类完成
C.虚基类的构造函数可能调用多次
D.虚基类的构造函数先于非虚基类的构造函数执行
正确答案:
6.友元运算符obj1>obj2被C++编译器解释为()。
A.operator>(obj1,obj2)
B.>(obj1,obj2)
C.obj2.operator>(obj1)
D.obj1.operator>(obj2)
正确答案:
7.下列不是C++基本数据类型的是______。
A.int
B.string
C.char
D.void
正确答案:
8.下列函数中,不是类的成员函数的是()。
A.构造函数
B.友元函数
C.析构函数
D.复制构造函数
正确答案:
9.下列关于函数重载的描述中,错误的是()。
A.函数重载就是用相同的函数名定义多个函数
B.重载函数的参数列表必须不同
C.重载函数的返回值类型必须不同
D.重载函数的参数可以带有默认值
正确答案:
10.设Address表示整型变量x的地址,则下列语句执行后的输出结果为()。
intx=100,&r=x;cout< A.Address-100 B.100-100 C.Address-Address D.100-Address 正确答案: 11.下列语句中,会产生编译错误的是()。 A.intx=5;int&ref=x; B.constintsize; C.intx=5;int&ref=x;x++; D.constintsize=100; 正确答案: 12.在C++中,扩充类定义需要借助于()。 A.对象 B.继承 C.重载 D.函数 正确答案: 13.下列关于构造函数和析构函数的描述中,错误的是()。 A.构造函数可以重载 B.析构函数名与类名相同 C.构造函数中可以设置参数的默认值 D.类中只有一个析构函数 正确答案: 14.假定k是一个double类型的变量,则关于变量p的正确定义语句为()。 A.doublep=&k B.int*p=&k C.double&p=*k D.char*p=”Thankyou! ” 正确答案: 15.若有如下函数声明: voidFun(int);,则下列()不能与该函数进行重载。 A.voidFun(int,int); B.voidFun(double); C.intFun(int); D.voidFun(int)const 正确答案: 16.关于封装,下列说法中不正确的是()。 A.通过封装,对象的全部属性和操作结合在一起,形成一个整体 B.通过封装,一个对象的实现细节被尽可能地隐藏起来(不可见) C.通过封装,每个对象都成为相对独立的实体 D.通过封装,对象的属性都是不可见的 正确答案: 17.下列语句中,会产生编译错误的是()。 inti=0,j=1; A.int&r=i; B.r=j; C.r=r+5; D.int*p=&i; 正确答案: 18.下列关于运算符重载的描述中,______是正确的。 A.运算符重载可以改变运算数的个数; B.运算符重载可以改变优先级; C.运算符重载可以改变结合性; D.运算符重载不可以改变语法结构。 正确答案: 19.下列关于派生类的描述中,错误的是()。 A.派生类继承了基类的所有成员 B.派生类能够作为基类继续派生新类 C.派生类可以有多个直接基类 D.派生类的默认继承方式是public 正确答案: 20.下列关于C++函数的描述中,正确的是()。 A.每个函数至少要有一个参数 B.每个函数都必须返回一个值 C.函数在被调用之前必须先进行声明或定义 D.函数不能自己调用自己 正确答案: 21.下列函数参数默认值定义错误的是()。 A.Fun(intx=0,inty=0) B.Fun(intx,inty) C.Fun(intx,inty=0) D.Fun(intx=0,inty) 正确答案: 22.下列关键字中不能用来声明类成员访问权限的是()。 A.public B.static C.protected D.private 正确答案: 23.对虚函数的调用() A.一定使用动态联编 B.必须使用动态联编 C.一定使用静态联编 D.不一定使用动态联编 正确答案: 24.下列程序的输出结果是()。 #include intf()const{return3;}intf(){return5;}};intmain(){VACv1;constVACv2;cout< A.53 B.35 C.55 D.33 正确答案: 25.下列程序的输出结果是()。 #include MyClass(){cout<<'A';}MyClass(charc){cout< A.ABX B.ABXB C.AXB D.AXBB 正确答案: 26.假定p是具有int**类型的指针变量,则给p赋值的正确语句为()。 A.p=newint B.p=newint* C.p=newint** D.p=newint[10] 正确答案: 27.有如下头文件: intf1();staticintf2();classMy{public: intf3();staticintf4();};在上述4个函数中,具有隐含的this指针的是()。 A.f1 B.f2 C.f3 D.f4 正确答案: 28.下列关于友元的描述中,错误的是()。 A.友元破坏了类的封装性 B.友元提高了程序的运行效率 C.友元可以在类外声明和定义 D.友元能够访问类中的私有成员 正确答案: 29.下列选项中,表示纯虚函数的是()。 A.virtualvoidfun()=0; B.2.voidfun(int)=0; C.virtualintfun(int); D.virtualvoidfun(int){} 正确答案: 30.在下面的类定义中,横线处应填入的内容是()。 classMyClass{private: staticintcount;};count=0; A.int B.staticint C.intMyClass D.staticintMyClass: 正确答案: 31.C++中用于实现运行时多态性的是()。 A.内联函数 B.重载函数 C.静态函数 D.虚函数 正确答案: 32.列符号中能够作为C++标识符的是()。 A.const B.2a C._shape D._count 正确答案: 33.派生类对象对它的基类成员中()是可以访问的。 A.公有继承的私有成员 B.公有继承的保护成员 C.公有继承的公有成员 D.私有继承的公有成员 正确答案: 34.关于运行时多态的下列描述中,______是错误的。 A.运行时多态是以虚函数为基础的; B.运行时多态是在运行时确定所调用的函数代码的; C.用基类指针或引用所标识的派生类对象来操作虚函数才能实现运行时多态; D.运行时多态是在编译时确定操作函数的 正确答案: 35.下列描述中,错误的是()。 A.析构函数中调用虚函数采用静态联编 B.对虚析构函数的调用可以采用动态联编 C.当基类的析构函数是虚函数时,其派生类的析构函数也一定是虚函数 D.构造函数可以声明为虚函数 正确答案: 36.下列关于对象概念的描述中,错误的是()。 A.对象就是C语言中的结构变量 B.对象代表着正在创建的系统中的一个实体 C.对象是状态和操作(或方法)的封装体 D.对象之间的信息传递是通过消息进行的 正确答案: 37.下列函数参数默认值定义错误的是()。 A.Fun(intx=0,inty=0) B.Fun(intx,inty) C.Fun(intx,inty=0) D.Fun(intx=0,inty) 正确答案: 38.下面是派生类声明的开始部分,正确的是()。 A.classvirtualB: publicA B.virtualclassB: publicA C.classB: publicAvirtual D.classB: virtualpublicA 正确答案: 北理工《面向对象程序设计》在线作业 二、多选题(共4道试题,共8分。 ) 1.实际的建模过程中,可以把节点分() A.处理器 B.设备 C.应用软件 D.系统软件 正确答案: 2.时序图包含的元素分别是() A.对象 B.生命线 C.消息 D.激活 正确答案: 3.配置图中通常包含两种元素,分别是() A.节点 B.依赖关系 C.关联关系 D.接口 正确答案: 4.类中属性的可见性主要包括() A.公有 B.私有 C.其它 D.受保护 正确答案: 北理工《面向对象程序设计》在线作业 三、判断题(共8道试题,共16分。 ) 1.访问对象成员时要使用运算符.或->。 A.错误 B.正确 正确答案: 2.可以在类的构造函数中对静态数据成员进行初始化。 A.错误 B.正确 正确答案: 3.某类中的友元类的所有成员函数都可以存取或修改该类中的私有成员。 A.错误 B.正确 正确答案: 4.构造函数可以被继承 A.错误 B.正确 正确答案: 5.重载运算符保持原运算符的优先级和结合性不变。 A.错误 B.正确 正确答案: 6.只要是类M继承了类N,那么类M就是类N的子类型。 A.错误 B.正确 正确答案: 7.一个类的构造函数中可以不包含对其子对象的初始化 A.错误 B.正确 正确答案: 8.派生类从基类派生而来,不能再生成新的派生类。 A.错误 B.正确 正确答案: 北理工《面向对象程序设计》在线作业 一、单选题(共38道试题,共76分。 ) 1.下列选项中,表示纯虚函数的是()。 A.virtualvoidfun()=0; B.2.voidfun(int)=0; C.virtualintfun(int); D.virtualvoidfun(int){} 正确答案: 2.在派生类中重新定义虚函数时,除了()方面,其他方面都必须与基类中相应的虚函数保持一致。 A.参数个数 B.参数类型 C.函数名称 D.函数体 正确答案: 3.若函数原型为voidFun(intx,inty=6,intchar='a'),则下列调用错误的是()。 A.Fun(5) B.Fun(5,'b') C.Fun(5,8) D.Fun(2,4,'b') 正确答案: 4.派生类对象对它的基类成员中()是可以访问的。 A.公有继承的私有成员 B.公有继承的保护成员 C.公有继承的公有成员 D.私有继承的公有成员 正确答案: 5.下列关于继承的描述中,错误的是()。 A.派生类对象不能访问基类的保护成员 B.派生类对基类成员的访问权限随着继承方式而改变 C.派生类成员可以访问基类的私有成员 D.派生类继承了基类的所有成员 正确答案: 6.一个类的构造函数为“B(intax,intbx): a(ax),b(bx){}”,执行“Bx(1,2),y(3,4);x=y;”语句序列后x.a的值为______。 A.1 B.2 C.3 D.4 正确答案: 7.列符号中能够作为C++标识符的是()。 A.const B.2a C._shape D._count 正确答案: 8.有如下类定义: classMyClass{public: intgetRef()const{return&a;}intgetValue()const{returna;}voidset(intn)const{a=n;}friendvoidshow(MyClassobj)const{cout< A.getRef B.getValue C.set D.show 正确答案: 9.执行下列程序后的输出结果是()。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象程序设计 16 北理工 面向 对象 程序设计 在线 作业