C++面向对象程序设期末试题.docx

上传人:b****5 文档编号:27863832 上传时间:2023-07-05 格式:DOCX 页数:8 大小:17.95KB
下载 相关 举报
C++面向对象程序设期末试题.docx_第1页
第1页 / 共8页
C++面向对象程序设期末试题.docx_第2页
第2页 / 共8页
C++面向对象程序设期末试题.docx_第3页
第3页 / 共8页
C++面向对象程序设期末试题.docx_第4页
第4页 / 共8页
C++面向对象程序设期末试题.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

C++面向对象程序设期末试题.docx

《C++面向对象程序设期末试题.docx》由会员分享,可在线阅读,更多相关《C++面向对象程序设期末试题.docx(8页珍藏版)》请在冰豆网上搜索。

C++面向对象程序设期末试题.docx

C++面向对象程序设期末试题

C++面向对象程序设计模拟试题五

一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中,只有一个是苻合题目要求的。

请将其代码填写在题后的括号内。

错选,多选或未选均无分。

1.下列对类的构造函数和析构函数描述正确的是()。

A)构造函数可以重载,析构函数不能重载

B)构造函数不能重载,析构函数可以重载

C)构造函数可以重载,析构函数可以重载

D)构造函数不能重载,析构函数不能重载

2.在函数定义前加上关键字“inline”,表示该函数被定义为()。

A)重载函数B)内联函数

C)成员函数D)普通函数

3.下面有关重载函数的说明中,()是正确的。

A)重载函数必须具有不同的返回值类型

B)重载函数形参个数必须不同

C)重载函数一般具有不同的形参列表

D)重载函数名可以不同

4.下列有关类与对象的说法中,()是不正确的。

A)对象是类的一个实列

B)任何一个对象只能属于一个具体的类

C)一个类只能有一个对象

D)类和对象的关糸和数椐类型与变量的关糸类似

5.已知:

Print()函数是一个类的常成员函数,它无返回值,下列表示中,正确的是()。

A)voidPrint()const;B)constvoidPrint();

C)voidconstPrint();D)voidPrint(const)

6.假定Myclass为一个类,那么下列的函数说明中()为该类的析构函数。

A)void~Myclass();B)~Myclass(intn);

C)Myclass();D)~Myclass()

7.下面类的定义中有()处错误。

classmyclass

{

inti=0;

public:

voidmyclass();

~myclass(value);

}

A)1B)2C)3D)4

8.说明虚函数的关键字是()。

A.inlineB.virtualC.defineD.static

9.cout是某个类的标准对象的引用,该类是()。

A.ostreamB.istreamC.stdoutD.stdin

10.如果class类中的所有成员在定义时都没有使用关键字public、private或protected,则所有成员缺省定义为()。

A.publicB.protectedC.privateD.static

11.定义类模板时要使用关键字()。

A.constB.newC.deleteD.template

12一个类的所有对象共享的是()。

A.私有数据成员B.公有数据成员

C.保护数据成员D.静态数据成员

13.静态成员函数没有()。

A.返回值B.this指针C.指针参数D.返回类型

14.解决多重继承中二义性问题的方法有()。

A.只能使用作用域分辨操作符

B.使用作用域分辨操作符或赋值兼容规则

C.使用作用域分辨操作符或虚基类

D.使用虚基类或赋值兼容规则

15.如果在类CTest的外面的非成员函数中采用CTest:

:

f()形式函数调用;则函数f()是类CTest的()。

A.静态成员函数B.非静态成员函数

C.友元函数D.前面都不正确

二、判断正误题(本大题共5小题,每小题2分,共10分)判断正误,在题后的括号内,正确的划上“√”错误的划上”×”。

1.构造函数可以设置默认参数

2.类的析构函数的作用是对象的初始化

3.cout的默认输出对象是键盘,cin的默认输入对象是屏幕

4.抽象类可以用来直接创建对象。

5.常对象可以调用任意成员函数。

三、填空题(本大题共5小题,每小题2分,共10分)不写解题过程,将正确的答案写在每小题的空格内,错填或不填均无分。

1.重载运算苻“-”的函数名为()。

2.C++中类的用途有两种,一种是类的实例化,即生成类的对象,另一种是通过

(),派生出新的类。

3.在下面程序的横线处填上正确的语句,以实现动态多态。

#include

classBase

{

public:

virtualvoidFun(){cout<<"Base:

:

Fun"<

};

classDerived:

publicBase

{

public:

voidFun(){cout<<"Derived:

:

Fun"<

};

intmain()

{

Basea,*pb;

Derivedb;

;

pb->Fun();//调派生类的成员函数Fun(),以实现动态多态

return0;

}

4.编译时多态性可以用()函数实现。

5.使用new建立的动态对象在不用时应该用()删除,以便释放所占用空间。

//21

六、编程题(本大题共2小题,每小题10分,共20分)

1.设计一个类DateInfo,要求其满足下述要求:

(1)要求有一个无参的构造函数,其初始的年、月、日分别为:

2010,6,8。

(2)要求有一个带参数的构造函数,其参数分别对应年、月、日。

(3)要求用一个成员函数实现日期的设置。

(4)要求用一个成员函数实现输出日期。

要求用一个成员函数实现日期的获取。

2.定义一个复数类Complex,二个数据成员为double型r,i为private属性。

定义代二个参数的构造函数和一个Show()函数用以输出r,i的值,另外作为成员函数重载的运算苻”+”的功能是将此类二个对象的数据成员r和i对应相加。

这些成员函数的属性均为public.请用C++编写此程序,并编写测试程序进行测试。

C++面向对象程序设计模拟试题五参考答案

一、单项选择题(本大题共15小题,每小题2分,共30分)在每小题列出的四个备选项中,只有一个是苻合题目要求的。

请将其代码填写在题后的括号内。

错选,多选或未选均无分。

1.A)2.B)3.C)4.C)5.A)

6.D)7.C)8.B)9.A)10.C)

11.D)12.D)13.B)14.C)15.A)

二、判断正误题(本大题共5小题,每小题2分,共10分)判断正误,在题后的括号内,正确的划上“√”错误的划上”×”。

1.参考答案:

“√”

2.参考答案:

“×”

3.参考答案:

“×”

4.参考答案:

“×”

5.参考答案:

“×”

三、填空题(本大题共5小题,每小题2分,共10分)不写解题过程,将正确的答案写在每小题的空格内,错填或不填均无分

1.参考答案:

oprator-

2.参考答案:

继承

3.参考答案:

pb=&b

4.参考答案:

重载

5.参考答案:

delete

六、编程题(本大题共2小题,每小题10分,共20分)

1.参考程序:

#include

usingnamespacestd;

classDateInfo

{

private:

intyear,month,day;

public:

DateInfo():

year(2010),month(6),day(8){}

DateInfo(inty,intm,intd):

year(y),month(m),day(d){}

voidSet(inty,intm,intd)

{

year=y;

month=m;

day=d;

}

voidShow(){cout<

};

intmain()

{

DateInfod1,d2(1988,8,18);

d1.Show();

d2.Show();

d2.Set(1999,9,19);

d2.Show();

return0;

}

2.参考程序:

#include

usingnamespacestd;

classComplex

{

private:

doubler,i;

public:

Complex(doublea,doubleb):

r(a),i(b){}

voidShow(){cout<

Complexoperator+(Complexobj)

{returnComplex(r+obj.r,i+obj.i);}

};

intmain()

{

Complexc1(3.5,4.5),c2(2.5,5.5),c3(0.0,0.0);

c3=c1+c2;

c3.Show();

return0;

}

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 党团工作 > 入党转正申请

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

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