首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定义。请在横线处填写适当的代码并
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定义。请在横线处填写适当的代码并
admin
2020-05-14
70
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTriangle(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该程序的正确输出结果应为:
20
10
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include
using namespace std;
class CPolygon{
public:
//*********found*********
_________//纯虚函数area声明
void printarea(void)
//*********found*********
{cout<<________<
};
class CRectangle:public CPolygon{
int width; //长方形宽
int height; //长方形高
public:
CRectangle(int w, int h):
width(w),height(h){)
int area(void){return(width*height);)
};
class CTriangle:publ ic CPolygon{
int length; //三角形一边长
int height; //该边上的高
public:
CTriangle(int 1,int h):
length(1),height(h){}
//*********found*********
int area(void){return(_________)/2;)
};
int main(){
CRectangle rect(4,5);
CTriangle trgl(4,5);
//*********found*********
_________*ppoly1,*ppoly2;
ppoly1=&rect;
ppoly2=&trgl;
ppoly1->printarea();
ppoly2->printarea();
return 0;
}
选项
答案
(1)virtual int area(void)=0;
解析
(1)主要考查考生对纯虚函数的掌握,在定义纯虚函数时要看在派生类中函数的定义:int area(void)。由此可知纯虚函数应该为:virtual int area(void)=0;。
(2)主要考查考生对纯虚函数的掌握情况,由void printarea(void)可知,该函数要打印面积,因此在此要调用纯虚函数area,即cont<
(3)主要考查考生对数学公式的掌握,该函数要返回三角形面积,三角形的面积公式为长乘以该边上的高除以2,即return(length*height)/2;。
(4)主要考查考生对抽象类的掌握情况,根据程序段:
ppoly1=&rect;
ppoly2=&trgl;
可知指针ppoly1指向CReetangle类,而指针ppoly2指向CTfiangle类,因此在这里只能填这两种类的基类CPolygon类。
转载请注明原文地址:https://www.kaotiyun.com/show/9q8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若要在C盘根目录下作为二进制文件打开文件test.dat,则应该用的语句是【】。
有如下程序:#include<iostream>usingnamespacestd;classCA{public:CA(){cout<<’A’;}};classCB:priva
如下程序的输出结果是main(){inta=2,b=-1,c=2;if(a<B)if(b<0)c=0;elsec++;cout<<c<<end1;}
下面程序应能对两个整型变量的值进行交换。以下正确的说法是 #include<iostream.h> voidswap(intp,intq) {intt; t=p; p=q; q=t;} voidmain()
请指出程序片段的语法错误______。
下面程序的运行结果是()。#include<iostream.h>intx=5;intfun(inta){intc;C=X*a;retumc;}vo
下列关于关系运算的叙述中正确的是
下列有关函数重载的叙述中,错误的是
下列叙述中正确的是
随机试题
干姜治咳喘的机理是
《耕地占补平衡考核办法》规定,县级以上地方农业部门负责本行政区域内耕地占补平衡的考核工作。()。
根据《企业财务会计报告条例》的规定,企业对外提供虚假财务会计报告,可以对企业()。
将建筑物垂直地面的各种墙面,进行( )而得到的投影图称为立面图。
下列情况中,符合银行发放个人贷款要求的是()。
根据《人民币银行结算账户管理办法》的规定,下列款项中,可以转入个人银行结算账户的有()。
给定资料1.2013年11月10日22点,杭州华星时代大厦,天猫“双十一”购物节主战场,灯火通明。据悉,11月11日当天,阿里组建了5000人团队加班加点保障“双十一”顺利进行。为了防止意外,阿里这次为了天猫“11.11”购物狂欢节在各
若x,y均为正整数,则方程15×22+1=y2的正整数解(x,y)的个数是
使用文件系统时,通常要显式地进行open()操作,这样做的目的是()。
ArecentstudybytheCenterforEconomicPolicyResearchsaysthat,inordertoeaseimbalances,theEuropeanUnionneedstoma
最新回复
(
0
)