首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
打开考生文件夹下的解决方案文件proj2,此项目包含程序文件main.cpp,其中有类Graphics(“图形”)、lsocelesTriangles(“等腰三角形”)、Parallelogram(“平行四边形”)的定义和主函数main的定义。请在程序中的
打开考生文件夹下的解决方案文件proj2,此项目包含程序文件main.cpp,其中有类Graphics(“图形”)、lsocelesTriangles(“等腰三角形”)、Parallelogram(“平行四边形”)的定义和主函数main的定义。请在程序中的
admin
2020-12-21
34
问题
打开考生文件夹下的解决方案文件proj2,此项目包含程序文件main.cpp,其中有类Graphics(“图形”)、lsocelesTriangles(“等腰三角形”)、Parallelogram(“平行四边形”)的定义和主函数main的定义。请在程序中的横线处填写适当的代码,然后删除横线,以实现上述定义。
此程序的正确输出结果应为:
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不能删除或移动“//*******
found*******”。
#include
#include
using namespace std;
class Graphics//图形类
{
public:
Graphics(int e):edges(e){}
//*******found*******
protected:
int edges;
};
elasS IsocelesTriangles:public Graphics//等腰三角形类
{
public:
IsocelesTriangles(int x):Graphics(x){}
void Draw();
};
void lsocelesTrimlgles::Draw()
int i,j;
if(edges<=0)
cout<<“errors”<<endl;
if(edges>0)
{
for(i=0;i<edges;i++)
{
for(j=0;j<edges-i;j++)
tout<<setw(2)<<’’;
//*****found*****
for(j=0; ________;j++)//输出每行的*号
cout<<setw(2)<<‘*’;
cout<<endl;
}
}
cout<<endl;
}
//*********found*********
________//平行四边形类
{
public:
Parallelogram(int x):Graphics(x){}
void Draw();
};
void Parallelogram::Draw()
{
int i,j;
if(edges<=0)
cout<<“erros”<<endl;
if(edges>0)
}
for(i=0;i<edges;i++)
{
//*****found*****
for(j=O; ________;j++)//输出前导空格
cout<<setw(2)<<’’;
for(j=0;j<edges;j++)
cout<<setw(2)<<‘*’;
cout<<endl;
}
}
}
cout<<endl;
}
int main()
{
Graphics*objs[2];
objs [0]=new IsocelesTriangles(6);
objs[1]=new Parallelogram(6);
for(int i=0;i<2;i++)
objs
->Draw();
delete objs[0];
delete objs[1];
return 0;
}
选项
答案
(1)virtual void Draw()=0; (2)j<2*i+l (3)class Parallelogram:public Graphics
解析
题意中,Graphics是基类,lsoeelesTriangles和Parallelogram是Graphics的派生类。main函数中定义成员Graphics指针类犁的数组objs.它包含两个元素,分别是IsoeelesTriangles和Parallelogram对象的地址,所以在for循环中,通过Graphics指针调用虚函数Draw。(1)由于程序中没有给出Graphics的成员函数Draw的定义,所以需要定义为纯虚函数。(2)根据输出可知,等腰三角形的Draw中,每行先输出空格,后输出*,每行的空格数量为edges-i,*号的数量为行号的2倍加1,即2 * i+l。(3)平行四边形和等腰三角形一样,公有继承于Graphics。(4)从题意输出可知,平行四边形的Draw函数也是先输出空格,后输出*,其中每行前导空格的数量分别为5,4,3,2,1,0,*的数量为edges个。
转载请注明原文地址:https://kaotiyun.com/show/7Zyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下述静态数据成员的特征中,错误的是()。
类MyClass的定义如下,若要对value赋值,则下面语句正确的是()。classMyClass{public:MyClass0{}MyClass(inti){value=newint(i)
下列叙述中,正确的是()。
在定义一个类模板时,模板形参表是用一对括号括起来的,所采用的括号是
在下列关键字中,不能用来表示继承方式的是
已知outfile是一个输出流对象,要想将outfile的文件指针定位到当前位置之前321字节处,正确的函数调用语句是
Sample是一个类,执行下面语句后,调用Sample类的构造函数的次数是Samplea[2],*P=newSample;
建立一个类对象时,系统自动调用
已知类MyClass声明如下:classMyClass{intn;public:MyClass(intk):n(k){}intgetValue()const{returnn;}};在下列数组定义中正确的是
下列选项中不属于软件生命周期开发阶段任务的是
随机试题
女,70岁。服用氟桂利嗪3个月后出现动作徐缓,僵硬,手部震颤,跌倒一次。美多巴治疗无效。查体:智能正常,面具脸,四肢肌力正常,肌张力高。最可能的诊断是()
女性患者,28岁,1年前曾因双眼视力减退,震颤,双下肢麻木,大小便潴留就诊,经激素治疗好转,近1周来又出现步态不稳,共济失调。为明确诊断,应首先检查的项目是
一起因侵权行为引起的索赔案件中,原告主张被告侵权应赔偿其经济损失1万元。原告提出以下证据:(1)原告身上的伤痕;(2)被撞坏的电脑一部;(3)邻居赵某证明原告与被告关系一直不和;(4)医院证明原告因治疗花费2000元。以下对这些证据的分析中不正确
施工图预算对发包人的作用包括()。
全面结算会员期货公司应建立并执行对非结算会员的()制度。
对于借款人尚存在一定的偿还能力,或是银行掌握部分第二还款来源时,银行可尝试通过()等手段进行处置。
顾客对某项产品所感知到的效用或利益与其期望值相比较的结果称为()。
坚持人民主体地位,体现了党的根本宗旨和执政理念。这里的“人民主体地位”的内容包括()。 ①财富创造主体与成果享受主体 ②国家管理主体与权力监督主体 ③社会实践主体与制度创新主体
①这不仅表明了工业社会对于文化生产的接管、改造和重新规划,而且,技术的意义开始占据前所未有的份额②电影的诞生是技术介入艺术的里程碑事件③技术始终是文化生产的组成部分④尽管如此,技术从未扮演艺术的主角⑤庄子、杜甫、苏东
Whatawasteofmoney!Inreturnforanaverageof£44,000ofdebt,studentsgetanaverageofonly14hoursoflectureandtuto
最新回复
(
0
)