首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。 CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。 CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数
admin
2019-04-24
36
问题
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。
CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数Show用于显示不同字符图形的相同操作接口。Triangle和Rectangle是CharShape的派生类,它们分别用于表示字符三角形和字符矩形,并且都定义了成员函数Show,用于实现各自的显示操作。程序的正确输出结果应为:
*
***
*****
*******
########
########
########
请阅读程序,分析输出结果,然后根据以下要求在横线处填写适当的代码并删除横线。
(1)将Triangle类的成员函数Show补充完整,使字符三角形的显示符合输出结果。
(2)将Rectangle类的成员函数Show补充完整,使字符矩形的显示符合输出结果。
(3)为类外函数fun添加合适的形参。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
using namespace std;
class CharShape{
public:
CharShape(char ch):ch(ch){};
virtual void Show()=0;
protected:
char ch;//组成图形的字符
};
class Triangle:public Char-Shape{public:
Triangle(char ch,int r):
CharShape(ch), rows(r){}
void Show();
private:
int rows;//行数
};
class Rectangle:public Char-Shape{public:
Rectangle(char ch,int r,
int c):CharShape(ch), rows(r), cols(c){)
void Show();
private:
int rows , cols;//行数和列数
};
void Triangle::Show()
//输出字符组成的三角形
{
for(int i=1;i<= rows ; i++) {
//********found********
for(int j=1 ; j<=___________;j++)
cout<< ch;
cout<
}
}
void Rectangle::Show()
//输出字符组成的矩形
{
//********found********
for(int i=1;i<=___________;i++){
//********found********
for(int j =1;j <=___________;j++)
cout<< ch;
cout<
}
}
//********found******** 为fun函数添加形参
void fun(___________){cs.Show
(); }
int main()
{
Triangle tri(’*’,4);
Rectangle rect(’#’,3,8);
fun(tri);
fun(rect);
return 0;
}
选项
答案
(1)i*2-1 (2)_nows (3)_cols (4)CharShape&cs
解析
(1)考查for循环语句,该语句所在的函数的功能是输出字符组成的三角形。从外层循环中可以看出下标i代表行数,那么下标j就代表每一行字符的个数,因为要输出的是三角形,所以每一行的个数与该行的行数相关,即i<=i*2一1:。
(2)考查for循环语句,该语句所在的函数的功能是输出字符组成的矩形。回到Rectangle类中可以知道矩形的长和宽就是类中私有成员的行数和列数,因此在这里只要要求下标i不大于行数即可。
(3)考查for循环语句,该语句所在的函数的功能是输出字符组成的矩形。回到Rectangle类中可以知道矩形的长和宽就是类中私有成员的行数和列数,因此在这里只要要求下标j不大于列数即可。
(4)主要考查考生对虚函数的掌握,该语句所在的函数是普通函数fun,题目要求为fun函数添加形参。从函数体中可以知道形参名为cs,那么形参的类型是什么呢?就是抽象类CharShape,因此要使用CharShape&cs才可以实现题目要求输出的内容。
转载请注明原文地址:https://jikaoti.com/ti/3st0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序段:charC[20]="examination";C[4]=0;cout<<c<<endl;这个程序的输出结果是______。
如下程序的输出结果是______。#include<iostream>usingnamespacestd;classWages{//“工资”类doublebase;//基本工资dou
在数据库管理系统提供的数据定义语言、数据操纵语言和数据控制语言中,______负责数据的模式定义与数据的物理存取构建。
设有以下定义和程序:#include<iostream.h>classA1{public:voidshow1(){cout<<"classA1"<<end1;}};cla
下面关于构造函数和析构函数的描述中,错误的是()
下列程序的输出结果是()。#include<iostream>usingnamespacestd;voidfun(int&r){r*=2;}intmain(){int
下列叙述中正确的是()。
请将下列类定义补充完整,横线处应填加语句______。classTestClass{public:voidfun(){cout<<"Base::fun"<<end1;}};classTestClass1:publicTestClas
下面不属于C++的预定义的流对象是()。
随机试题
2018年9月,中共中央、国务院印发了《乡村振兴战略规划(2018—2022年)》,至此乡村振兴战略有了五年时间表。下列相关说法不正确的是()。
由小肠肿瘤引起的急性肠梗阻,其机制是
Ⅱ级红斑量的照射剂量为
某医院采购危险化学品,评标时发现某投标文件中没有提供安全生产许可证,招标文件对安全生产许可证没有作出任何规定。对于该投标文件是否有效,评标委员会应当()。
天然气收到基的高位发热量(Qar,gr=40000kJ/m3,则其燃烧时的理论空气量为()m3/m3。
在下列选项中,应列入项目投资现金流量分析中的经营成本的是()。
企业发生年度亏损时,可以按照财务制度规定,根据不同情况用()弥补亏损。
下列行为中构成医疗责任事故罪的是哪种?()
下列权利中,不适用诉讼时效的是
Accordingtothetext,theservantproblemistotherulingclasswhatParagraph2and3arewrittento
最新回复
(
0
)