第二章复习题2含答案析构函数Word文档下载推荐.docx

上传人:b****5 文档编号:21160823 上传时间:2023-01-28 格式:DOCX 页数:23 大小:198.25KB
下载 相关 举报
第二章复习题2含答案析构函数Word文档下载推荐.docx_第1页
第1页 / 共23页
第二章复习题2含答案析构函数Word文档下载推荐.docx_第2页
第2页 / 共23页
第二章复习题2含答案析构函数Word文档下载推荐.docx_第3页
第3页 / 共23页
第二章复习题2含答案析构函数Word文档下载推荐.docx_第4页
第4页 / 共23页
第二章复习题2含答案析构函数Word文档下载推荐.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

第二章复习题2含答案析构函数Word文档下载推荐.docx

《第二章复习题2含答案析构函数Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《第二章复习题2含答案析构函数Word文档下载推荐.docx(23页珍藏版)》请在冰豆网上搜索。

第二章复习题2含答案析构函数Word文档下载推荐.docx

dateget_return_day();

//获取归还日期,归还日期=出借日期+借阅期限

intget_book();

//获取图书编号

intget_reader();

//获取借阅者编号

intget_expiry();

//获取借阅期限

/**********Program**********/

date:

:

date(intYear,intMonth,intDay){year=Year;

month=Month;

day=Day;

}

voiddate:

setdate(intYear,intMonth,intDay){year=Year;

intdate:

get_year(){returnyear;

}

get_month(){returnmonth;

get_day(){returnday;

card:

card(intBook,intReader,dateBorrow_day,intExpiry){

book=Book;

reader=Reader;

expiry=Expiry;

intcard:

get_book(){returnbook;

get_reader(){returnreader;

get_expiry(){returnexpiry;

datecard:

get_borrow_day(){

/**********End**********/

voidmain(){

intstu=2012678;

intcbook=100034;

dateday(2012,1,31);

//出借日期

cardc1(cbook,stu,day);

//创建card对象c1

//以下打印借书卡c1信息

cout<

<

"

借书卡c1:

"

endl;

-----------------------------------------------------"

setw(10)<

'

*'

图书号:

c1.get_book()<

借书人:

c1.get_reader()<

借阅期限:

c1.get_expiry()<

出借日期:

c1.get_borrow_day().get_year()<

c1.get_borrow_day().get_month()<

c1.get_borrow_day().get_day()<

归还日期:

c1.get_return_day().get_year()<

c1.get_return_day().get_month()<

c1.get_return_day().get_day()<

day.setdate(2012,12,6);

//设置借书日期

cbook=100077;

//图书者编号

cardc2(cbook,stu,day,30);

//创建card对象c2

//以下打印借书卡c2信息

借书卡c2:

c2.get_book()<

c2.get_reader()<

c2.get_expiry()<

c2.get_borrow_day().get_year()<

c2.get_borrow_day().get_month()<

c2.get_borrow_day().get_day()<

c2.get_return_day().get_year()<

c2.get_return_day().get_month()<

c2.get_return_day().get_day()<

3、

声明复数类complex,并使用成员函数add实现复数加法,

并输出结果,注意虚部为负数和0时的输出。

classComplex{

doubleR,I;

Complex(doublea=0,doubleb=0){R=a;

I=b;

voidshow();

Complexadd(Complex);

ComplexComplex:

add(Complexs){

R+=s.R;

I+=s.I;

returnComplex(R,I);

voidComplex:

show(){

if(I>

0)

cout<

R<

+"

I<

i"

elseif(I==0)

else

-"

-I<

voidmain()

{

Complexa(3,4),b(5,6),c;

c=a.add(b);

//c=a+b

c.show();

2、

有一个Time类,包含数据成员hour(小时)、minute(分)和sec(秒),

定义三个获取数据成员的成员函数和一个模拟秒表的函数成员go(每调用一次go走一秒),

格式:

voidgo(void)

doublegetHour(void){returnhour;

}

doublegetMinute(void){returnminute;

doublegetSec(void){returnsec;

classClock{

doublehour,minute,sec;

Clock(doubleh=0,doublem=0,doubles=0);

voidgo(void);

doublegetHour(void){returnhour;

doublegetMinute(void){returnminute;

doublegetSec(void){returnsec;

Clock:

Clock(doubleh,doublem,doubles)

hour=h;

minute=m;

sec=s;

voidClock:

go()

sec++;

if(sec>

=60)

{

sec=(int)sec%60;

minute++;

if(minute>

minute=(int)minute%60;

hour++;

voiddisplay(Clockck)

ck.getHour()<

点"

ck.getMinute()<

分"

ck.getSec()<

秒"

;

voidmain(void)

{

inti;

intINTERVAL;

//耗时,单位为秒

INTERVAL=rand();

Clockclock(9,55,0);

起点="

display(clock);

for(i=1;

i<

=INTERVAL;

i++)clock.go();

终点="

耗时"

INTERVAL<

1、

定义盒子Box类,要求具有以下成员:

可设置盒子形状;

可计算盒子体积;

可计算盒子的表面积

cmath>

classBox{

doublex,y,z;

doubles,v;

voidinit(doublea,doubleb,doublec);

voidvolue();

voidarea();

voidBox:

init(doublea,doubleb,doublec){

x=a;

y=b;

z=c;

volue(){

s=2*x*y+2*x*z+2*y*z;

area(){

v=x*y*z;

voidBox:

show()

{cout<

x="

x<

y="

y<

z="

z<

s="

s<

v="

v<

{Boxa;

a.init(2,3,4);

a.volue();

a.area();

a.show();

5、这题15分只得了13分,内容匹配率66%。

【程序设计】

---------------------------------------------------------

定义一个描述学生基本情况的类Student,数据成员包括学号、

C++成绩、英语和数学成绩,成员函数包括获取学号、求出总成绩和平均成绩,格式:

longgetID()

intsum()

doubleavg()

classStudent{

longID;

intc1,c2,c3;

Student(longa=0,intb=0,intc=0,intd=0){ID=a;

c1=b;

c2=c;

c3=d;

longgetID();

intsum();

doubleavg();

longStudent:

getID(){

returnID;

intStudent:

sum(){

returnc1+c2+c3;

doubleStudent:

avg(){

return(c1+c2+c3)/3;

Students(201211145,90,80,97);

ID:

s.getID()<

\tThesumofsource:

s.sum()<

\tTheavgofsource:

s.avg()<

6、

定义shape类,有三个表示长度的整型数据成员,分别为l、w、h。

编一个基于对象的程序,写一个成员函数is,可判定其形状:

当l、w、h均不为0时,判定形状为柱体,返回值为1;

当l、w、h仅有一个为0时,判定形状为长方形,返回值为2;

当l、w、h仅有一个不为0时,判定形状为线段,返回值为3;

当l、w、h均为0时,判定形状为点,返回值为4;

classshape{

private:

intl,w,h;

shape(int,int,int);

intis();

shape:

shape(inta,intb,intc){l=a;

w=b;

h=c;

intshape:

is(){if(l==0&

&

w==0&

h==0)return4;

if(l!

=0&

w!

h!

=0)return1;

if((l==0&

=0)||(l!

h==0)||(l!

=0))return2;

h==0)||(l==0&

h==0))return3;

voiddisplay(shapes)

switch(s.is()){

case1:

这是柱体"

break;

case2:

这是长方形"

case3:

这是线段"

case4:

这是点"

shapemy1(1,2,3);

display(my1);

shapemy2(1,0,2);

display(my2);

shapemy3(0,0,1);

display(my3);

shapemy4(0,0,0);

display(my4);

7、

定义一个日期类Date,包含年、月、日三个数据成员(int),定义带有3个参数的构造函数,

以及一个求日期是当年的第几天的成员函数和输出日期的成员函数,

日期的显示格式为年/月/日。

编写主函数进行测试。

(每年各月天数分别为31,28,31,30,31,30,31,31,30,31,30,31,闰年2月为29天,

闰年的条件year%4==0&

year%100!

=0)||year%400==0))

输出结果见样张.JPG

classDate{

intyear,month,day;

Date(inta=0,intb=0,intc=0){year=a;

month=b;

day=c;

intgetDay();

voidSetD(inta,intb,intc){year=a;

intDate:

getDay(){

inti,day_sum;

intday_tab[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};

day_sum=0;

month;

i++)day_sum+=day_tab[i];

day_sum+=day;

if((year%4==0&

=0||year%400==0)&

month>

2)day_sum+=1;

returnday_sum;

/**********End**********/

voidDate:

year<

/"

month<

day<

intmain()

Dated1(2009,2,1),d2;

//d1为2009年2月1日

d1.show();

d1.getDay()<

d2.SetD(2012,3,1);

//d2为2012年3月1日

d2.show();

d2.getDay()<

return0;

8、

定义一个点类Point包括x坐标和y坐标(int)。

定义一个圆类Circle,有数据成员半径

和表示圆心坐标的点类对象。

圆类成员函数包括构造函数、求面积的函数和输出显示圆心

坐标及圆半径的函数。

constdoublePI=3.14159;

voidCircle:

圆心X坐标="

p1.getX()<

圆心Y坐标="

p1.getY()<

圆半径="

radius<

Pointp1(9,2),p2;

//9为x坐标,2为y坐标

Circlec1(p1,7),c2;

//7为半径p1为圆心点

c1.show();

圆的面积="

c1.getArea()<

p2.SetP(1,1);

//改变圆心坐标

c2.SetCC(p2,4);

//以p2为圆心坐标,改变c2的半径

c2.show();

//显示c2

c2.getArea()<

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

当前位置:首页 > 高中教育 > 数学

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

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