C++面向对象程序设计模拟试题7Word文档格式.docx

上传人:b****5 文档编号:21684189 上传时间:2023-01-31 格式:DOCX 页数:13 大小:19.05KB
下载 相关 举报
C++面向对象程序设计模拟试题7Word文档格式.docx_第1页
第1页 / 共13页
C++面向对象程序设计模拟试题7Word文档格式.docx_第2页
第2页 / 共13页
C++面向对象程序设计模拟试题7Word文档格式.docx_第3页
第3页 / 共13页
C++面向对象程序设计模拟试题7Word文档格式.docx_第4页
第4页 / 共13页
C++面向对象程序设计模拟试题7Word文档格式.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

C++面向对象程序设计模拟试题7Word文档格式.docx

《C++面向对象程序设计模拟试题7Word文档格式.docx》由会员分享,可在线阅读,更多相关《C++面向对象程序设计模拟试题7Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。

C++面向对象程序设计模拟试题7Word文档格式.docx

B)intTest();

C)~Test(int);

D)Test(int);

8.在下面4个关键字中,用于说明虚基类的是()。

A)virtualB)public

C)protectedD)private

9.在C++中,用于实现编译时多态性的是()。

A)友元函数B)重载函数

C)静态成员函数D)虚函数

10.下列关于C++函数的说明中,正确的是()。

A)内置函数就是定义在另一个函数体内部的函数

B)函数体的最后一条语句必须是return语句

C)C++标准要求在调用一个函数之前,如果没定义函数,则必须先声明其原型

D)编译器会根据函数的返回值类型和参数表来区分函数的不同重载形式

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

错填或不填均无分。

1.一个函数名为Show,返回值类型为void,没有参数的纯虚常成员函数可以声明为()。

2.若将一个二元运算符重载为类的友员函数,其形参个数应该是()个。

3.采用struct定义的类中数据成员和成员函数的默认访问权限是()。

4.在面向对象方法中,()描述的是具有相同属性与操作的一组对象。

5.模板类型形参表使用的关键字为()。

三、程序分析题(本大题共6小题,每小题5分,共30分)给出下面各程序的输出结果。

1.阅读下面程序,写出输出结果。

#include<

iostream>

usingnamespacestd;

classTest

{

private:

intn;

public:

Test(inti=16){n=i;

}

intGet(){returnn;

}

intGet()const{returnn-2;

};

intmain()

Testa;

constTestb(18);

cout<

<

a.Get()<

"

"

<

b.Get()<

endl;

return0;

}

上面程序的输出结果为:

2.阅读下面程序,写出输出结果。

classA

A(){cout<

A"

~A(){cout<

~A"

classB:

A

B(){cout<

B"

~B(){cout<

~B"

intmain()

Bobj;

3.阅读下面程序,写出输出结果。

intf(inta){returna*a+8;

}

template<

classT>

Tf(constT&

a){returna*a;

intmain()

f

(1)<

f(1.0)<

4.阅读下面程序,写出输出结果。

namespacens

{

intx=18;

intx=5;

intx=10;

x<

:

:

x<

ns:

5.阅读下面程序,写出输出结果。

virtualvoidShow()const{cout<

A:

Show()"

publicA

voidShow()const{cout<

B:

voidRefers(constA&

obj)

obj.Show();

Aobj1;

Bobj2;

Refers(obj1);

Refers(obj2);

6.阅读下面程序,写出输出结果。

protected:

inta;

A(intx):

a(x){}

a<

publicA

intb;

B(intx,inty):

A(x),b(y){}

b<

intmain()

Bobj(18,5);

obj.A:

Show();

四、完成程序填题(本大题共4个小题,每小题3分,共12分)下面程序都留有空白,请将程序补充完整。

1.将如下程序补充完整。

classInteger

Integer(intn):

n(n){}

Integer&

[1]{--n;

return*this;

}//重载前缀--运算符

n<

intmain()

Integeri(168);

--i;

i.Show();

2.将如下程序补充完整。

A(intm=0):

a(m){}

[2]//类型转换函数,A类对象转转成int型量

{returna;

intmain()

Aa=8.14;

3.将如下程序补充完整。

intm;

A(inta):

m(a){}

m<

B(inta,intb):

A(a){n=b;

Bobj(158,98);

[2]Show();

//调用基类的Show()

4.将如下程序补充完整。

classComplex

doublerealPart;

doubleimagePart;

Complex(doublereal=0,doubleimage=0):

realPart(real),imagePart(image){}

Complex[3](constComplex&

a)const//重载减法运算符+

{returnComplex(realPart-a.realPart,imagePart-a.imagePart);

realPart<

+"

imagePart<

i"

Complexa(2,9),b(1,1),c;

c=a-b;

a="

;

a.Show();

b="

b.Show();

c="

c.Show();

五、编程题(本大题共2小题,第1小题12分,第2小题16分,共28分)

1.试使用函数模板实现求一个数组各元素的积,要求编写测试程序。

函数模板声明如下:

classType>

TypeMul(Typea[],intn)//求数组a各元素的积

2.设计一个日期类Date,,要求:

(1)包含年(year)、月(month)和日(day)私有数据成员。

(2)包含构造函数,重载输出运算符“<

”与重载输入运算符“>

>

”。

要求编写测试程序。

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

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

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

1.参考答案:

virtualvoidShow()const=0;

2.参考答案:

2

3.参考答案:

public或公有

4.参考答案:

5.参考答案:

class

16,16

A

B

~B

~A

9,1

10518

Show()

6.参考答案:

5

18

[1]operator--()

[2]operatorint()const或operatorint()

[3]obj.A:

[4]operator-

1.参考程序:

Typet=1;

for(inti=0;

i<

n;

i++)

t*=a[i];

returnt;

inta[]={1,2,3,4,5,6,7,8,9};

Mul(a,9)<

2.参考程序:

classDate

intyear;

intmonth;

intday;

Date(inty=2010,intm=1,intd=1):

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

voidSetYear(inty){year=y;

voidSetMonth(intm){month=m;

voidSetDay(intd){day=d;

intGetYear()const{returnyear;

intGetMonth()const{returnmonth;

intGetDay()const{returnday;

istream&

operator>

(istream&

in,Date&

dt)

inty,m,d;

输入年:

"

in>

y;

输入月:

m;

输入日:

d;

dt.SetYear(y);

dt.SetMonth(m);

dt.SetDay(d);

returnin;

ostream&

operator<

(ostream&

out,constDate&

dt)

dt.GetYear()<

年"

dt.GetMonth()<

月"

dt.GetDay()<

日"

returnout;

Dated;

cin>

d<

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

当前位置:首页 > 幼儿教育 > 育儿知识

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

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