C++写一个日期类DateWord格式文档下载.docx

上传人:b****5 文档编号:18671311 上传时间:2022-12-31 格式:DOCX 页数:43 大小:23.02KB
下载 相关 举报
C++写一个日期类DateWord格式文档下载.docx_第1页
第1页 / 共43页
C++写一个日期类DateWord格式文档下载.docx_第2页
第2页 / 共43页
C++写一个日期类DateWord格式文档下载.docx_第3页
第3页 / 共43页
C++写一个日期类DateWord格式文档下载.docx_第4页
第4页 / 共43页
C++写一个日期类DateWord格式文档下载.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

C++写一个日期类DateWord格式文档下载.docx

《C++写一个日期类DateWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《C++写一个日期类DateWord格式文档下载.docx(43页珍藏版)》请在冰豆网上搜索。

C++写一个日期类DateWord格式文档下载.docx

}

else

不是闰年"

voidaddOneday()

if((month==2&

day==29)||((year%4!

=0||(year%100==0&

year%400!

=0))&

month==2&

day==28))

{

day=1;

month++;

}

elseif(month==1||month==3||month==5||month==7||month==8||month==10||month==12)

if(month==12&

day==31)

year++;

month=1;

}

elseif(day==31)

elseif((month==4||month==6||month==9||month==11)&

day==30)

else

day++;

};

voidmain()

Datea;

a.setDate(2000,2,28);

a.output();

a.IsLeap();

a.addOneday();

}

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

作业2,设计圆类

实现圆类的成员函数,并在主函数中进行测试。

classCircle//圆类

private:

doubleradius;

//半径

public:

//以下是公有成员函数

voidSetRadius(doubler);

//设置半径

doubleCalculateArea();

//求面积

doubleCalculateCircumference();

//求周长

doubleGetRadius();

//获取半径

voidPrint();

//输出半径

classCircle

voidSetRadius(doubler)

radius=r;

doubleCalculateArea()

doubleCalculateCircumference()

doubleGetRadius()

returnradius;

voidPrint()

cout<

半径:

radius<

Circlea;

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

(1)数据成员有:

横坐标doublex、纵坐标doubley;

(2)提供两个构造函数:

无参构造函数将数据成员初始化为(0,0),有参构造函数利用参数对数据成员赋值;

(3)提供拷贝构造函数;

(4)成员函数voidmoveto(doublea,doubleb),表示点移动到新的坐标位置(a,b);

(5)成员函数voiddisplay(),输出点的坐标;

(7)定义主函数,完成点类的测试。

classCPoint

doublex,y;

CPoint(doublex,doubley)

this->

x=x;

y=y;

CPoint()

x=0;

y=0;

CPoint(constCPoint&

p)

voidmoveto(doublea,doubleb)

x=a;

y=b;

voiddisplay()

("

x<

"

y<

)"

frienddoubledistance(CPoint&

p1,CPoint&

p2)

returntemp;

CPointa(0,0),b(3,4);

距离:

distance(a,b)<

CPointc(b);

//1)定义基类CMathA,有保护数据成员3个,分别为三个整数,公有成员函数3个,分别是有参构造函数、求这三个数的最大值,和最小值。

//

(2)定义派生类CMathB,公有继承CMathA,私有数据成员2个,分别是两个整数,公有成员函数3个,分别是有参构造函数(别忘记调用基类有参构造函数)、求5个数据成员的和,与积。

//(3)定义主函数,完成基类与派生类所有成员函数的测试。

classCMathA

protected:

intx,y,z;

CMathA(inta,intb,intc)

y=b;

z=c;

voidmax()

intmax;

if(x>

y)

max=x;

max=y;

if(max<

z)

max=z;

最大值:

max<

voidmin()

intmin;

if(x<

min=x;

min=y;

if(min>

min=z;

最小值:

min<

classCMathB:

publicCMathA

intm,n;

CMathB(inta,intb,intc,intd,inte)

:

CMathA(a,b,c)

m=d;

n=e;

voidsum()

inttemp=x+y+z+m+n;

和:

temp<

voidmultiply()

inttem=x*y*z*m*n;

乘积:

tem<

CMathAa(1,3,2);

CMathBb(1,3,2,4,5);

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

(1)编写点类Point,包括两个私有数据成员doublex,y表示横纵坐标,成员函数包括两个分别是Point(doublex,doubley);

//构造函数和Point(doublex,doubley);

//显示函数

(2)编写几何图形的类Circle,包括两个属性:

圆心Pointcenter;

和半径doubleR;

成员函数包括:

圆心位置获取函数PointGetCenter();

半径获取函数doubleGetR()、半径设置函数voidSetR(doubler)、圆的位置移动函数voidMoveTo(Pointp2);

以及圆的信息打印函数voiddisplayCircle()。

(3)编写主函数,完成圆类中所有成员函数的测试。

classPoint

Point(doublea,doubleb)

voiddisPlay()

圆心是:

doubler;

Pointcenter;

Circle(doubler,Pointp1)

center(p1)

r=r;

PointGetCenter()

returncenter;

voidSetR(doubler)

doubleGetR()

returnr;

voiddisplayCircle()

r<

voidMoveTo(Pointp2)

center=p2;

Pointp1(2,7),p2(3,7);

Circlecc(9,p1);

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

1.设计平面坐标系中的点类CPoint:

(1)私有数据成员有:

(2)公有提供两个构造函数:

(3)公有提供拷贝构造函数;

(4)公有成员函数doubleGetX(),求点的横坐标;

(5)公有成员函数doubleGetY(),求点的纵坐标;

2.设计线类

斜率和截距;

(2)公有提供两个有参构造函数:

CLine(doublek,doubleb);

CLine(CPointp1,CPointp2)

(3)公有成员函数doubleGetK(),求直线的斜率

(4)公有成员函数boolIncludePoint(CPointp1),判断一个点是否在直线上;

(5)公有成员函数voidDisplay(),显示直线方程。

3.定义主函数,完成线类所有测试。

y=0;

CPoint(CPoint&

p)

doubleGetX()

returnx;

doubleGetY()

returny;

classCLine

doublek,b;

CLine(doublek,doubleb)

k=k;

b=b;

CLine(CPointp1,CPointp2)

boolIncludePoint(CPointp3)

returntrue;

else

returnfalse;

doubleGetK()

returnk;

voidDisplay()

if(b<

0)

直线方程:

y="

k<

x"

b<

elseif(b==0)

x+"

CPointp1,p2(2,7),p3(3,9);

CLineline1(p1,p2);

该点在直线上"

else

该点不在直线上"

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

设计圆类Circle,保护数据成员半径,公有成员函数:

输出圆面积voidarea();

设计球体类Sphere,公有继承圆类,公有成员函数:

输出球体表面积voidarea();

设计测试类,实现多态性,指向基类的指针,可以指向派生类对象,并调用派生类的成员函数。

doubleR;

Circle(doubler)

R=r;

virtualvoidarea()

classSphere:

publicCircle

Sphere(doubler):

Circle(r)

Circlec1

(2);

Circle*p;

Spheres1(5);

p=&

c1;

p->

area();

s1;

//

(1)定义类CShape,包含显示图形面积的含纯虚函数virtualvoidDisplay_Area()=0;

//

(2)定义圆类CCircle,公有继承CShape,定义私有数据成员半径doubler,有参构造函数,重写CShape类中的voidDisplay_Area()函数,显示圆面积;

//(3)定义长方形类CSqure,公有继承CShape,定义数据成员长和宽分别为doublelength和doublewidth,重写CShape类中的voidDisplay_Area()函数,显示长方形面积;

//(4)定义主函数,创建CShape类指针数组,分别指向圆和长方形对象,圆的半径为2,长方形的长和宽分别为3和4,显示圆和长方形的面积。

//(5)主函数参考代码;

//voidmain()

//{

//CShape*aa[2];

//aa[0]=newCCircle

(2);

//aa[1]=newCSqure(3,4);

//for(inti=0;

i<

2;

i++)

//aa[i]->

Display_Area();

//}

classCShape

virtualvoidDisplay_Area()=0;

classCCircle:

publicCShape

doubler;

CCircle(doublex)

r=x;

virtualvoidDisplay_Area()

classCSqure:

doublelength,width;

CSqure(doublea,doubleb)

length=a;

width=b;

矩形面积:

length*width<

CShape*aa[2];

aa[0]=newCCircle

(2);

aa[1]=newCSqure(3,4);

for(inti=0;

aa[i]->

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

定义复数类Complex,

(1)定义私有数据成员,实部和虚部;

(2)定义带默认值的构造函数,给数据成员赋值,默认值为0;

(3)定义输出函数voiddisplay(),输出格式如“3+4i”或“-3-4i”;

(4)定义复数与复数的加、减运算符重载;

复数加实数运算符重载;

赋值运算符重载;

(5)定义主函数,对上述成员函数进行测试。

classComplex

doublea,b;

Complex(doublea=0,doubleb=0)

a=a;

Complexoperator+(Complexc)

Complextemp;

Complexoperator-(Complexc)

Complexoperator+(doublec)

Complex&

operator=(Complexc)

return*this;

a<

i"

+"

intmain()

Complexc1(2,5),c2(3,7),c3,c4,c5,c6;

c1="

;

c2="

c3=c1+c2;

c3=c1+c2;

c3="

c4=c1-c2;

c4=c1-c2;

c4="

c5=c1+5;

c5=c1+5;

c5="

c6=c2;

c6=c2;

c6="

//定义时钟类Clock,

//

(1)定义私有数据成员,时、分和秒;

//

(2)定义带默认值的构造函数,给数据成员赋值,默认值为0;

要求对数据进行合法性判断,小时只能在0—23之间,分和秒都在0—60之间;

//(3)定义输出函数voiddisplay(),输出格式如“h:

m:

s”;

//(4)定义时钟前缀++运算符重载,和后缀++运算符重载;

//(5)定义主函数,对上述成员函数进行测试。

classClock

doubleh,m,s;

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

if(h>

=0&

h<

24&

m>

m<

60&

s>

s<

60)

this->

h=h;

m=m;

s=s;

timeerror!

:

Clock&

operator++()

s++;

if(s>

=60)

s=s-60;

m++;

if(m>

m=m-60;

h++;

if(h>

=24)

{

h=h-24;

}

return*this;

Clockoperator++(int)

s=s-6

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

当前位置:首页 > PPT模板 > 商务科技

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

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