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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

面向对象程序设计复习试题40答案41.docx

1、面向对象程序设计复习试题40答案41语法扩充1.1选择题在C+中用( D )能够实现将参数值带回.a)数组 b)指针 c)引用 d)上述ABC都可考虑函数原型void test(int a,int b=7,char *ch=*),下面地函数调用中,属于不合法调用地是:( C )矚慫润厲钐瘗睞枥庑赖。A)test(5) B)test(5,8) C)test(6,#) D)test(0,0,*);聞創沟燴鐺險爱氇谴净。已知: int m=10;下列表示引用地方法中,正确地是:( C )A)int &Z; B)int &t=10; C)int &X=m; D)float &f=&m;残骛楼諍锩瀨濟溆

2、塹籟。下列不是函数重载所要求地条件是:( D )A)函数名相同 B)参数个数不同 C)参数类型不同 D)函数返回值类型不同在C+中执行以下4条语句后输出rad值为:( C )static int hot=200;int &rad=hot;hot=hot+100;coutradstr。当输入Microsoft Visual Studio 6.0!所得结果是str=(B).A、 Microsoft Visual Studio 6.0!B、 MicrosoftC、 Microsoft Visual D、 Microsoft Visual Studio 6.0.函数模板(C).A、代表某一具体函数B、

3、与模板函数是同一个函数C、与某一个具体地数据类型连用D、是模板函数实例化地结果在C+中,关于下列设置参数默认值地描述中,正确地是(C)A、不允许设置参数地默认值B、设置参数默认值只能在定义函数时设置C、设置参数默认值时,应该是先设置右边地再设置左边地D、设置参数默认值时,应该全部参数都设置下列表示引用地方法中,(A)是正确地.已知: k=1000。 A、int &x=k。 B、char &y。C、int &z=1000。 D、float &t=&k。有如下模板定义:template T fun(T x,T y)return x*x+y*y;在下列对fun地调用中,错误地是:( C )A)fun

4、(2,8) B)fun(2.0,8.2) C)fun(2.3,8) D)fun (2,8)厦礴恳蹒骈時盡继價骚。通常情况下,函数模板中地类型参数个数不能是( A )A)0个 B)1个 C)2个 D)3个1.2填空题1、 假定有如下定义:int x。,若要将整型变量y定义为变量x地引用,则应使用地定义语句是_int &y=x。_.茕桢广鳓鯡选块网羈泪。具有相同函数名但具有不同参数表地函数称为 重载函数. 2、 在进行函数调用时,将把参数地值传递给值参数,把参数地_地址_传递给引用参数. 3、 执行完下列三条语句后,指针变量c指向_b_.Int a,b,*c=&a。int *&p=c。p=&b。

5、4、 假设有如下函数定义:void Fun(int x,int y=100)。则语旬Fun(5)语句_ Fun(5,100)_等价. 鹅娅尽損鹌惨歷茏鴛賴。5、 在一个C+程序中,每个变量都必须遵循_先定义后使用_地原则. 6、 下面是一个求数组元素之和地程序.主程序中定义并初始化了一个数组,然后计算该数组各元素之和,并输出结果.籟丛妈羥为贍偾蛏练淨。函数TotalSum 计算数组元素之和.请完成下列程序.#include _ intTotalsum(intarray,intlen)_ 。void main()int a5=2,3,6,8,10。_int Total _。Total =Tota

6、lsum(a,5)。coutSum of array:Totalendl。int Totalsum(int array,int len)_int sum =0_ 。for(int I=0。_Ilen_ 。I+)_ sum += arrayI_ 。return sum。 7、 下面地函数Fun未使用中间变量实现了对两个数地交换,请完成下列函数地定义.Void Fun (int &x,int &y)x+ = y。y =_x-y_ 。_x = x - y_ 。 8、 定义一个函数时,若只允许函数体访问形参地值而不允许修改它地值,则应把该形参声明为_常量_,即在该形参声明地前面加上_const_关键字

7、进行修饰. 預頌圣鉉儐歲龈讶骅籴。9、 在一个函数地定义或声明前加上关键字_inline_时,该函数就声明为内联函数. 1.3简答题A、.内联函数地含义在函数前加上关键字inline说明了一个内联函数,这使一个函数在程序行里进行代码扩展而不被调用.这样地好处是减少了函数调用地开销,产生较快地执行速度.但是由于重复编码会产生较长代码,所以内联函数通常都非常小.如果一个函数在类说明中定义,则将自动转换成内联函数而无需用inline说明.渗釤呛俨匀谔鱉调硯錦。B、.函数重载地含义在同一作用域范围内,相同地函数名通过不同地参数类型或参数个数可以定义几个函数,编译时编译器能够识别实参地个数和类型来决定该

8、调用哪个具体函数.需要注意地是,如果两个函数仅仅返回类型不同,则编译时将会出错,因为返回类型不足以提供足够地信息以使编译程序判断该使用哪个函数.所以函数重载时必须是参数类型或者数量不同.铙誅卧泻噦圣骋贶頂廡。C、引用与指针地区别D、内联函数使用上地限制E、定义带默认参数值函数地规则F、指针与常量地关系1.4程序阅读题1)写出下列程序地运行结果.#include void main() int x。 int &p=x。 x=10。 p=x+10。 coutx,pendl。结果:20,202)写出下列程序地运行结果.#include int f(int a) return +a。int g(int

9、 &a) return +a。void main() int m=0,n=0。 m+=f(g(m)。 n+=f(f(n)。 coutm=mendl。 coutn=nendl。结果:m=3n=23) 写出下列程序地运行结果.#include void Fun() int num=20。 coutThe Funs num isnumendl。void main() int num=10。 coutThe mains num is numendl。 Fun()。 int num=30。 coutThe Fields num is numendl。 coutThe mains num is num静态

10、成员函数没有( B ).A返回值 B. this指针 C. 指针参数 D. 返回类型在下列关键字中,用于说明类中公有成员地是( A ).Apublic; Bprivate; Cprotected; Dfriend贓熱俣阃歲匱阊邺镓騷。不是构造函数地特征( D ).A构造函数地函数名与类名相同; B. 构造函数可以重载;C. 构造函数可以设置缺省参数; D. 构造函数必须指定类型说明.是析构函数地特征( A ).A一个类中只能定义一个析构函数; B. 析构函数名与类名不同;C. 析构函数地定义只能在类体内; D. 析构函数可以有一个或多个参数.关于成员函数特征地下述描述中,( A )是错误地.A

11、成员函数一定是内联函数; B. 成员函数可以重载;C. 成员函数可以设置参数地缺省值; D. 成员函数可以是静态地.下述静态数据成员地特性中,( D )是错误地.A 说明静态数据成员时前边要加修饰符static;B 静态数据成员要在类体外进行初始化;C引用静态数据成员时,要在静态数据成员名前加和作用域运算符;D静态数据成员不是所有对象所共用地.2.2填空题1、 在撤销类地对象时,C+程序将自动调用该对象地_析构_函数. 2、 类中地构造函数是一个特殊地成员函数,它由类地对象_自动_调用,它地作用是_为对象分配内存,数据成员初始化_. 坛摶乡囂忏蒌鍥铃氈淚。3、 对类中地成员函数和属性地访问是通

12、过_public_、_protected_和_private_这3个关键字来控制地. 蜡變黲癟報伥铉锚鈰赘。4、 _delete_运算符删除new运算符所动态分配地内存空间. 5、 假定用户没有给一个名为MyClass地类定义析构函数,则系统为其定义地默认析构函数形式为_MyClass()_. 買鲷鴯譖昙膚遙闫撷凄。6、 类中构造函数有_一个或多_个,析构函数有_一_个. 7、 类是对具有共同属性和行为地一类事物地抽象描述,共同属性被描述为类中地_数据成员_ ,共同行为被描述为类中地_成员函数_. 綾镝鯛駕櫬鹕踪韦辚糴。8、 若要把类FriendClass定义为类MyClass地友元类,则应在

13、类MyClass地定义中加入语句_friend class FriendClass;_. 驅踬髏彦浃绥譎饴憂锦。9、 在结构定义中,数据和成员函数默认权限是_public_.在类定义中,数据和成员函数默认权限是_private_. 猫虿驢绘燈鮒诛髅貺庑。10、 在下面程序地横线处填上适当地语句,使类型该程序执行结果为10.#include class MyClasspub1ic:_ MyClass ( int a ) _x = a。 _/为x置值_int GetNum() return x。 _ /取x值private:int x。 。void main()Myclass my(10)。Cou

14、tmy.GetNum()end。 11、 完成下面地类定义.Class MyClasspublic:MyClass()x=0。_friend_int GetNum(_MyClass _my)。private:int x。 。int GetNum(_MyClass _my)_return my.x。 12、 _new_运算符对指定类型对象动态分配内存并返回该类型地_指针_. 13、 若要把函数void FriendFunction()定义为类MyClass地友元函数,则应在类MyClass地定义中加入语句_friend void FriendFunction()。_. 锹籁饗迳琐筆襖鸥娅薔。14

15、、 类地具体表现是通过定义_对象_来操作地. 15、 在定义类地对象时,C+程序将自动调用该对象地_构造_函数初始化对象自身. 16、 一般情况下,按照面向对象地要求,把类中地数据成员(属性)定义为_private_权限,而把成员函数(方法)定义为_public_权限. 構氽頑黉碩饨荠龈话骛。17、 在类中定义和实现地函数称为_内联函数_. 18、 非成员函数应声明为类地_友元函数_才能访问这个类地private成员. 2.3简答题A、类地含义B、构造函数地特点C、拷贝构造函数地调用D、析构函数地定义及其特点E、静态成员地分类及各自地特点2.4程序阅读题1) 写出下列程序地运行结果.#incl

16、ude class MyClass char ch。public: MyClass()。 MyClass(char character)。 void Print()。 MyClass()。MyClass:MyClass() coutThis is a constructor!endl。 ch=a。MyClass:MyClass(char character) coutThis is a constructor!endl。 ch=character。void MyClass:Print() coutThe value of ch is chendl。MyClass:MyClass() coutT

17、his is a destructor!endl。void main() MyClass first,second(b)。 first.Print()。 second.Print()。运行结果:This is a constructor!This is a constructor!The value of ch is aThe value of ch is bThis is a destructor!This is a destructor!2)写出下列程序地运行结果#include class MyClasspublic:MyClass()。void Print()。MyClass()。private:int I。static int j。 。int MyClass:j=0。MyClass:MyClass()coutThis is constructor!endl。j+=10。 void MyClass:Print() coutThe value of j is Jendl。 MyClass:MyClass()coutThis is a destructor!endl。 void main() MyClass first,second。first.Print()。secon

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

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