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

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


参考答案和解析
第一空: #

相关考题:

设有定义:inta=2,b=3,c=4;,则以下选项中值为0的表达式是A、(!a==1),则以下叙述中正确的是() A、定义了一个基类型为int的指针变量p,该变量具有三个指针B、定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针C、定义了一个名为*p的整型数组,该数组含有三个int类型元素D、定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素

●试题六阅读下列程序说明和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);}

如果定义了一个类的对象数组,该数组有10个元素,则要调用 10次构造函数来对每个元素初始化。()。 此题为判断题(对,错)。

使用VC6打开考生文件夹下的工程test7_3,此工程包含一个源程序文件test7_3.cpp,其中含有一个类Circle的定义,但该类的定义并不完整。请按要求完成下列操作,将类Circle的定义补充完整。(1)为类Circle增加一个构造函数,该函数有一个参数,并在构造时将该参数值赋给成员radius。将该函数实现为一个非内联函数,并且使用参数列表的方式将类成员赋值。请在注释“//**1**”之后添加适当的语句。(2)为类Circle增加一个成员函数print(),使得可以输出有关圆的信息,比如下列程序Circle c;c.SetRadius(5);c.Print();将输出:The circle has radius of 5!请在注释“//**2**”之后添加适当的语句。(3)完成友元函数void CompareR(Circle *cl,Circle*c2)的定义,在屏幕中输出c1与c2比较radius大小结果,要求使用 if-else结构完成。请在注释“//**3**”之后添加适当的语句。输出结果如下;The circle has radus of 5!The circle has radius of 10!c1<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 *c1,Circle *C2){//**3**cout<<"c1c2"<<endl;elseif((c1->GetRadius())==(c2->GetRadius()))cout<<"c1=c2"<<endl;elseif((c1->GetRadius())<(c2->GetRadius()))cout<<"c1<c2"<<endl;}void main(){Circle c1;c1.SetRadius(5);C1.Print();Circle c2(10);c2.Print();CompareR(c1,c2);}

若有定义“int*p[3];”,则以下叙述中正确的是( )。A.定义了一个基类型为int的指针变量p,该变量具有3个指针B.定义了一个指针数组p,该数组含有3个元素,每个元素都是基类型为int的指针C.定义了一个名为*p的整型数组,该数组含有3个int类型元素D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有3个int类型元素

设有定义: class person {int num; char name[10]; public: void init(int n,char*m) }; personstd[30] 则以下叙述不正确的是( )。A.std是一个含有30个元素的对象数组B.std数组中的每个元素都是person类的对象C.std数组中的每个元素都有自己的私有变量num和nameD.std数组中的每个元素都有各自的成员函数init

请编写一个完整的Java Application程序,能够计算圆的周长和面积。 要求:(1)定义点类CPoint;(2)定义圆类CCircle继承自类CPoint,类中属性包括:圆心,半径,类中方法包括:求周长perimeter()、求面积area();(3)定义主类CCircleDemo,利用类CCircle输出一个圆的圆心,半径,周长和面积

若有定义:int *p[3];则以下叙述中正确的是( )。A.定义了一个基类型为int的指针变量p,该变量具有三个指针B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类型为int的指针C.定义了一个名为*p的整型数组,该数组含有三个int类型元素D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素

阅读以下说明和C代码,将应填入(n)处的字句写在的对应栏内。【说明】在一个简化的绘图程序中,支持的图形种类有点(point)和圆(circle),在设计过程中采用面向对象思想,认为所有的点和圆都是一种图形(shape),并定义了类型shape t、 point t和circle t分别表示基本图形、点和圆,并且点和圆具有基本图形的所有特征。【C代码】typedef enum { point,circle } shape type; /* 程序中的两种图形:点和圆 */typedef struct { /* 基本的图形类型 */shape_type type; /* 图形中类标识:点或者圆*/void (*destroy) (); /* 销毁图形操作的函数指针*/void (*draw) (); /* 绘制图形操作的函数指针*/} shape_t;typedef struct { shape_t common; int x; iht y; } point_t; /* 定义点类型, x, y为点坐标*/void destroyPoint (point_t* this) { free (this); printf ("Point destoryed!\n"); } ) /* 销毁点对象*/void drawPoint(point_t* this) { printf("P(%d,%d)", this-x, this-y); }/* 绘制点对象*/shape_t* createPoint (va_list* ap) (/* 创建点对象,并设置其属性*/point_t* p_point;if ( (p_point= (point_t*)malloc (sizeof (point_t)) ) ==NULL) returnNULL;p_point->common, type = point; p_point-common, destroy = destroyPoint;p_point->common.draw = drawPoint;p_point->x = va_arg(*ap, int); /* 设置点的横坐标*/p_point->y = va_arg(*ap, int); /* 设置点的纵坐标*/return (shape_t*)p_ooint; /*返回点对象指针*/}typedef struct { /*定义圆类型*/shape_t common;point_t 4center; /*圆心点*/int radius; /*圆半径*/} circle_t;void destroyCircle(circle_t* this){free((1)); free(this); printf("Circle destoryed!\n");}void drawCircle(circle_t* this) {print f ("C (");(2).draw(this->center); /*绘制圆心*/printf(",%d) ", this->radius);}shape_t* createCircle(va_list4 ap) { /*创建一个圆,并设置其属性*/circle_t4 p circle;if ((p_circle = (circle_t4)malloc (sizeof (circle_t)) ) ==NULL ) return NULL;p_circle->common.type = circle; p_circle->common.destroy = destroyCircle;p_circle->common.draw = drawCircle;(3) = createPoint(ap); /* 设置圆心*/p_circle->radius = va_arg(*ap, int); /* 设置圆半径*/return p_circle;}shape_t* createShape(shape_type st, "') { /* 创建某一种具体的图形*/va_list ap; /*可变参数列表*/&nbs

若有定义"int*p[3];",则以下叙述中下确的是A.定义了一个基类型为int的指针变量p,该变量具有三个指针B.定义了一个指针数组p,该数组含有三个元素,每个元素都是基类犁为int的指针C.定义了一个名为*p的整型数组,该数组含有三个int类型元素D.定义了一个可指向一维数组的指针变量p,所指一维数组应具有三个int类型元素

使用VC6打开考生文什夹下的工程test1_3。此工程包含一个test1_3.cpp,其中定义了类circle和column,其中column类由circle类protected派生,但两个类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类circle的保护数据成员r和area,它们都是double型的数据。请在注释“//**1**”之后添加适当的语句。(2)添加类circle的无参数的构造函数,使circle对象的r默认值为0,请在汁释“//**2**”之后添加适当的语句。(3)添加派生类column构造函数的定义,传入的参数为double型的height和radius,并将具分别赋值给数擗成员h和基类的r,请在注释“//**3**”之后添加适当的语句。(4)完成派生类column的成员函数print的定义,使其以格式“r=_area=_”先输出半径r和底面积area,再以格式“h=_vol=_”输出高h和体积vol的值,请在注释“//**4**”之后添加适当的语句。输山结果如下:r=1 area=3.1416h=2 vo1=6.2832注意:除在指定的位置添加语句外,请不要改动程序中的其他语句。源程序文件test1_3.cpp清单如下:include<iostream.h>const double pi=3.1416;class circle{protected://**1**public://**2**circle(double radius){ r=radius;}void print(){area=r*r*pi;cout<<"r="<<r<<" "<<"area="<<ared<<endl;}};class column: protected circle{protected:double h;public://** 3 **void print(){// ** 4 **}};void main(){column col(1.0,2.0);Col.print();}

阅读下列程序说明和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)

设有定义: classperson {inthum; charname[10]; public: voidinit(intn,char*m); }; personstd[30] 则以下叙述不正确的是( )。A.std是一个含有30个元素的对象数组B.std数组中的每个元素都是person类的对象C.std数组中的每个元素都有自己的私有变量num和nameD.std数组中的每个元素都有各自的成员函数init

如果一个数组中的每个元素都是同一类的对象,则该数组被称为【 】。

编写一个圆类Circle,该类拥有()

使用new创建一个对象数组,该数组用指针pa指向,并使数组的3个元素都是类A的对象a1的值。应该是()

如何初始化数组?()A、利用大括号直接创建数组和其中的元素;B、利用new关键字创建一个数组;C、数组不需要初始化,只要定义数组变量即可;D、数组不需要初始化,只要定义数组变量,并为数组中的每个元素赋值即可;E、定义数组变量,再分别初始化数组中的每个元素;

设有定义语句int,a[]={1,1,2};则以下对此语句的叙述错误的是()A、定义了一个名为a的一维数组B、a数组有3个元素C、a数组的下标为1~3D、数组中的每个元素是整型

假定一个二维数组的定义语句为“int a[3][4];”,则该数组包含有回()个整型元素。

编一个程序,定义一个n行n列的二维数组,例如,n=4,输入该数组的全部数据。可以在定义数组时赋于常量值。求二维数组中这样元素的位置:它在行上是最小,在列上也是最小。

定义一个对象指针数组pa,它有5个元素,每个元素是类A对象指针,应该是()

一维数组定义语句intn=10,a[n];则()A、数组长度为10B、数组中最后一个元素的下标是n-1C、数组中第一个元素是a[1]D、语法错

当定义一个数组时,系统会在内存中为该数组分配一个存储空间,其()就是数组在内存中的首地址。A、数组的最大下标B、数组的名称C、数组的第一个元素D、数组的最后一个元素

单选题设有定义语句int,a[]={1,1,2};则以下对此语句的叙述错误的是()A定义了一个名为a的一维数组Ba数组有3个元素Ca数组的下标为1~3D数组中的每个元素是整型

填空题定义一个对象指针数组pa,它有5个元素,每个元素是类A对象指针,应该是()

问答题编一个程序,定义一个n行n列的二维数组,例如,n=4,输入该数组的全部数据。可以在定义数组时赋于常量值。求二维数组中这样元素的位置:它在行上是最小,在列上也是最小。

填空题使用new创建一个对象数组,该数组用指针pa指向,并使数组的3个元素都是类A的对象a1的值。应该是()