ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:18.53KB ,
资源ID:3582662      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3582662.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(南开17秋学期《面向对象程序设计》在线作业满分答案.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

南开17秋学期《面向对象程序设计》在线作业满分答案.docx

1、南开17秋学期面向对象程序设计在线作业满分答案17秋学期面向对象程序设计在线作业 试卷总分:100 得分:100一、 单选题 (共 35 道试题,共 70 分)1. 类对象占用内存的大小与()有关。A. 数据成员B. 成员函数C. 数据成员和成员函数D. 私有成员 满分:2 分正确答案:A2. 如果类A被说明成类B的友元,则()。A. 类A的成员函数不得访问类B的所有成员B. 类A的成员函数可以访问类B的所有成员C. 类A的成员即类B的成员D. 类B的成员即类A的成员 满分:2 分正确答案:B3. 抽象类的作用主要是()。A. 直接用作基类B. 直接用作指针C. 引用的基类型D. 包括以上各项

2、 满分:2 分正确答案:D4. 下面描述中,错误的是()。A. 公有继承时,基类中的public成员在派生类中仍是public的B. 公有继承时,基类中的private成员在派生类中仍是private的C. 公有继承时,基类中的protected成员在派生类中仍是protected的D. 私有继承时,基类中的public成员在派生类中是private的 满分:2 分正确答案:B5. 交换两个string类对象所表示的字符串的内容,应该使用string类的()函数。A. assignB. insertC. swapD. find 满分:2 分正确答案:C6. 下列关于成员函数特征的描述中,错误的

3、是()。A. 成员函数可以重载B. 成员函数一定是内联函数C. 成员函数可以设置参数的默认值D. 成员函数可以是静态的 满分:2 分正确答案:B7. 已知“int a=10,b=8;int &r=a; r=b;couta,b,r;”,则输出为()。A. 10,8,10B. 10,8,8C. 8,8,10D. 8,8,8 满分:2 分正确答案:D8. 下面叙述中错误的是()。A. 派生类可以使用private派生B. 对基类成员的访问必须是无二义性的C. 基类成员的访问能力在派生类中维持不变D. 赋值兼容规则也适用于多继承的组合 满分:2 分正确答案:C9. 已知函数原型:void f(int

4、a, int b=3,char c=*); 则下面的函数调用中,不合法的调用是()。A. f(5)B. f(5,8)C. f(6, , #)D. f(0,0, #) 满分:2 分正确答案:C10. 在使用类创建对象时,系统会自动调用该对象的()完成对象中数据成员的初始化等操作。A. 友元函数B. 虚函数C. 构造函数D. 析构函数 满分:2 分正确答案:C11. 在表达式x+y*z中,+ 是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是()。A. operator+有两个参数,operator*有两个参数B. operator+有两个参数,operator*有一个

5、参数C. operator+有一个参数,operator*有两个参数D. operator+有一个参数,operator*有一个参数 满分:2 分正确答案:C12. 执行语句“string str(abc);”时,系统会自动调用string类的构造函数()。A. string()B. string(const char *s)C. string(const string &str)D. string(size_type n, char c) 满分:2 分正确答案:B13. 关于纯虚函数和抽象类的描述中,错误的是()。A. 纯虚函数是一种特殊的虚函数,它没有具体的实现。B. 抽象类是指具有纯虚函

6、数的类。C. 一个基类中有纯虚函数,该类的派生类一定不再是抽象类。D. 抽象类作为基类来使用,其纯虚函数的实现由派生类给出。 满分:2 分正确答案:C14. 已知“int a=10;int &r=a; r=r+20;couta;”,则输出为()。A. 10B. 20C. 30D. 不确定值 满分:2 分正确答案:C15. 有关重载函数的描述正确的是()。A. 函数名相同的函数就是重载函数B. 函数名相同但返回值类型不同的函数就是重载函数C. 函数名相同但参数个数或类型不同的函数就是重载函数D. 函数功能相同的函数就是重载函数 满分:2 分正确答案:C16. 在C+中,通过()的机制可以对原有的

7、类进行扩充和完善以适应新的需要。A. 继承B. 封装C. 多态D. 重载 满分:2 分正确答案:A17. 下面关于私有继承方式的论述中错误的是()。A. 基类中的私有成员对其对象不可见B. 基类中的私有成员对其派生类不可见C. 基类中的公有成员对其派生类可见D. 基类中的保护成员对其派生类不可见 满分:2 分正确答案:D18. 下列关于运算符重载的描述中,正确的是()。A. 运算符重载可以改变操作数的个数B. 运算符重载可以改变运算符的优先级C. 运算符重载可以改变运算符的结合性D. 运算符重载可以使运算符实现特殊功能 满分:2 分正确答案:D19. 若类中有指针成员变量,则应编写(),使得在

8、对象销毁时能够自动调用该函数释放指针成员变量所指向的内存空间。A. 友元函数B. 虚函数C. 构造函数D. 析构函数 满分:2 分正确答案:D20. 下列关于构造函数说法不正确的是()。A. 构造函数必须与类同名B. 构造函数可以省略不写C. 构造函数必须有返回值D. 在构造函数中可以对类中的成员进行初始化 满分:2 分正确答案:C21. 有关带默认参数的函数的描述正确的是()。A. 只能在函数定义时设置默认参数值B. 只能在函数声明时设置默认参数值C. 函数调用时,必须使用默认的参数值,不能给出新的实参值D. 设置默认参数时,应该设置最右边的若干个参数的默认值 满分:2 分正确答案:D22.

9、 变量的引用,其含义是指该变量的()。A. 值B. 类型C. 别名D. 地址 满分:2 分正确答案:C23. 类aClass的定义如下: class aClass public: aClass() aClass(int i)value=new int(i); int *value; 若要对类中的value赋值,则下面的语句中,正确的是()。A. aClass my; my.value=10;B. aClass my; *my.value=10;C. aClass my; my.*value=10;D. aClass my(10); 满分:2 分正确答案:D24. 派生类中的成员不能访问基类中的

10、()。A. 私有成员B. 公有成员C. 保护成员D. 以上都可以 满分:2 分正确答案:A25. 已知“int a=10,*p;int *&r=p; r=&a;*p=20;couta;”,则输出为()。A. 10B. 20C. 不确定值D. 程序有错误 满分:2 分正确答案:B26. 多继承的构造函数顺序可分为如下4步: 所有非虚基类的构造函数按照它们被继承的顺序构造。 所有虚基类的构造函数按照它们被继承的顺序构造。 所有子对象的构造函数按照它们声明的顺序构造。 派生类自己的构造函数体这四个步骤的正确顺序是()。A. B. C. D. 满分:2 分正确答案:C27. 要在类对象上使用运算符,以

11、下不用必须被重载的运算符是()。A. B. =C. +D. - 满分:2 分正确答案:B28. 在一个类中,可以对一个操作符进行()重载。A. 1种B. 2种C. 3种D. 多种 满分:2 分正确答案:D29. 运算符重载的目的是()。A. 提高程序的效率B. 提高代码复用能力C. 简化程序,减少目标代码D. 使程序代码直观易读 满分:2 分正确答案:D30. 结构化程序设计方法以()为中心进行分析和设计。A. 结构B. 模块C. 对象D. 类 满分:2 分正确答案:B31. 以下为重载函数的一组函数声明的是()。A. void print(int); void print(double);B

12、. void fun(int); int fun(int);C. int max(int,int); int min(int,int);D. void mm(); int mm(); 满分:2 分正确答案:A32. 下列关于继承的描述中,错误的是()。A. 基类中的析构函数不能被派生类继承B. 基类中的保护成员在派生类中无法直接访问C. 派生类的成员除了包括派生类中自己定义的成员外,还包括它从基类继承的成员D. 在公有继承方式下基类中公有成员和保护成员的访问权限到派生类保持不变 满分:2 分正确答案:B33. 在一个string类对象表示的字符串中查找子串,应该使用string类的()函数。A

13、. assignB. insertC. swapD. find 满分:2 分正确答案:D34. 假设堆内存分配均成功,则下面程序段完全正确的是()。A. int *p=new int(3);cout*p;delete p;B. int *p=new int5=1,2,3,4,5;for(int i=0;i5;i+)coutpi;delete p;C. int *p=new int5;for(int i=0;i5;i+,p+) *p=i; cout*p;delete p;D. 以上程序段均正确 满分:2 分正确答案:A35. 将一个string类对象赋予新值,应该使用string类的()函数。A

14、. assignB. insertC. swapD. find 满分:2 分正确答案:A二、 判断题 (共 15 道试题,共 30 分)1. 抽象类虽然也是一种数据类型,但它不能建立对象,只能作为基类被其他类继承。A. 错误B. 正确 满分:2 分正确答案:B2. 构造函数不能被派生类继承。A. 错误B. 正确 满分:2 分正确答案:B3. a为MyClass类对象,“static void SetRate(double r).”是MyClass类的静态成员函数,则执行语句“a.SetRate(0.05);”时,SetRate成员函数中的this指针指向对象a的地址。A. 错误B. 正确 满分

15、:2 分正确答案:A4. C+语言类定义中默认的访问权限是public。A. 错误B. 正确 满分:2 分正确答案:A5. 在一个类中声明了某个静态数据成员,并在类外给出其定义和初始化后,若未定义该类的对象,该静态数据成员则不存在。A. 错误B. 正确 满分:2 分正确答案:A6. 在派生类构造函数的成员初始化列表中,可以包含基类构造函数的调用。A. 错误B. 正确 满分:2 分正确答案:B7. 在派生类对象销毁时,系统除了会自动调用派生类的析构函数,还会自动调用基类的析构函数。A. 错误B. 正确 满分:2 分正确答案:B8. 在C+中,允许从一个类派生出任意多个类,但不允许某个类同时从多个

16、类派生。A. 错误B. 正确 满分:2 分正确答案:A9. 对虚函数的调用,系统都是采用动态联编。A. 错误B. 正确 满分:2 分正确答案:A10. 定义一个虚基类后,则该虚基类后继类层次中的类都需要调用虚基类的构造函数对虚基类中定义的成员变量进行初始化。A. 错误B. 正确 满分:2 分正确答案:B11. 一个类的静态数据成员被该类的所有对象共享。A. 错误B. 正确 满分:2 分正确答案:B12. 在C+中,可以声明虚构造函数和虚析构函数。A. 错误B. 正确 满分:2 分正确答案:A13. 派生类至少有一个基类。A. 错误B. 正确 满分:2 分正确答案:B14. 在C+程序中,有且仅能有一个主函数,且其函数名必须是main。A. 错误B. 正确 满分:2 分正确答案:B15. 要使语句“MyClass a;”能够编译通过,必须在定义MyClass类时编写无参构造函数。A. 错误B. 正确 满分:2 分正确答案:A

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1