首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,要求编写一个CMyShape类,含有求面积求周长等纯虚函数。然后编写一个CMyRectangle类和CMyCircle类继承CMyShape,并实现求面积、求周长的两个函数。在main()i~数中测
使用VC6打开考生文件夹下的源程序文件modi3.cpp,要求编写一个CMyShape类,含有求面积求周长等纯虚函数。然后编写一个CMyRectangle类和CMyCircle类继承CMyShape,并实现求面积、求周长的两个函数。在main()i~数中测
admin
2017-09-20
75
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,要求编写一个CMyShape类,含有求面积求周长等纯虚函数。然后编写一个CMyRectangle类和CMyCircle类继承CMyShape,并实现求面积、求周长的两个函数。在main()i~数中测试得到下面的结果:
在CMyShape类构函数造内
在CMyCircle类构造函数内
在CMyShape类构造函数内
在CMyRectangle类构造函数内
myCircle:Area=3 14.1 59 Girth=62.83 19
myRectangle:Area==900 Girth==120
具体要求如下:
(1)定义求面积纯虚函数,请在注释∥********1********之处添加适当的语句。
(2)定义求周长纯虚函数,请在注释∥********2********之处添加适当的语句。
(3)请在注释∥********3********和∥********4********之处添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
#define PI 3.1415926
clas S CMyPoint
{
public:
int x,y;
CMyPoint(int tx,int ty):
X(tx),Y(ty)f}
};
class CMyShape
{
public:
CMyShape(){cout<<“在CMyShape类构造函数内”<
∥********1********
∥********2********
protected:
};
class CMyCircle:public CmyShape
{
public:
CMyCircle(CMyPoint i,double
j):CMyShape(),arcCenter(i),
radius(j){
cout<<“在CMyCircle类构造函数内”<
}
double GetArea()
{
return PI*radius*radius ;
}
double GetGirth()
{
return 2*PI*radius;
}
private:
CMyPoint arcCenter;
double radius;
};
class CMyRectangle:public
CmyShape
{
public:
CMyRectangle(CMyPoint
it,CMyPoint rb):leftTop(it),
rightBottom(rb),CMyShape(){
cout<<“在CMyRectangle类构造函数内”<
}
Double GetArea()
{
Int width=abS
(rightBottom.x—leftTop.x);
int height=abs
(rightBottom.y—leftTop.y);
Return width*height;
}
double GetGirth()
{
int width=abS
(rightB0ttom.X—leftTop.x);
int height=abs
(rightBottom.y—leftTop.y);
return 2*(width+height);
}
private:
CMyPoint leftTop,rightBottom;
};
void main()
{
CMyShape *myShape=NULL;
CMyCircle *myCircle=new
CMyCircle(CMyPoint(5,5),10);
CMyRectangle*myRectangle=
new CMyRectangle(CMyPoint(0,0),CMyPoint(30,30));
∥********3********
cout<<“myCi rcle:”<<“Area=”
<
GetArea()<<“\t”
<<“Girth=”<
GetGirth()<
∥********4********
cout<<”myRectangle:”<<”Are a=“<
GetArea()<<“\t,,
<<“Girth=”<
GetGirth()<
}
选项
答案
(1)添加语句:virtual double GetArea()=0; (2)添加语句:virtual double GetGirth()=0; (3)添加语句:myshape=mycircle; (4)添加语句:myshape=myRectanqle;
解析
类CMyPoint含有成员变量x和y,抽象基类CMyShape含有两个虚函数GetArea0和GetGirth0,分别用来求图形的面积和周长。类CMyRectangle和类CMyCircle派生于类CMyShape,并都实现了抽象父类的纯虚函数,通过这两个函数可分别求得矩形的面积和周长以及圆的面积和周长。
转载请注明原文地址:https://kaotiyun.com/show/pUAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
对于常数据成员,下面描述正确的是
下列关于软件设计基本原理的叙述中错误的是
将7个数据进行插入排序,在最坏情况下需要比较的次数是
在MyClass类的定义中,对赋值运算符;进行重载。请将横线处缺失的部分补充完整。______MyClass::operator=(constMyClass&rhs){if(this==&rhs)return*t
下列有关内联函数的叙述中,正确的是()。
下列情况中,不会调用拷贝构造函数的是()。
C++语言本身没有定义I/O操作,但I/O操作包含在C++实现中。C++标准库iostream提供了基本的I/O类。I/O操作分别由两个类istream和()提供。
下列函数中,()是对文件进行写操作的。
随机试题
下列哪些可见于肺炎链球菌肺炎患者
男性40岁,1周前干咳左胸痛,近2日来,畏寒发热38.8℃,气急乏力。体检:心率94次/分,律齐,左胸廓饱满,呼吸运动减弱,左下叩之浊音至实音,语颤减低,呼吸音明显减低。经检查诊断明确后,所给予的下列治疗中哪一项是错误的
患者,女,26岁。产后18小时,突然发生阴道大量出血,色鲜红,头晕目花,心悸怔忡,肢冷汗出,面色苍白;舌淡,脉虚数。下列有关该病的西医治法,说法错误的是
丁公司欠甲公司100万元。2005年10月,甲公司与丙公司签订协议,约定甲公司对丁公司的100万元债权由丙公司享有,但未通知丁公司。同年12月,丙公司向法院起诉丁公司要求归还欠款,有关该案的表达正确的是:()
项目风险的分解途径不包括()。
民用住宅楼梯的坡度范围,宜在()之间。
在临时用地指标中,要求平面布置合理、紧凑,在满足环境、职业健康与安全及文明施工要求的前提下尽可能减少废弃地和死角,临时设施占地面积有效利用率大于()。
简述蒙古统一与元朝建立的经过。
(),对公安工作和队伍建设提出了新的挑战,公安工作和公安队伍建设存在的突出问题迫切需要抓紧解决,这是当前加强正规化建设、明确现阶段新的管理标准的出发点和立足点。
Standingupstraightandkeepingyourbodycenteredmayseemlikesecondnaturetomostofus.Butforpeoplewithbalancedisor
最新回复
(
0
)