首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。其中有类Point(“点”)、Rectangle(“矩形”)和Circle(“圆”)的定义。在程序所使用的平面坐标系统中,χ轴的正方向是水平向右的,y轴的正方向是竖直向下的。请在横线
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。其中有类Point(“点”)、Rectangle(“矩形”)和Circle(“圆”)的定义。在程序所使用的平面坐标系统中,χ轴的正方向是水平向右的,y轴的正方向是竖直向下的。请在横线
admin
2017-02-21
75
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2。其中有类Point(“点”)、Rectangle(“矩形”)和Circle(“圆”)的定义。在程序所使用的平面坐标系统中,χ轴的正方向是水平向右的,y轴的正方向是竖直向下的。请在横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应该是:
一一圆形————
圆心=(3,2)
半径=1
面积=3.14159
——外切矩形————
左上角=(2,1)
右下角=(4,3)
面积 =4
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include<instream<
#include<cmath<
uslrig namespace std;
//平面坐标中的点
//本题坐标系统中,x轴的正方向水平向右,y轴的正方向竖直向下。
class Point {
public:
Point(double x=0.0,double
y=0.0):x_(x),y_(y) { }
double getX()const{return x_;}
double getY() const { return y_;)
void setX(double x){x_=x;}
void setY(double y){y_=y;}
private:
double x_; //x坐标
double y_;//y坐标
},
//矩形
class Rectangle{
public:
Rectangle(Point P,int w,int h)
:point(P),width(w),height(h){}
double area()const//矩形面积
{
return width * height;
}
Point topLeft()const//左上角顶点
{
return point;
}
Point bottomRight()const
//右下角顶点(注:y轴正方向竖直向下)
{
//**********found**********
return Point(_______);
}
private:
Point point;//左上角顶点
double width;//水平边长度
double height;//垂直边长度
};
//}圆形
class Circle{
public:
Circle(Point P,double r):
center(p),radius(r){}
Rectangle boundingB0x ( )
const;
//外切矩形
double aEea()const//圆形面积
{
//*********found*********
return PI *_______;}
public:
static const double PI;//圆周率
private:
Point center; //圆心
double radius; //半径
},
const double Circle∷PI=3.14159;
Rectangle Circle∷boundingBox
()const
{
//*********found*********
Point pt(_______);int w,h;
//*********found*********
w=h=_______;
return Rectangle(pt,w,h);
}
int main()
{
Point P(3,2);
Circle c(p,1);
cout<<"——圆形————-\n";
cout<<"圆心=("<<p.getX() <<’,’<<P.getY() <<")\n";
cout<<"半径=" <<1 <<
end1;
cout<<"面积="<<c.area()<<end1<<end1;
Rectangle bb=c.boundingBox();
Point t1=bb.topLeft();
Point br=bb.bottomRight();
cout<<"——外切矩形————-\n";
cout<<"左上角=("<<t1.getX
()<<’,’<<t1.getY()<<")\n";
cout<<"右下角=("<<br.
getX() <<’,’<<br.getY() <<")\n";
cout<<"面积="<<bb.area()
<<end1;
return 0;
}
选项
答案
(1)point.getX()+width,point.getY()+height (2)radius * radius (3)center.getX()-radius,center.getY()-radius (4)2 * radius
解析
(1)主要考查考生对成员函数的掌握,程序要求返回右下角顶点,该点的x坐标为左上角顶点的x坐标加上width,该点的y坐标为左上角顶点y坐标加上height,即return Point(point.getX()+width,point.getY()+height);。
(2)主要考查考生对成员函数的掌握,程序要求计算圆形面积,也就是返回圆面积,即return PI * radius * radius;。
(3)主要考查考生对成员函数的掌握,首先看函数声明:Rectangle Circle∷boundingBox()const,可知该函数要返回的是一个Rectangle类型,即要返回的是圆的外切矩形。再看Rectangle类的构造函数Rectangle(Point P,int W,int h),由此可知,空格处要定义的点pt为左上角点,即Point pt(center.getX()-radius,center.getY()-radius);。
(4)由函数声明和Rectangle类的构造函数可知,W和h应该为直径,即w=h=2 * radius;。
转载请注明原文地址:https://www.kaotiyun.com/show/5BAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的
程序的结果为【】。#include"iostream.h"template<typenameT>Ttotal(T*data){Ts=0;wh
若有说明语句chara[]="Itismine";char*p="Itismille";则以下不正确的叙述是()。
在不同文件的函数中,对非静态全局变量的引用要加的关键字是()。
下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是
语句ofstreamf("DATA.DAT",ios_base::app|ios_base::binary);的功能是建立流对象f,并试图打开文件DATA.DAT并与之连接,而且
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
以下数据结构中不属于线性数据结构的是
若有以下定义和语句 int a=4,b=3,*p, *q, *w; p=&a; q=&b; w=q; q=NULL; 则以下选项中错误的语句是
下列选项中合法的用户标识符是( )。
随机试题
简述新收订单与经济行情的关系
何技师在完成活动义齿整铸支架蜡型制作、包埋、焙烧后,欲进行铸造。以下哪些因素可能导致铸件出现冷热裂纹A.铸型冷却方式不合理B.熔金温度过高C.铸造压力过大D.铸型强度过大E.铸件厚薄不一
局部刺激病因不明,可能由多种因素引起
目前的火灾探测器按结构可分为哪些类型?对施工检测器具的选用应遵循哪些原则?
【背景资料】某高速公路穿越某旅游景区,其中K49+020—K19+530段原设计为填高10~20m的路堤,并需借土填方。建设单位要求施工单位加强环境保护,做到文明施工。因该地区申报4A级旅游景区,为保护该区域环境地貌,决定取消取土场。经相关各方协商,决
依法批准开工报告的建设工程,建设单位应当自开工报告批准之日起()日内,将保证安全施工的措施报送建设工程所在地的县级以上人民政府建设行政主管部门或者其他有关部门备案。
()的形成是人最初的社会稳定交往的开始。
简述sternberg的智力三因素理论。
论说文:根据下述材料,写一篇700字左右的论说文,题目自拟。杰克是一个嗜酒如命的人,后来因杀人罪而被判终身监禁。他有两个儿子,年龄相差才一岁,大儿子与他老爸一样有很重的毒瘾,靠偷窃和勒索为生,日前他因杀人罪而坐监。小儿子却担任一家大企业的分公司经
在当前文件夹中有一个名为“mytile.txt”的文本文件,其中有若干行文本。窗体中有如下事件过程:PrirateSubCommand1_Click()Dimch$.asciiAsIntegerOpen"myfile
最新回复
(
0
)