第三次上机实验参考答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三次上机实验参考答案

1、类对象的定义

【项目要求】定义一个圆类,计算圆的面积和周长。

(1)控制台应用程序的参考代码如下:

namespace SY3_1

{

class Program

{

static void Main(string[] args)

{

double r;

Console.Write("请输入圆的半径:");

r = Convert.ToDouble(Console.ReadLine());

Circle c1 = new Circle(r);

Console.WriteLine("圆周长 = {0}\n 圆面积 = {1}", c1.getCircumference(), c1.getArea());

Console.ReadLine();

}

}

class Circle

{

private double radius;

public Circle(double r)

{

radius = r;

}

public double getArea()

{

return Math.PI * radius * radius;

}

public double getCircumference()

{

return 2 * Math.PI * radius;

}

}

}//定义一个圆类,计算圆的面积和周长。

(2)用面向对象的思想实现Windows 应用程序,用户输入圆的半径,点击计算按钮能输出圆的面积和周长。界面如图3-2 所示。

图 3-1 圆类求面积和周长

参考代码如下:

namespace SY3_2

{

public partial class Form1 : Form

{

public Form1()

{

InitializeComponent();

}

private void button1_Click(object sender, EventArgs e)

{

double r;

r = Convert.ToDouble(tbRadius.Text);

Circle c1 = new Circle(r);

tbArea.Text = c1.getArea().ToString("F2");

tbPeri.Text = c1.getCircumference().ToString("F2");

}

class Circle

{

private double radius;

public Circle(double r)

{

radius = r;

}

public double getArea()

{

return Math.PI * radius * radius;

}

public double getCircumference()

{

return 2 * Math.PI * radius;

}

}

}

}

//用面向对象的思想实现Windows 应用程序,用户输入圆的半径,点击计算按钮能输出圆的面积和周长。

图 3-2 圆类求面积和周长

2、类的继承

【项目要求】编写一个程序,计算球、圆柱和圆锥的表面积和体积。

(1)定义一个基类圆,至少含有一个数据成员半径;

(2)定义基类的派生类球、圆柱、圆锥,都含有求体积的方法,可以都在构造方法中实现,也可以将求体积和输出写在一个方法或两个方法中,请比较使用;

(3)定义主方法,求球、圆柱和圆锥的表面积和体积。

参考代码如下:

namespace SY3_3

{

class MyCircle

{

double r;

public MyCircle(double r)

{

this.r = r;

}

}

class MyBall : MyCircle

{

double volumn;

public MyBall(double r) : base(r)

{

volumn = Math.PI * r * r * r;

Console.WriteLine("球的体积是:{0}", volumn);

}

}

class MyCylinder : MyCircle

{

double volumn;

public MyCylinder(double r, double h): base(r)

{

}

public void calvolumn(double r, double h)

{

volumn = Math.PI * r * r * h;

}

public void print()

{

Console.WriteLine("圆柱体的体积是:{0}", volumn);

}

class MyCone : MyCircle

{

double h, volumn;

public MyCone(double r, double h): base(r)

{

this.h = h;

}

public void calvolumn(double r, double h)

{

volumn = Math.PI * r * r * h / 3;

Console.WriteLine("圆锥体的体积是:{0}", volumn);

}

}

public class Test

{

public static void Main()

{

Console.Write("请输入球半径:");

double r = Convert.ToDouble(Console.ReadLine());

MyBall mb = new MyBall(r);

Console.Write("请输入圆柱体高度:");

double h = Convert.ToDouble(Console.ReadLine());

MyCylinder mc = new MyCylinder(r, h);

mc.calvolumn(r, h);

mc.print();

Console.Write("请输入圆锥体高度:");

double h2 = Convert.ToDouble(Console.ReadLine());

MyCone mo = new MyCone(r, h2);

Console.WriteLine("h2={0},r={1}", h2, r);

mo.calvolumn(r, h2);

Console.ReadLine();

}

}

}

相关文档
最新文档