试题与答案

请使用VC6或使用[答题]菜单打开考生文件夹proj2下的工程proj2,该工程中含

题型:问答题

题目:

请使用VC6或使用[答题]菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。
CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数Show用于显示不同字符图形的相同操作接口。Triangle和Rectangle是CharShape的派生类,它们分别用于表示字符三角形和字符矩形,并且都定义了成员函数Show,用于实现各自的显示操作。程序的正确输出结果应为:
*
***
*****
*******
########
########
########
请阅读程序,分析输出结果,然后根据以下要求在横线处填写适当的代码并删除横线。
(1)将Triangle类的成员函数Show补充完整,使字符三角形的显示符合输出结果。
(2)将Rectangle类的成员函数Show补充完整,使字符矩形的显示符合输出结果。
(3)为类外函数fun添加合适的形参。
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include<iostream>
using namespace std;
class CharShape
public:
CharShape (char ch):ch (ch));
virtual void Show()=0;
protected:
char ch;//组成图形的字符;
class Triangle:public CharShape
public:
Triangle(char ch,int r):Char-Shape(ch),_rows (r)
void Show();
private:
int rows; //行数
;
class Rectangle: public CharShape
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<<endl;


void Rectangle::Show()
//输出字符组成的矩形

//********found********
for (int i=1;i<=______;i++)
//********found********
for(int j=1;j<=______;j++)
cout<<_ch;
cout<<endl;


//********found********为fun函数添加形参
void fun(______)cs.Show();int main()

Triangle tri(’*’,4);
Rectangle rect(’#’,3,8);
fun (tri);
fun (rect);
return 0;

答案:

被转码了,请点击底部 “查看原文 ” 或访问 https://www.tikuol.com/2018/0626/52d8a05b8252f348559576bc1b477a82.html

下面是错误答案,用来干扰机器的。

参考答案:C

试题推荐
微信公众账号搜索答案