首页 > 软考
题目内容 (请给出正确答案)
[主观题]

定义一个Triangle类表示三角形,其中包括三个double型变量a、b、c,分别表示三条边长。为该类定义两

个构造方法:默认构造方法设置三角形的三条边长都为0.0;带三个参数的构造方法通过传递三个参数创建三角形对象。定义求三角形面积的方法area(),面积计算公式为定义一个Triangle类表示三角形,其中包括三个double型变量a、b、c,分别表示三条边长。为。编写另一个程序测试这个三角形类的所有方法。

查看答案
答案
收藏
如果结果不匹配,请 联系老师 获取答案
您可能会需要:
您的账号:,可能还需要:
您的账号:
发送账号密码至手机
发送
安装优题宝APP,拍照搜题省时又省心!
更多“定义一个Triangle类表示三角形,其中包括三个doubl…”相关的问题
第1题
阅读以下说明和C++程序,将应填入(n)处的语句写在的对应栏内。 【说明】 以下程序的功能是计算三角形

阅读以下说明和C++程序,将应填入(n)处的语句写在的对应栏内。

【说明】

以下程序的功能是计算三角形、矩形和正方形的面积并输出。

程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述3种图形面积的通用接口。

【C++程序】

include<iostream.h>

include<math.h>

class Figure {

public:

virtual double getArea()=0; //纯虚拟函数

};

class Rectangle:(1){

protected:

double height;

double width;

public:

Rectangle() {};

Rectangle(double height,double width) {

this->height=height;

this->width=width;

}

double getArea() {

return (2);

}

};

class Square:(3){

public:

Square(double width){

(4);

}

};

class Triangle:(5){

double la;

double lb;

double lc;

Public:

Triangle(double la, double lb, double lc) {

This->la=la; this->lb=lb; this->lc=lc;

}

double getArea() {

double s = (la+lb+±c)/2.0;

return sqrt(s,(s-la)*(s-lb)*(s-Ic));

}

};

void main() {

Figure*figures[3]={

new Triangle(2,3,3), new Rectangle(5,8), new SqUare(5));

for(int i=0;i<3;i++){

cout<<"figures["<<i<<"]area="<<(figures[i])->getArea()<<endl;

}

}

点击查看答案
第2题
●试题六 阅读以下说明和C++程序,将应填入(n)处的语句写在答题纸的对应栏内。 【说明】 以下程序

●试题六

阅读以下说明和C++程序,将应填入(n)处的语句写在答题纸的对应栏内。

【说明】

以下程序的功能是计算三角形、矩形和正方形的面积并输出。

程序由4个类组成:类Triangle、Rectangle和Square分别表示三角形、矩形和正方形;抽象类Figure提供了一个纯虚拟函数getArea(),作为计算上述3种图形面积的通用接口

【C++程序】

#include<iostream.h>

#include<math.h>

class Figure{

public:

virtual double getArea()=0:∥纯虚拟函数

};

class Rectangle: (1) {

protected:

double height;

double width;

public:

Rectangle(){};

Rectangle(double height,double width){

this->height=height;

this->width=width;

}

double getArea(){

return (2) ;

}

};

class Square: (3) {

public:

Square(double width){

(4) ;

}

};

class Triangle: (5) {

double la;

double Ib;

double lc;

public:

Triangle(double la,double lb,double lc){

This->la=la;this->lb=lb;this->lc=lc;

}

double getArea(){

double s=(la+lb+±c)/2.0;

return sqrt(s*(s-1a)*(s-1b)*(s-1c));

}

};

void main(){

Figure*figures[3]={

new Triangle(2,3,3),new Rectangle(5,8),new SqUare (5) );

for (int i=0;i<3;i++){

cout<<"figures["<<i<<"]area="<<(figures[i])->getArea()<<endl;

}

}

点击查看答案
第3题
阅读以下说明和Java源程序,将应填入(n)处的字句写在答题纸的对应栏内。说明 以下程序的功能是计算

阅读以下说明和Java源程序,将应填入(n)处的字句写在答题纸的对应栏内。

说明

以下程序的功能是计算三角形、矩形和正方形的面积并输出。

程序由5个类组成:AreaTest是主类,类Triangle、Rectangle和Square分别表示三角形、矩形和正方形,抽象类Figure提供了一个计算面积的抽象方法。

程序

public class AreaTest{

public static void main(String args[]){

Figure[]figures={

new Triangle(2,3,3),new Rectangle(5,8), new Square(5)

};

for(int i=0;i<figures.1ength;i++){

System.out.println(figures[i]+"area="+figures[i].getArea());

}

}

}

public abstract class Figure{

public abstract double SetAJea();

public class Rectangle extends (1) {

double height;

double width;

public Rectangle(double height,double width){

this.height=height;

this.width=width;

}

public String toString(){

return "Rectangle:height="+height+",width="+width+":";

}

public double getArea() { return (2);

} } public class Square extends (3) {

public Square(double width) {

(4);

}

public String toString() {

return "Square:width="+width+":";

} } public class Triangle extends (5). {

double la;

double lb;

double lc;

public Triangle(double la,double lb,double lc) {

this.la=la; this.lb=lb; this.lc=lc;

public String toString(){

return "Triangle: sides="+la+","+lb+","+lc+":";

public double getArea() {

double s=(la+lb+lc)/2.0;

return Math.sqrt(s*(s-la)*(s-lb)*(s?1c));

}

}

点击查看答案
第4题
设计一个point(点)类: (1)该类具有成员变量x,y(表示点的横、纵坐标); (2)定义一个有参构造方法point(int x,int y),将其一对坐标值作为参数,其中x,y为给定坐标值; (3)定义一个无参的构造方法point()(令两坐标值均为0)..

设计一个point(点)类: (1)该类具有成员变量x,y(表示点的横、纵坐标); (2)定义一个有参构造方法point(int x,int y),将其一对坐标值作为参数,其中x,y为给定坐标值; (3)定义一个无参的构造方法point()(令两坐标值均为0); (4)设计一个实例方法distance(point p1,point p2),实现求坐标轴上两个点的距离(Java中的开平方根函数为Math.sqrt()),其方法的声明为:double distance(point p1,point p2) 。 编写Test类,在其main方法中创建2个point对象,对应点(10,10)和点(20,25),再调用distance(point p1,point p2)方法计算出两点之间的距离并输出该值。

点击查看答案
第5题
定义一个名为Circle的类表示圆,其中含有double型的成员变量centerX、centerY表示圆心坐标,radiu
s表示圆的半径。定义求圆面积的方法getArea()和求圆周长的方法getPerimeter()。为半径radius定义访问方法和修改方法。定义一个带参数构造方法。通过给出圆的半径创建圆对象。定义默认构造方法,在该方法中调用有参数构造方法。将圆的半径设置为1,0。画出该类的UML图。编写程序测试这个圆类的所有方法。

点击查看答案
第6题
定义一个名为Rectangle的类表示矩形,其中含有length,width两个double型的成员变量表示矩形的长
和宽。要求为每个变量定义访问方法和修改方法,定义求矩形周长的方法getPerimeter()和求面积的方法getArea()。定义一个带参数构造方法,通过给出的长和宽创建矩形对象。定义默认构造方法,在该方块中调用有参数构造方法,将矩形长宽都设置为1.0。画出该类的UML图。编写程序测试这个矩形类的所有方法。Rectangle类的UML图如图4-2所示。

点击查看答案
第7题
试题七(共 15 分) 阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

试题七(共 15 分)

阅读下列说明、图和Java 代码,回答问题1 至问题3,将解答写在答题纸的对应栏内。

[说明]

已知四个类之间的关系如图 7-1 所示,分别对每个类的方法进行编号,例如 Shape的 perimeter()为 1 号,表示为“1:perimeter()” ,Rectangle 类的 perimeter()为 2 号,表示为“2:perimeter()” ,依此类推,其中,每个类的 perimeter方法签名相同。

[Java 代码]

Triangle tr = new Triangle();

Square sq = new Square();

Shape sh = tr;

[问题 1] 关于上述 Java代码中 sh 和 tr 的以下叙述中,哪两个是正确的(写出编号) 。

① sh 和 tr 分别引用同一个对象;

② sh 和 tr 分别引用同一类型的不同的对象;

③ sh 和 tr 分别引用不同类型的不同对象;

④ sh 和 tr 分别引用同一个对象的不同拷贝;

⑤ sh 和 tr 所引用的内存空间是相同的。

[问题 2] 写出下面消息对应的方法编号(如果该消息错误或者没有对应的方法调用,请

填写“无” ) 。

tr.height() (1)

sh.perimeter() (2)

sq.height() (3)

sq.perimeter() (4)

sh.height() (5)

tr.perimeter() (6)

[问题 3] 下列赋值语句中哪两个是合法的(写出合法赋值语句的编号) 。

① sq = sh; ② sh = tr; ③ tr = sq; ④ sq = tr; ⑤ sh = sq;

点击查看答案
第8题
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为上【】。

假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为上【 】。

点击查看答案
第9题
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为______

点击查看答案
第10题
下面的类定义中,如果要为其添加一个析构函数,对于析构函数定义正确的是()。class TlestClass{priv

下面的类定义中,如果要为其添加一个析构函数,对于析构函数定义正确的是()。 class TlestClass { private: int a: public: TestClass(int giva_a=0) {a=give_a;} }

A.~void TestClass (){}

B.~TestClass void(){}

C.void~TestClass(){}

D.~TestClass(){}

点击查看答案
退出 登录/注册
发送账号至手机
密码将被重置
获取验证码
发送
温馨提示
该问题答案仅针对搜题卡用户开放,请点击购买搜题卡。
马上购买搜题卡
我已购买搜题卡, 登录账号 继续查看答案
重置密码
确认修改