首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有坐标点类point、线段类Line和三角形类Triangle的定义,还有main函数的定义。程序中两点间距离的计算是按公式d=实现的,
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有坐标点类point、线段类Line和三角形类Triangle的定义,还有main函数的定义。程序中两点间距离的计算是按公式d=实现的,
admin
2019-05-22
32
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有坐标点类point、线段类Line和三角形类Triangle的定义,还有main函数的定义。程序中两点间距离的计算是按公式d=
实现的,三角形面积的计算是按公式f=
实现的,其中s=
。请在程序中的横线处填写适当的代码,然后删除横线,以实现上述类定义。此程序的正确输出结果应为:
side1:9.43398
Side2:5
Side3:8
area:20
注意:只在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include<iostream>
#include<cmath>
using namespace std;
class Point{//坐标点类
public:
const doublex,y;
Point(double x=0.0,double y=0.0):x(x),y(y){}
//**********found*********
double distanceTo(_______)
const{
//到指定点的距离
return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));
}
};
class Line{//线段类
public:
const Point p1,p2;//线段的两个端点
//**********found**********
Line(Point p1,Point p2):______________{}
double length()const{return p1.distanceTo(p2);}//线段的长度
};
class Triangle{//=角形类
public:
const Point p1,p2,p3;//三角形的三个顶点
//**********found**********
Triangle(______________):p1(p1),p2(p2),p3(p3){}
double length1()const{//边p1,p2的长度
return Line(p1,p2).length();
}
double length2()const{//边p2,p3的长度
return Line(p2,p3).length();
}
double length3()const{//边p3,p1的长度
return Line(p3,p1).length();
}
double area()const{//三角形面积
//**********found**********
double s=______________;
return sqrt(s*(s-lengthl())*(s-length2())*(s-length3()));
}
};
int main(){
Triangle r(Point(0.0,8.0),Point(5.0,0.0),Point(0.0,0.O));
cout<<"Side1:"<<r.length1()<<endl;
cout<<"Side2:"<<r.lngth2()<<endl;
cout<<"Side3:"<<r.length3()<<endl;
cout<<"area:"<<r.area()<<endl;
return0;
}
选项
答案
(1)const Point&p (2)p1(p1),p2(p2) (3)Point p1,Point p2,Point p3 (4)(length1()+length2()+length3())/2
解析
主要考查的是坐标点类Point类、线段类Line类和三角形类Triangle类,其中涉及构造函数和const函数。构造函数的成员列表初始化是最常考查的知识点,定义函数的参数时要注意观察函数体及函数的注释,理解该函数的功能。
(1)主要考查考生对函数形参的掌握,由函数的注释可知有本坐标点到达某个坐标点类的距离,再根据函数体return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));可知,该坐标点类名为p,因此可以知道形参为Point&p,为了不改变该坐标点的值,前面要加上const。
(2)主要考查考生对构造函数的掌握,对于常变量型私有成员const Point p1,p2,只能用成员初始化列表进行赋值。
(3)主要考查考生对构造函数的掌握,由空格后面的语句:p1(p1),p2(p2),p3(p3){}可知,该构造函数需要进行成员列表初始化,再看类的私有成员const Point p1,p2,p3,可知p1,p2,p3是Point类型,因此形参为Point p1,Point p2,Point p3。
(4)主要考查考生对成员函数的掌握,根据函数注释,可知本函数要求计算三角形面积,再看题目的提示:s=(a+b+c)/2。可知空格处要填的是三角形的三条边之和除以2,而求边长的函数已经给出,这里直接调用即可。
转载请注明原文地址:https://jikaoti.com/ti/JkA0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 B所谓函数重载是指同一函数名可以对应多个函数实现。进行函数重载时,要求同名函数在参数个数上不同,或者参数类型上不同。
A、 B、 C、 D、 B拷贝构造函数是一个特殊的构造函数,它用一个已知的对象初始化一个正在创建的同类对象,它的一般格式是:类名::类名(cons类名&引用对象名)。当一个类的对象赋值给该类的另一个对象时,是
A、 B、 C、 D、 B此题考查的是虚函数的概念。在成员函数的声明前面加上virtual关键字,即可把函数声明为虚函数。虚函数可以是另一个函数的友元函数而不能是静态成员函数。
A、 B、 C、 D、 B对二叉树的前序遍历是指:先访问根结点。然后访问左子树,最后访问右子树,并且,在访问左、右子树时。先访问根结点,再依次访问其左、右子树。
A、 B、 C、 D、 A线性表、栈、队列和双向链表都是典型的线性结构;而二叉树是典型的非线性结构。【知识拓展】什么是线性结构?有3个衡量标准:①有且只有一个根结点;②每个结点最多有一个前件(直接前驱),也
A、 B、 C、 D、 C线性结构,是指数据元素只有一个直接前件元素和直接后件元素。线性表是线性结构。栈和队列是指对插入和删除操作有特殊要求的线性表,树是非线性结构。
有如下程序:#include<iostream>usingnamespacestd;intmain(){charstr[100],*P;cout<<"pleaseinputastring:
有如下程序:#include<iostream>usingnamespacestd;classtest{private:inta;public:test(){cout<<"c
要利用C++流实现输入输出的各种格式控制,必须在程序中包含的头文件是()。A)fstreamB)istrearaC)ostreamD)iomanip
随机试题
a.asetofinternationalrulesforinterpretationoftradetermsb.righttothepossessionofapositionorpropertyc.gettin
下列说法错误的是()。
与一般工业产品相比,建设产品的生产具有()等特点。
行政区划是国家结构体系的反映,在统一的行政区划结构体系中,地方行政单位之间上下级的从属关系构成一个国家的()。
甲公司排污致使周围鱼塘中的鱼苗大面积死亡,市环保局对甲公司处以罚款,甲公司不服该处罚决定。向人民法院提起行政诉讼。甲公司向法庭提交了其排放污水的日常监测记录表,以证明符合国家规定的排污标准;市环保局向法庭提交了对周围鱼塘进行调查时拍摄的录音、录像资料。下列
虚拟人力资源管理是指以合作关系为基础,充分利用现代信息网络技术,帮助企业获取、发展和筹划智力和劳力资本的一种人力资源管理办法,它可以满足企业管理虚拟化发展的要求,将大量的人力资源管理活动外部化或由员工实现自主管理。企业从而可以将主要精力放在核心人力资源管理
合理化防御指为了替自己的行为提供解释而给出某些看似合理但并不真实的理由。下列属于合理化防御的是()。
泰勒科学管理思想的核心观点是()。
甲、乙双方约定:甲公司租乙公司的建筑设备,但乙方所附条件是:若到年底上述设备有富余。合同中的这一条件约定在民事法律行为理论上称为______。
下面是关于Pentium微处理器中GDT(全局描述符表),LDT(局部描述符表),IDT(中断描述符表)以及TSS(任务状态段)的叙述Ⅰ.GPT存放系统内每一个任务都有可以访问的描述符,包括段描述符、LDT和TSS描述符,以及调用门和任务门描述符
最新回复
(
0
)