首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用“答题”菜单或使用VC6打开考生文件夹proj2下的工程proj2,此丁程包含程序文件main.cpp,其中有类Graphics(“图形”)、Squares(“正方形”)、Diamods(“菱形”)的定义和主函数main的定义。请在程序中的横线处填写
请使用“答题”菜单或使用VC6打开考生文件夹proj2下的工程proj2,此丁程包含程序文件main.cpp,其中有类Graphics(“图形”)、Squares(“正方形”)、Diamods(“菱形”)的定义和主函数main的定义。请在程序中的横线处填写
admin
2016-08-19
13
问题
请使用“答题”菜单或使用VC6打开考生文件夹proj2下的工程proj2,此丁程包含程序文件main.cpp,其中有类Graphics(“图形”)、Squares(“正方形”)、Diamods(“菱形”)的定义和主函数main的定义。请在程序中的横线处填写适当的代码,然后删除横线,以实现上述定义。例如,当输入数值3时,程序分别输出边长为3的菱形和正方形,即此程序的正确输出结果应为:
*
***
****
***
*
***
***
***
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不能删除或移动”//**********found**********”。
1 #include
2 {}include
3 using namespace std;
4 class Graphics //图形类
5 {
6 public:
7 Graphics(int e):edges(e)(}
8 //**********found**********
9 ______;
10 protected:
11 int edges;
12 };
13 class Squares:public Graphics//正方形类
14 {
15 public:
16 Squares(int x):Graphics(x){)
17 void Draw();
18 };
19 void Squares::Draw()
20 {
21 int i,j;
22 if(edges<=0)
23 cout<<"errors"<
24 if(edges>0)
25 {
26 for(i=0;i
27 f
28 for(j=0;J
29 cout<
30 cout<
31 }
32 }
33 }
34 //**********found**********
35 ______ //菱形类
36 {
37 publiC:
38 Diamonds(int x):Graphics(x){}
39 void Draw();
40 };
41 void Diamonds::Draw()
42 {
43 int i,j;
44 if(edges<=0)
45 cout<<"errors"<
46 if(edges>0)
47 {
48 for(i=0;i
49 {
50 cout<
51 //**********found**********
52 _______
53 cout<<’*’;
54 cout<
55 }//**********found**********
51 //输出菱形的下半部分
52
53 {
54 cout<
55 for(j=0;j<=2*(i-1);j++)
56 cout<<’*’;
57 cout<
58 }
59 }
60 }
61 int main()
62 {
63 int e;
64 cout<<"请输入表示边长的整数:";
65 cin>>e;
66 Graphics*objs[2];
67 objs[0]=new Diamonds(e);
68 objs[1]=new Squares(e);
69 for(int i=0;i<2 ; i++)
70 objs
->Draw();
71 delete objs[0];
72 delete objs[1];
73 return 0;
74 }
选项
答案
(1)virtual void Draw()=0 (2)class Diamonds:public Graphics (3)for(j=0;j<2*i+1;j++) (4)for(i=edges;i>0;i--)
解析
(1)由于Graphic的子类都使用了Draw()成员函数,并且都有自己各自不同的实现,很容易发现类中成员多态的特性,类的多态是使用虚函数来实现的。
(2)Diamonds的成员函数Draw()中使用了edges。但是类Diamonds中没有该成员,而Graphic中有此成员,可知该类公有继承了Graphic。
(3)根据图形的变化可知第一行1个*,第二行3个*,第三行5个*,增长的规律是2*i+l,因而可以很容易得出结果。
(4)菱形的下半部分是由5个*开始递减的,即从最大边递减,直到为0,可以得出答案。
转载请注明原文地址:https://jikaoti.com/ti/v7E0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序段的运行结果是voidmain(){intt,a,b,c;a=1;b=2;C=2;while(a<b<c){t=a;a=b;b=t;c--;}cout<<a
与成员访问表达式p→name等价的表达式是【】。
在一个容量为10的循环队列中,若头指针为6,尾指针为1,则此时该循环队列中共有的元素个数为()。
下列叙述中正确的是______.
在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是______.
下面描述中,符合结构化程序设计风格的是______.
下列运算符中不能在C++中重载的是
在iosbase类中定义了3个用于文件流定位的枚举常量,下列枚举常量不属于此类的是()。
以下运算符中不能重载的运算符是
随机试题
下列关于PPT文稿的目录的说法中,错误的是()
求过点(1,2,3)且垂直于直线的平面方程.
慢性再生障碍贫血治疗的首选措施是()。
对于绝热材料及制品国家标准的界定表述正确的是()。
某鞭炮厂(增值税一般纳税人)用外购已税的焰火继续加工高档焰火。2012年10月销售高档焰火,开具增值税专用发票注明销售额1000万元;本月外购焰火400万元,取得增值税专用发票,月初库存外购焰火60万元,月末库存外购焰火50万元,相关发票当月已认证,下列说
某房地产行业杂志对读者进行了一次有奖问卷调查,目的是评估当前人们对房地产行业前景的乐观程度。调查结果表明,75%的读者对于房地产行业前景表示乐观,有20%的读者表示中立,该杂志因此得出结论,目前社会群众对房地产行业的前景乐观。以下哪项如果为真,则
朱熹把教育分为小学和大学两个阶段,其中大学以()
有以下程序structS{inta;intb;};main(){structSa,*p=&a;a.a=99;printf("%d\n",_______);}程序要求输出结构体中成员a的数据,以下不能填入横线处的内容是
Whathabithasthewomanrecentlyhad?
A、ProfessorSmithdoesn’tholdseminarsordiscussionsinhislectures.B、StudentssometimesfallasleepinProfessorSmith’sle
最新回复
(
0
)