网友您好, 请在下方输入框内输入要搜索的题目:

题目内容 (请给出正确答案)

阅读下列程序说明和C++代码,将应填入(n)处。

【说明】

源程序中定义了Circle类与Money类,Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。

①定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。

②定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。

③完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。

④完成Money类成员函数float Money::TotalMoney(float fencelen,float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。

注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。

源程序文件test4.cpp清单如下:

include<iostream.h>

(1)

class Circle

{

private:

float radius;

public:

(2)

float Circumference(){return 2 * P| * radius;}

float Area(){return P|*radius * radius;}

};

class Money

{

private:

float FencePrice;

float ConcretePrice;

public:

Money(float f,float c);

float Tota|Money(float fencelen, float conarea);

};

Money::Money(float f,float c)

{

(3)

}

float Money::Tota|Money(float fencelen, float conarea)

{

(4)

}

void main( )

{

float radius, fence, concrete;

cout. setf(ios:: fixed);

cout. setf(ios:: showpoint);

cout. precision (2);

cout << "Enter the radius of the pool:";

cin > > radius;

cout << "Enter the FencePrice:";

cin > > fence;

cout << "Enter the ConcretePrice: ";

cin > > concrete;

Circle Pool(radius);

Circle PoolRim(radius + WIDTH);

Money mon( fence, concrete);

float totalmoney = mon. TotalMoney( PoolRim. Circumference( ), ( PoolRim. Area ( ) - Pool.

Area ( ) ) );

cout << "The total money is RMB" << totalmoney << end|;

}


参考答案

更多 “ 阅读下列程序说明和C++代码,将应填入(n)处。【说明】源程序中定义了Circle类与Money类,Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。①定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。②定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。③完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。④完成Money类成员函数float Money::TotalMoney(float fencelen,float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test4.cpp清单如下:include<iostream.h>(1)class Circle{private:float radius;public:(2)float Circumference(){return 2 * P| * radius;}float Area(){return P|*radius * radius;}};class Money{private:float FencePrice;float ConcretePrice;public:Money(float f,float c);float Tota|Money(float fencelen, float conarea);};Money::Money(float f,float c){(3)}float Money::Tota|Money(float fencelen, float conarea){(4)}void main( ){float radius, fence, concrete;cout. setf(ios:: fixed);cout. setf(ios:: showpoint);cout. precision (2);cout << "Enter the radius of the pool:";cin > > radius;cout << "Enter the FencePrice:";cin > > fence;cout << "Enter the ConcretePrice: ";cin > > concrete;Circle Pool(radius);Circle PoolRim(radius + WIDTH);Money mon( fence, concrete);float totalmoney = mon. TotalMoney( PoolRim. Circumference( ), ( PoolRim. Area ( ) - Pool.Area ( ) ) );cout << "The total money is RMB" << totalmoney << end|;} ” 相关考题
考题 ●试题六阅读下列程序说明和C++代码,将应填入(n)处的字句写在答卷的对应栏内。【说明】①为类Circle增加一个构造函数,该函数有一个参数,并在构造时将该参数值赋给成员radius。将该函数实现为一个非内联函数,并且使用参数列表的方式将类成员赋值。②为类Circle增加一个成员函数print(),使得可以输出有关圆的信息,比如下列程序Circle c;C.SetRadius (5) ;C.Print();将输出:The circle has radius of 5!③完成友元函数void CompareR(Circle *c1,Circle *c2)的定义,在屏幕中输出c1与c2比较radius大小结果,要求使用if-else结构完成。输出结果如下:The circle has radus of 5!The circle has radius of 10!c1c2源程序文件test7_3.cpp清单如下:#includeiostream.hclass Circle{public:Circle():radius (5) {}(1)void SetRadius(int r) { radius=r; }int GetRadius() { return radius; }(2)friend void CompareR(Circle *c1,Circle *c2);private:int radius;};void CompareR(Circle *c1,Circle *c2){(3)cout"c1c2"endl;elseif ((c1-GetRadius())==(c2-GetRadius()))cout"c1=c2"endl;elseif ((c1-GetRadius())(c2-GetRadius()))cout"c1c2"endl;}void main(){Circle c1;c1.SetRadius (5) ;c1.Print();Circle c2 (10) ;c2.Print();CompareR(c1,c2);}

考题 ●试题六阅读下列程序说明和C++代码,将应填入(n)处的字句写在答卷的对应栏内。【说明】源程序中定义了Circle类与Money类,Circle类可对半径为r的圆进行周长与面积的计算,而Money类用于计算一圆形游泳池的造价。游泳池四周有原形过道,过道外围上栅栏,过道宽度为3米,根据键入的游泳池半径,每米栅栏价格及每平方米过道价格,即可计算出游泳池的造价。请按要求完成下列操作,将程序补充完整。①定义符号常量PI(值为3.14159f)与WIDTH(值为3.00f),分别用于表示圆周率与过道的固定宽度。②定义Circle类默认构造函数,把私有成员radius初始化为参数r的值。③完成Money类默认构造函数的定义,把私有成员FencePrice(每米栅栏的价格)、 ConcretePrice(每平方米过道的价格)初始化为参数f,c的值。④完成Money类成员函数float Money::TotalMoney(float fencelen, float conarea)的定义,根据参数fencelen(栅栏的长度)和conarea(过道的面积),返回栅栏与过道的总造价。注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。源程序文件test4.cpp清单如下:#include iostream.h(1)class Circle{private:float radius;public:(2)float Circumference(){return 2 * PI * radius;}float Area(){return PI * radius * radius;}};class Money{private:float FencePrice;float ConcretePrice;public:Money(float f,float c);float TotalMoney(float fencelen, float conarea);};Money::Money(float f,float c){(3)}float Money::TotalMoney(float fencelen, float conarea){(4)}void main(){float radius,fence,concrete;cout.setf(ios::fixed);cout.setf(ios::showpoint);cout.precision (2) ;cout "Enter the radius of the pool: ";cin radius;cout "Enter the FencePrice: ";cin fence;cout "Enter the ConcretePrice: ";cin concrete;Circle Pool(radius);Circle PoolRim(radius + WIDTH);Money mon(fence,concrete);float totalmoney=mon.TotalMoney(PoolRim.Circumference(),(PoolRim.Area() - Pool.Area()));cout "The total money is RMB " totalmoney endl;}

考题 阅读下列程序说明和C++代码,将应填入(n)处的字句写在对应栏内。[说明]①为类Circle增加一个构造函数,该函数有一个参数,并在构造时将该参数值赋给成员 radius。将该函数实现为一个非内联函数,并且使用参数列表的方式将类成员赋值。②为类Circle增加一个成员函数print(),使得可以输出有关圆的信息,比如下列程序Circle c;c. SetRadius(5);c. Print();将输出:The circle has radius of 5!③完成友元函数void CompareR(Circle *c1,Circle *c2)的定义,在屏幕中输出c1与c2比较radius大小结果,要求使用if - else结构完成。输出结果如下:The circle has radus of 5 !The circle has radius of 10 !cl <c2源程序文件test7_3, cpp 清单如下:include < iostream, h >class Circle {public:Circle( ) :radius(5) {}(1)void SetRadius(int r) { radius = r; }int GetRadius() { return radius; }(2)friend void CompareR(Circle * c1,Circle * c2);private:int radius;};void CompareR(Circle * c! ,Circle * c2){(3)cout << "c1 > c2" << endl;elseif ( (c1 -> GetRadius( )) == (c2 -> GetRadius( )))tout < <"c1=c2' < < endl;elseif ( (c1 -> GetRadius( )) < ( c2 -> GetRadius( )))cout <<"c1<c2" <<endl;void main( )Circle c1c1. SetRadius(5)c1. Print( )Circle c2(10);c2. Print( )CompareR(c1 ,c2);}

考题 阅读以下说明和C++代码,将应填入(n)处的字句写上。[说明]现有一个显示系统,要显示的图形有线Line、矩形Square,抽象出一个Shape类(接口),有方法显不display()。需要新增图形Circle,又已知有类XXCircle实现了所需要实现的功能:显示displayIt()。为了继承自shape以提供统一接口,又不希望从头开发代码,希望使用XXCircle。这样将XXcircle作为Circle的一个属性,即Circle的对象包含一个XXCircle对象。当一个Circle对象被实例化时,它必须实例化一个相应的XXCircle对象: Circle对象收到的做任何事的请求都将转发给这个XXCircle对象。通过这种称为Adapter模式,Circle对象就可以通过“让XXCircle做实际工作”来表现自己的行为了。图6-1显示了各个类间的关系。以下是C++语言实现,能够正确编译通过。[图6-1][C++代码]class Shape{public:(1) void display()=0;};class Line:public Shape{//省略具体实现};class Square:public Shape{//省略具体实现};class XXCircle{public:void displayIt(){//省略具体实现}//省略其余方法和属性};class Circle:public Shape{private:XXCircle *pxc;public:Circle();void display();};Circle::Circle(){pxc=(2);}void Circle::display(){pxc->(3);}class Factory{public:(4) getshapeInstance(int type){//生成特定类实例switch(type){case 1:return new Square;case 2:return new Line;case 3 :return new Circle;default:return NULL;}}};void main(int argc,char*argv[]){if(argc !=2){cout<<"error parameters!"<<endl;return;}int type=atoi(argv[1]);Factory factory;Shape*s=factory. (5);if(s==NULL){cout<<"Error get the instance!"<<endl;return;}s->display();delete s;return;}(1)

考题 阅读以下说明和JAVA 2代码,将应填入(n)处的字句写在对应栏内。[说明]以下程序为类类型的变量应用实例,通过异常处理检验了类CCircle的变量的合法性,即参数半径应为非负值。仔细阅读代码和相关注释,将程序补充完整。[JAVA代码]//定义自己的异常类class CCircleException extends Exception{}// 定义类 CCircleclass CCircle{private double radius;public void setRadius ( double r ) (1){if ( r<0 ) {(2)}else(3)}Public void show ( ) {System. out. println ( "area="+3.14*radius*radius );}}public class ciusample{public static void main ( String args[] ){CCircle cir=new CCircle( );(4) {cir. setRadius ( -2.0 )}(5){System. out. println ( e+" throwed" ) ;}cir. show( ) ;}}

考题 阅读以下关于某绘图系统的技术说明、部分UML类图及C++程序,将C++程序中(1)~(6)空缺处的语句填写完整。【说明】某绘图系统存在Point、Line和Square这三种图元,它们具有Shape接口,图元的类图关系如图5-10所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供了的接口不被系统直接使用。【C++代码5-1】既使用了XCircle又遵循了Shape规定的接口,即避免了从头开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。【C++代码5-2】根据用户指定的参数生成特定的图元实例,并对它进行显示操作。该绘图系统定义的接口与XCircle提供的显示接口及其功能如表5-13所示。【C++代码5-1】class Circle: public (1) {Private;(2) m_circle;Public;void display(){m_circle. (3)}};【C++代码5-2】class Factory{public;(4) getShapeInstance(int type){ //生成特定类实例Switch(type){case 0: return new Point;case 1: return new Rectangle;case 2: return new Line;case 3: return new Circle;default: return NULL;}}};void main(int argc, char *argv[]){if(argc !=2){cout<<"error parameters!"<<endl;return;}int type=atoi(argv[1]);Factory factory;Shape *s;s=factory.(5);if(s==NULL){cout<<"Error get the instance!"<<endl;return;}s->display();(6);Return;}

考题 阅读以下说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】某绘图系统存在Point、Line、Square三种图元,它们具有Shape接口,图元的类图关系如图5-1所示。现要将Circle图元加入此绘图系统以实现功能扩充。已知某第三方库已经提供了XCircle类,且完全满足系统新增的Circle图元所需的功能,但XCircle不是由Shape派生而来,它提供的接口不能被系统直接使用。代码5-1既使用了XCircle又遵循了Shape规定的接口,既避免了从头,开发一个新的Circle类,又可以不修改绘图系统中已经定义的接口。代码5-2根据用户指定的参数生成特定的图元实例,并对之进行显示操作。绘图系统定义的接口与XCircle提供的显示接口及其功能如下表所示:【代码5-1】class Circle:public (1) {pfivme:(2) m_circle;public:void display(){m_circle. (3);}};【代码5-2】class Factory{public:(4) getShapeInstance (int type){ //生成特定类实例switch (type){case 0:rcturn new Point;Case l:return new Rectangle;case 2: return new Line;case 3: return new Circle;default: return NULL;} void main (int argo, char *argv[]) {if (argc!=2) {cout << "error parameters !" << endl; return; inttype=atoi (argv[1]) ;Factory factory;Shape *s;s = factory. (5):if (s==NULL) {cout << "Error get the instance !" << endl;return;}s->display () ;(6);return;

考题 阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】 某文件管理系统中定义了类OfficeDoc和DocExplorer,当类OfficeDoc发生变化时,类DocExplorer的所有对象都要更新其自身的状态,现采用观察者(Observer)设计模式来实现该需求,所设计的类图如图6-1所示。

考题 编写程序。 (1)定义一个Circle类,其中包含一个用于求圆面积的方法。(2)定义一个长度为10的Circle类数组,该数组中每个元素均为Circle类对象,即半径不同的具体的圆。(3)编写代码求该数组中所有圆的面积和。