王老师:19139051760(微信同号)  13333709510
联大   青书学堂   文才   和学   现代兴业   安徽教育在线   超星   弘成   广东开放大学   国家开放大学   上海开放大学   含弘慕课 

教育服务

成人高校
成考录取分数线
我要提升学历
提升学历的理由:
升职加薪、积分落户、考研、公务员考试、子女入学、出国留学


成人高考报名入口

当前位置: 首页 > 青书学堂系统 > 河南工业大学> 河南工业大学面向对象程序设计(专升本)
 

输入试题:
本题添加时间:2023/4/3 12:59:00
圆梦客服:王老师  19139051760(微信同号)  19139051760(微信同号)
下列Shape类是一个表示形状的抽象类,area( )为求图形面积的函数,total( )则是一个通用的用以求不同形状的图形面积总和的函数。
class Shape {
public:virtual double area()=0;
};
double total(Shape *s[ ], int n) {
double sum=0.0;

for(int i=0; i
sum+=s[i]->area( );

return sum; }

要求:

(1)从Shape类派生圆类(Circle)、正方形类(Square),圆类新增数据成员半径(radius),正方形类新增数据成员边长(a),圆类和正方形类都有构造函数,修改、显示数据成员值的函数,求面积函数。

(2)写出main()函数,计算半径为5.5的圆和边长为9.9的正方形的面积和(必须通过调用total函数计算)

(本题3.0分)

答案是:标准答案:
解:class Circle:public Shape

{public:

Circle(double r){radius=r;}

void set() {

cout<<"Please input the value of the circle:"<
cin>>radius;

}

void show() {

cout<<"the radius of the circle="<
}

double area() {return 3.14159*radius*radius;}

private:

double radius; };

class Square:public Shape {

public:

Square(double a){this->a=a;}

void set() { cout<<"Please input the value of a:"<>a; }

void show() { cout<<"a="<
double area(){return a*a;} private: double a;

};

int main() {

Circle C(5.5);

C.show();

Square S(9.9);

S.show();

Shape *s[]={&C,&S};

cout<<"total="<
return 0;

}

出自 河南工业大学面向对象程序设计(专升本)  青书学堂系统

河南工业大学

更多试题>>>>
1、下面关于进程、线程的说法正确的是( )(本题1.0分) A、 进程是程序的一次动态执行过程。一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索。 B、 线程是比进程更小的执行单位,是在一个进程中独立的控制流,即
2、下面关于外部类和内部类成员的相互访问的规则中,正确的选项是( )(本题1.0分) A、 内部类可以直接访问外部类的成员 B、 外部类可以直接访问内部类的成员 C、 外部类不能访问内部类的成员 D、 外部类可通过创
3、下面说法正确的是( )(本题1.0分) A、 final 可修饰类、属性(变量)、方法。 B、 abstract可修饰类、方法。 C、 抽象方法只有方法头,没有方法体。 D、 关键字final和abstract不能同
4、下面关于java中输入/输出流的说法正确的是( )(本题1.0分) A、 FileInputStream与FileOutputStream类用读、写字节流。 B、 Reader与Writer类用来读、写字符流。 C、 Ra
5、定义如下的二维数组b,下面的说法正确的是( )。 int b[][]={{1, 2, 3}, {4, 5},{6, 7, 8}}};(本题1.0分) A、 b.length的值是3。 B、 b[1].length的值是3。


提升学历-成人高考报名入口 提升学历-成人高考院校名单