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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

秋川大网教《面向对象程序设计》第一二次作业及答案解析.docx

1、秋川大网教面向对象程序设计第一二次作业及答案解析面向对象程序设计第一次作业答案一、单项选择题。本大题共30个小题,每小题 2.0 分,共60.0分。在每小题给出的选项中,只有一项是符合题目要求的。1. C函数的声明和定义可以分开,函数声明不需要( D)。A. 返回类型B. 函数名C. 参数表D. 函数体2. 函数的形参是( B )。A. 全局变量B. 局部变量C. 静态变量D. 部变量3. 数组名表示的是数组的(C )。A. 类型B. 用途C. 地址D. 长度4. 如果短整型的长度是2字节,有一个短整型指针p的值是0xFFED1200,那么p+1的值为(B )。A. 0xFFED1201B.

2、0xFFED1202C. 0xFFED1203D. 0xFFED12045. private访问属性限制对象的成员可以在( A)中访问。A. 本类的成员函数B. main函数C. 父类的成员函数D. 子类的成员函数6. 如果定义了一个类myclass,则为myclass类对象以成员函数形式重载后+运算符的声明应该为(C )。A. myclass operator+();B. myclass&operator+();C. myclass operator+( int );D. myclass& operator+( int );7. 如果有如下定义: const char* str = OK;那

3、么,sizeof(str)的值应该是( D)A. 1B. 2C. 3D. 48. 父类和子类各自定义一个成员函数,函数名相同,参数表不同,那么(D )。A. 在子类中这两个函数构成重载关系B. 子类不会继承父类的这个函数C. 子类中的函数会覆盖父类中的函数D. 编译时会发生错误9. 如果myclass类定义了拷贝构造函数和一个整型参数的构造函数,还重载了赋值运算符,那么语句myclass obj = 100;会( B)。A. 调用拷贝构造函数B. 调用整型参数的构造函数C. 调用赋值运算符D. 引起编译错误10. 抽象类指的是(D )。A. 没有任何成员的类B. 只有成员函数没有数据成员的类C

4、. 有虚函数的类D. 有纯虚函数的类11. 多重继承时,如果派生类的两个父类有一个共同的虚基类,那么虚基类的初始化参数由(C )的构造函数来传递。A. 第一个父类B. 第二个父类C. 派生类D. 以上都不是12. 多态性是通过(C )实现的。A. 构造函数B. 析构函数C. 虚函数D. 函数重载13. 十进制数127转换成二进制数是(B )A. 11111111B. 01111111C. 10000000D. 1111111014. 执行语句char ch = Hello;char * p = &ch0;cout1; I-=2)cout*;A. 24B. 25C. 26D. 508. 有如下定

5、义:int a5=1,3,5,7,9,*p=a;下列表达式中不能得到数值 5 的是 (B )A. a2B. a3C. *(p+2)D. *p+49. 已知函数 f 的原型是 void f(int *a, long & b);,变量 v1、v2 的定义是:int v1; loong v2;下列调用语句中正确的是 (D )A. f(v1, &v2)B. f(v1, v2)C. f(&v1, &v2)D. f(&v1, v2)10. 有如下类定义:class Pointprivate;static int how_many;_ how_many=0;要初始化 Point 类的静态成员 how_man

6、y,下划线处应填入的内容是 DA. ingB. static intC. int Point:D. static int Point:11. 在下列关键字中,不能用来表示继承方式的是 (B )A. privateB. staticC. publicD. protected12. 已知 Value 是一个类,Value 是 Value 的一个对象。下列以非成员函数形式重载的运算符函数原形中,正确的是( B)A. Value operator+(Value v, int i);B. Value operator+(Value v=value, int i);C. Value operator+(V

7、alue vint i=0);D. Value operator+(Value v=value, int i=0);13. 下面是一个模板声明的开始部分: templute double _由此可知 (A ) A. 这可能是一个函数模板的声明B. 这可能是一个类模板的声明C. 这既可能是一个函数模板的声明,也可能是一个类模板的声明D. 这肯定是一个错误的模板声明14. 有如下 4 个语句: coutAsetfill(*)leftsetw(7)Bendl; coutsetfill(*)leftsetw(7)ABendl; coutAserfill(*)rightsetw(7)Bendl; cou

8、tsetfill(*)rightsetw(7)ABendl;其中能显示 A*B 的是 (A )A. 和B. 和C. 和D. 和15. 有如下类定义:class MyClassint value;public:MyClass(int n): value (n) int gerValue()const return value;则类 MyClass 的构造函数的个数是 ( A)A. 1 个B. 2 个C. 3 个D. 4 个16. 有如下类和对象的定义:class Constantspublic:static double getPI()return 3.1416;Constants consta

9、nts;下列各组语句中,能输出 3.1416 的是 (D )A. coutgetPI();和 coutConstants:gerPI();B. coutconstants.getPI();和 coutConstants.getPI();C. coutgetPI();和 coutgetPI();D. coutconstants.getPI();和 coutConstants:getPI();17. 若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的是(B )A. p1=&m,p2=&p1B. p1=&m;p2=&n;*p1=*p2C. p1=&m;p1=p2D. p1=&m;*

10、p2=*p118. C+语言对C语言做了很多改进,C+语言相对于C语言的最根本的变化是(D )A. 增加了一些新的运算符B. 允许函数重载,并允许设置缺省参数C. 规定函数说明符必须用原型D. 引进了类和对象的概念19. 若已定义int a=5;下面对(1),(2)两个语句正确理解的是( D)(1)int *p=&a; (2)*p=a;A. (1)(2)中的*P含义相同,都表示给指针变量P 附值B. (1)(2)的执行结果都是把变量a的地址值赋给指针变量PC. (1)在对P进行说明的同时进行初始化,使P指向a,(2)将变量a的值赋给指针变量PD. (1)在对P进行说明的同时进行初始化,使P指向

11、a,(2)将变量a的值赋给*20. 下列有关抽象类和纯虚函数的叙述中,错误的是 (D )A. 拥有纯虚函数的类是抽象类,不能用来定义对象B. 抽象类的派生类若不实现纯虚函数,它也是抽象类C. 纯虚函数的声明以“=0;”结束D. 纯虚函数都不能有函数体21. 下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的“left”,输出效果将发生变化的是 (B )A. coutleftsetfill(*)357;B. coutleftsetw(5)357;C. coutleftsetw(5)ABCDE;D. coutleftABCDE;22. 下面函数调用语句含有实参的个数为: (B )func(

12、exp1,exp2),(exp3,exp4,exp5)A. 1B. 2C. 4D. 523. 设有定义int x; float v;,则10+x+v值的数据类型是 (C )A. intB. doubleC. floatD. 不确定24. 在定义int a342;后,第10个元素是( B)A. a212B. a101C. a201D. a22125. 下列哪个是C+语言的有效标识符? (A )A. _No1B. No、1C. 12345D. int26. 下面的选项中正确的赋值语句是(char a5,*p=a;)。 ( A)A. p=“abcd”;B. a=“abcd”;C. *p=“abcd”

13、;D. *a=“abcd”;27. 若k为整形,则while循环执行(C )次。k=2; while(k=0) printf(“%d”,k); k-; printf(“n”);A. 10B. 9C. 0D. 128. 数组名作为实参传递给形参时,数组名被处理为该数组的(C )。A. 长度B. 元素个数C. 首地址D. 各元素的值29. 两个指针变量不可以(A )。A. 相加B. 比较C. 相减D. 指向同一地址30. 以下对二维数组a的正确说明是:(C )A. int a3;B. float a(3,4);C. double a14;D. float a(3)(4);二、多项选择题。本大题共5

14、个小题,每小题 4.0 分,共20.0分。在每小题给出的选项中,有一项或多项是符合题目要求的。1. 构造函数(ACD )。A. 函数名只能是类名B. 返回类型可以是任意的C. 参数个数和类型可以是任意的D. 在对象创建时自动调用2. 关于公共静态数据成员,下面说法正确的是(ABCD )。A. 在main函数之前创建B. 跟某个具体对象无关C. 可以用类名和成员名直接访问D. 需要在类体外初始化3. 两个同名函数构成重载关系,只要(BCD )不同。A. 返回类型B. 参数个数C. 参数类型D. 函数头后有无const4. 模板定义中的类型参数可以用作( ABCD)。A. 局部变量类型B. 函数参

15、数类型C. 函数返回值类型D. 数据成员类型5. 设有定义语句: int x6=2,4,6,8,5,7,*p=x,i;要求依次输出x数组6个元素中的值,下列选项中能完成次操作的语句有_(ABC )、A. for(i=0;i6;i+)printf(“%2d”,*(p+);B. for(i=0;i6;i+)printf(“%2d”,*(p+i);C. for(i=0;i6;i+)printf(“%2d”,*p+);D. for(i=0;i6;i+)printf(“%2d”,(*p)+)三、判断题。本大题共5个小题,每小题 4.0 分,共20.0分。1. 逻辑运算符两侧运算对象的数据类型只能是0或1。 ( 错误 )2. 宏名必须用大写字母表示。 (错误)3. C+程序从上机到得到结果的几个操作步骤依次是:编辑、编译、连接、运行。 (正确 )4. 字符串abn在机器中占6个字节。 (错误)5. 1.234e0为C语言合法常量。 (正确)

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2