首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。 【说明】 以下C++程序的功能是计算三角形、矩形和正方形的面积并输出。程序由4个类组成:类 Triangle、Rectangle和Square分别表示三角形、矩形和正方形:抽象类
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。 【说明】 以下C++程序的功能是计算三角形、矩形和正方形的面积并输出。程序由4个类组成:类 Triangle、Rectangle和Square分别表示三角形、矩形和正方形:抽象类
admin
2013-01-05
38
问题
阅读以下说明和C++代码,将应填入(n)处的字句写在对应栏内。
【说明】
以下C++程序的功能是计算三角形、矩形和正方形的面积并输出。程序由4个类组成:类 Triangle、Rectangle和Square分别表示三角形、矩形和正方形:抽象类Figure提供了一个纯虚函数getAxea(),作为计算上述3种图形面积的通用接口。
【C++代码】
#include<iostream>
#include<cmath>
using namespace std;
class Figure{
public:
virtual double getArea()=0;//纯虚函数
};
class Rectangle : (1) {
protected:
double height;
double width;
public:
Rectangle(){}
Rectangle(double height, double width){
this->height=height;
this->width=width;
}
double getArea(){
return (2);
}
};
class Square: (3) {
public:
Square(double width){
(4);
}
};
class Triangle: (5) {
private:
double la,lb,lc;
public:
Triangle(double la,double lb,double lc){
this->la=la;this->1b=1b;this->lc=lc;
}
double getArea(){
double s=(la+lb+lc)/2.0;
return sqrt(s*(s-la)*(s-lb)*(s-lc));
}
int main()
{
Figure *figures[3]={new Triangle(2,3,3),new Rectangle(5,8), new Square(5)};
for(int i=0;i<3;i++){
cout<<"figures["<<i<<"]area="<<(figures
)->getArea()<<endl;
}
return 0;
}
选项
答案
(1) public Figure (2) height *width (3) public Rectangle (4) height=this->width=width (5) public Figure
解析
根据题述“抽象类Figure提供了一个纯虚函数getArea(),作为计算上述3种图形面积的通用接口”,可知类Rectangle均应继承自类Figure,并实现其抽象方法getArea。故空(1)应填 public Figuare。
getArea方法是计算面积的,空(2)是返回该类的代表的图形面积。类Rectangle代表矩形,而矩形的面积的计算公式是长与宽的乘积,类Rectangle的成员变量height和width分别代表了长和宽,故空(2)应填height*width。
类Square按理应该继承自Figuare,但并未实现其抽象方法getArea,若继承自Figure则不能被实例化,而题中main函数中已将其实例化,不符合题意,因此不能继承自Figure。考虑到正方形其实就是长和宽相等的矩形,因此Square可从Rectangle继承,故空(3)应填public Rectangle。这样,计算面积仍用Rectangle的getArea方法,这就要求将height和width正确赋值,题中已将这两个成员变量声明为protected,因此这两个变量继承为子类的变量,故空(4)应填height=this->width=width。
空(5)同空(1),应填public Figure。
转载请注明原文地址:https://kaotiyun.com/show/aeDZ777K
本试题收录于:
软件设计师下午应用技术考试题库软考中级分类
0
软件设计师下午应用技术考试
软考中级
相关试题推荐
以下关于结构化开发方法的叙述中,不正确的是()。
针对下列程序段,对于(A,B,C)的取值,以下(56)测试用例组合能够满足语句覆盖的要求。IF((A+10)=2OR(B-20)<3)THENC=0IF((A+30)=10AND(C-30)<0)THENB=30
网络杀毒软件厂商已经开始使用数据库技术和LDAP技术进行策略日志存储和用户管理,这里LDAP指的是______。A.轻量目录访问协议B.本地目录访问协议C.轻量数据访问协议D.本地数据访问协议
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
下图是________________设计模式的类图,该设计模式的目的是________________,图中,Decorator和Component之间是________________关系,ConcreteDecorator和Decorator之间是_
对于逻辑表达式(bufc[i]>223&&bufc[i]<240&&i+2<totalbytes),需要______个测试用例才能完成条件组合覆盖。
一个程序的控制流图中有5个结点,8条边,在测试用例数最少的情况,确保程序中每个可执行语句至少执行一次所需要的测试用例数的上限是_______。
以下关于边界值分析法的叙述中,不正确的是
对文法G进行改写,然后对每个非终结符写出不带回溯的递归于程序。经改写后的文法是否是LL(1)的?指出它的预测分析表中(1)~(3)处的内容。
随机试题
案例20世纪末,美国有一个营长下达了这样一个命令:“明晚8点,哈雷彗星将在这个地区出现,这种情况每隔76年才能看到一次,命令所有士兵,身穿野战服到操场集合,我要向他们解释一个罕见现象。如果下雨的话,就到礼堂集合,我为他们放一个关于彗星的电影。”值班官员向
A.传出神经为到骨骼肌的Aα纤维B.传出神经为到骨骼肌的Aγ纤维C.传入纤维为C类纤维D.传入纤维为B类纤维完整动物的内脏疼痛反射
A.有妊高征病史B.突然剧烈腹痛C.阴道出血与休克成反比D.呼吸困难、咳嗽、发绀等呼吸衰竭状态E.子宫呈板状,胎心消失与重型胎盘早剥症状不相符的是
关于透明牙本质不正确的是()
房地产价格评估是指以房地产为对象,由专业建筑人员,根据估价目的,遵循估价原则,按照估价程序,选用适宜的估价方法,并在综合分析影响房地产价格因素的基础上,对房地产在估价时点的主观价格或价值进行估算和判定的活动。()
权属界址线发生变化时,有关当事人应当及时进行()测绘。
董事会应对监事会及高级管理层在压力测试管理中的履职情况进行监督评价。()
在某托儿所调查。早餐有20名儿童进餐、午餐有30名儿童进餐、晚餐有25名儿童进餐。请计算人日数。
企业社会责任是指企业在创造利润、对股东承担法律责任的同时,还要承担对员工、消费者、社区和环境的责任。企业的社会责任要求企业必须超越把利润作为唯一目标的传统理念,强调对社会的贡献。根据上述定义,下列不属于履行企业社会责任的行为是()。
Psychologistssaytherearetwodifferentkindsofloneliness.
最新回复
(
0
)