首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的工程test21_3,此工程包含一个源程序文件test21_3.cpp,其中定义了用于表示长方形的类CRectangle,但类CRectangle的定义并不完整。请按要求完成下列操作,将类CRectangle的定义补充完整。
使用VC6打开考生文件夹下的工程test21_3,此工程包含一个源程序文件test21_3.cpp,其中定义了用于表示长方形的类CRectangle,但类CRectangle的定义并不完整。请按要求完成下列操作,将类CRectangle的定义补充完整。
admin
2010-02-08
20
问题
使用VC6打开考生文件夹下的工程test21_3,此工程包含一个源程序文件test21_3.cpp,其中定义了用于表示长方形的类CRectangle,但类CRectangle的定义并不完整。请按要求完成下列操作,将类CRectangle的定义补充完整。
(1)定义CRectangle的构造函数,函数含参数dx,dy,da和db,它们都是double型的数据,请将类数据成员x,y, a和b初始化,并输出“CRectangle Constructed.”(另起一行输出该文字)。请在注释“//**1**之后添加适当的语句。
(2)完成类CRectangle的成员函数getperimeter()的定义,将以a和b为边的矩形周长的值返回,请在注释“//**2**”之后添加适当的语句。
(3)完成类CRectangle的成员函数getarea()的定义,将以a和b为边的矩形面积的值返回,请在注释“//**3**”之后添加适当的语句。
(4)完成类CRectangle的友元函数friend double dist(CRectangle& rt)的定义,先定义两个double型的临时变量tx和ty,然后将参数对象rt的数据成员x与a的一半相加,y与b的一半相加,分别赋值给tx和ty,最后求出tx与ty的平方和的值之后将它的平方根返回,将请在注释“//**4**”之后添加适当的语句。
输出结果如下:
CRectangle Constructed.
Down_Left corner point is:(100,50)
a=1200,b=700
Perimeter of this rectangle is:3800
Area of this rectangle is:840000
The Distance is:806.226
CRectangle Constructed.
Down_Left corner point is:(200,150)
a=2000,b=800
Perimeter of this rectangle is:5600
Area of this rectangle is:1.6e+006
The Distance is:1320.04
CRectangle Destructed.
CRectangle Destructed.
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test21_3.cpp清单如下:
#include<iostream.h>
#include<math.h>
class CRectangle
{
private:
double x;
double y;
double a;
double b;
public:
CRectangle()
{
cout<<"\nCRectangle Constructed."<<endl;
}
CRectangle(double dx, double dy, double da, double db)
{
//**1**
a=da;
b=db;
cout<<"\nCRectangle Constructed."<<endl;
}
~CRectangle ( )
{
cout<<"CRectangle Destructed."<<endl;
}
void putxy(double dx, double dy){ x=dx; y=dy;}
void putab(double da, double db)( a=da; b=db;}
double getx(){ return x;}
double gety(){ return y;}
double geta(){ return a;}
double getb(){ return b;}
double getperimeter()
{
//**2**
}
double getarea()
{
//**3**
}
friend double dist(CRectangle& rt);
};
double dist(CRectangle& rt)
{
//**4**
ty=rt.y+rt.b/2.0;
return sqrt(tx*tx+ty*ty);
}
void main()
{
CRectangle rect;
rect.putxy(100.0, 50.0);
rect.putab(1200.0, 700.0);
cout<<"Down_Left corner point is: ("<<rect.getx() <<", "<<rect.gety()<<")" <<endl;
cout<<"a= "<<rect.geta()<<", b="<<rect.getb() <<endl;
cout<<"Perimeter of this rectangle is: "<<rect.getperimeter()<<endl;
cout<<"Area of this rectangle is:"<<rect.getarea()<<endl;
cout<<"The Distance is:"<<dist(rect)<<endl;
CRectangle recta(200,150,2000,800);
cout<<"Down_Left corner point is:("<<recta.getx()<<","<<recta.gety()<<")"<<endl;
cout<<"a="<<recta.geta()<<", b="<<recta.getb()<<endl;
cout<<"Perimeter of this rectangle is: "<<recta.getperimeter()<<endl;
cout<<"Area of this rectangle is: "<<recta.getarea()<<endl;
cout<<"The Distance is :"<<dist(recta)<<endl;
}
选项
答案
(1) x=dx; y=dy; (2) return2*(a+b); (3) return a*b; (4) double tx,ty; tx=rt.x+rt.a/2.0;
解析
本题主要考查考生对于类的定义和友元函数的定义的理解。注意(4)中使用了求开平方的数学函数sqrt。
转载请注明原文地址:https://kaotiyun.com/show/N7ID777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列关于听觉现象的说法,不正确的是
卡方检验要求每个单元格的理论次数不得小于5,如果小于5应该采用以下的哪些处理办法?()
次数分布有两个基本特点,分别是()
夸美纽斯有关的教育学说,可称为()
以下有关教育心理学家与其理论的搭配,不正确的一项是()
我们的学校只是专断文化的宣讲所,是统治文化的再生产工厂,这种观点是
我国以私有制为基础的完全意义上的税收制度正式确定的标志是()。
简述法律关系的定义和特征。
函数f(x)=x2一ax+b在[1,3]上的最大值与最小值的差为1。(1)a=4;(2)a=一4。
(2017年第3题)某企业投资汽车生产,生产一辆汽车所耗费的生产资料价值为15万元、支付给工人的工资为5万元,假定市场的平均利润率为10%,那么,在自由竞争条件下,该汽车的生产价格是
随机试题
某地引进新的杂交水稻品种,今年每亩稻谷产量比上年增加了20%,且由于口感改善,每斤稻谷的售价从1.5元提升到1.65元。以此计算,今年每亩稻谷的销售收入比上年高660元。问:今年的稻谷亩产是多少斤?
甲状腺激素分泌过多时可引起升高的是
患者,李某,遭遇车祸,为排除T7椎体骨折来放射科胸椎正位X线片,下列体位中正确的是
女,60岁,肥胖。绝经9年,不规则阴道流血3周。既往高血压病史10年,药物维持治疗;子宫肌瘤病史6年。妇科检查:子宫如孕8周大小,稍软,轻压痛。B超检查:子宫内膜厚而不规则。该患者最可能的诊断是()
公司信贷可分为固定资产贷款、并购贷款、流动资金贷款、项目融资和房地产贷款,这种分类的依据是()
某企业在选择股利政策时,以代理成本和外部融资成本之和最小化为标准。该企业所依据的股利理论是( )。
非公司制国有独资企业或国有独资有限责任公司,以其部分资产与他人纽建新公司,对新设公司承受该国有独资企业(公司)的土地、房屋权属,免征契税。()
五子棋在日本叫“连珠棋”。据日本史料记载,五子棋先由中国传到朝鲜,再由朝鲜传到日本。最初主要在皇宫和贵族大家庭中流行。经过不断的改变,主要是规则的变化,连珠五子棋逐渐复杂化、规范化,最终成为今天的职业连珠五子棋,同时也成为一种国际比赛项目。根据这
有一种互联设备工作于网络层,它既可以用于相同(或相似)网络间的互联,也可以用于异构网络间的互联,这种设备是______。
A、Sheneedstochangearoommate.B、Sheisangrywiththetimechange.C、Herroommatecan’tcometothemeeting.D、Herroommate
最新回复
(
0
)