首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTfiangle(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该
请打开考生文件夹下的解决方案文件proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTfiangle(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该
admin
2019-04-24
41
问题
请打开考生文件夹下的解决方案文件proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTfiangle(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该程序的正确输出结果应为:
20
10
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也小要删除或移动“//****found****”。
#1nclude
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:public 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; (2)area() (3)length*height (4)Cpolygon
解析
(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=&trg1:
可知指针ppoly1指向CReetangle类,而指针ppoly2指向CTriangle类,因此在这里只能填这两种类的基类CPolygon类。
转载请注明原文地址:https://kaotiyun.com/show/NOAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream>usingnamespacestd;classR{public:R(intr1,intr2){R1=r1;R
设有以下定义和程序:#include<iostream.h>classA1{public:voidshow1(){cout<<"classA1"<<end1;}};cla
下列程序的输出结果是()。#include<iostream>usingnamespacestd;voidfun(int&r){r*=2;}intmain(){int
下列程序的输出结果是()。#include<iostream>usingnamespacestd;templateTfun(Ta,Tb){return(a>=b)?a:b;}voidmain()
有如下程序:#include<iostream>usingnamespacestd;classTestClass1{public:virtualvoidfun(){cout<<"1";}};
下列说法中错误的是()
有如下程序:#include<iostream.h>usingnamespacestd;classTestClass{public:TestClass(){cout<<"defaultconstru
不能作为函数重载的判断依据的是()。
对于派生类的构造函数,在定义对象时构造函数的执行顺序为:先执行调用______的构造函数。再执行调用子对象类的构造函数,最后执行派生类的构造函数体中的内容。
随机试题
《传染病防治法》规定应予以隔离治疗的是
A.Ⅰ期临床评价B.Ⅱ期临床评价C.Ⅲ期临床评价D.Ⅳ期临床评价E.终身评价新药临床试验分为四个阶段,即临床Ⅰ、Ⅱ、Ⅲ、Ⅳ期是治疗作用的初步评价阶段,主要评价药物对目标适应证患者的治疗作用和安全性,为下一阶段临床试验研究的设计和给药剂量方案的
在确定折现率时,通常需要综合参考的投资报酬率有()。
散客旅游的特点有()。
“供给侧改革”的提出,表明我国官方经济学思想已由以前的重需求管理、重短期刺激,转变为供给、需求“两手抓”,甚至是偏向供给管理。()
微分方程y’+ytanx=cosx的通解为y=______________。
下面概念中,不属于面向对象方法的是______。
以下函数把b字符串连接到a字符串的后面,并返回a中新字符串的长度。请填空。strcen(chara[],charb[]){intnum=0,n=0;while(*(a+num)!=【】)num++;while(b[n])
TheOlympicGameshelpedtokeeppeaceamongthepugnaciousstatesoftheGreekworldinthatasacredtrucewasproclaimedduri
【T1】在中国人的心目中(consensus),似乎没有一部小说可以与《红楼梦》比肩。【T2】《红楼梦》既可以拥有亿万的读者(claim),也带有众多的谜团。【T3】这部小说是中国古典小说的巅峰之作,有一般文化的人都可以读懂它(comprehensibl
最新回复
(
0
)