《第五周实验报告1-2》---增加构造函数,使对象在定义时能够进行初始化

原创 2012年03月19日 20:37:22
/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称:  Triangle1-1.cpp                    
* 作    者:  计114-3 王兴锋              
* 完成日期:  2012 年 3 月 19 日
* 版 本 号:  V 1.0

* 对任务及求解方法的描述部分
* 输入描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化 
* 问题描述:
			(3)使用默认参数的构造函数,不给定实参时,默认边长为1;
* 程序输出:按要求输出
###上机感言:通过要求,体会各种类初始化的特点并熟练掌握。
* 程序头部的注释结束
*/

#include <iostream>
#include <Cmath>

using namespace std;

class Triangle
{
public:
	Triangle(float x = 1, float y = 1, float z = 1);//参数构造函数
	float perimeter(void);//计算三角形的周长
	float area(void);//计算并返回三角形的面积
	void showMessage();
private:
	float a,b,c; //三边为私有成员数据
};
Triangle::Triangle(float x, float y, float z)
{
	if (x + y > z && x + z > y && y + z > x && x > 0 && y > 0 && z > 0)
		a = x, b = y, c = z;
	else
	{
		cout << "您的赋值有误!" << endl;
		exit(0);
	}
}
float Triangle::perimeter(void)
{
	return a + b + c;
}
float Triangle::area(void)
{
	float p;

	p = (a + b + c) / 2;

	return sqrt(p * (p - a) * (p - b) * (p - c));
}

void Triangle:: showMessage()
{
	cout << "三角形的三边长分别为:" << '\t' << a << '\t' << b << '\t' << c<< endl;
	cout << "该三角形的周长为:" << perimeter() << '\t' << "面积为:" << area() << endl <<endl;
}

void main(void)
{
	//使用默认参数的构造函数,不给定实参时,默认边长为1
	Triangle Tri1;	//定义三角形类的一个实例(对象)
	Tri1.showMessage();
	//指定参数,按指定的参数进行赋值
	Triangle Tri2(7,8,9);	//定义三角形类的一个实例(对象)
	Tri2.showMessage();

}

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/w695050167/article/details/7370608

《C++语言基础》实践参考——类族的设计

返回:贺老师课程教学链接 项目要求【项目4 - 类族的设计】    按以下的提示,由基类的设计和测试开始,逐渐地完成各个类的设计,求出圆格柱体的表面积、体积并输出并且完成要求的计算任务:    (1)...
  • sxhelijian
  • sxhelijian
  • 2015-05-12 16:09:17
  • 1247

《第五周实验报告1-1》---增加构造函数,使对象在定义时能够进行初始化

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: Tria...
  • w695050167
  • w695050167
  • 2012-03-19 20:33:09
  • 643

《第五周实验报告1-3》---增加构造函数,使对象在定义时能够进行初始化

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: Tria...
  • w695050167
  • w695050167
  • 2012-03-19 20:41:33
  • 769

写一个程序,定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形)

写一个程序,定义抽象基类Shape,由它派生出3个派生类: Circle(圆形)、Rectangle(矩形)、Triangle(三角形),用一个函数printArea分别输出以上三者的面积,3个图形的...
  • w3071206219
  • w3071206219
  • 2016-10-06 16:06:19
  • 6347

写一个程序,定义抽象基类Shape,由它派生出3个派生类,Circle(圆形)、Rectangle(矩形)、Triangle(三角形)。用如下的main()函数,求出定义的几个几何体的面积和。

问题及代码: /* *Copyright (c) 2016,烟台大学计算机学院 *All rights reserved. *文件名称:main.cpp *作 者:李磊涛 *完成时间:2016...
  • a1724002236
  • a1724002236
  • 2016-05-28 14:33:32
  • 5306

设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化2

程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生  * All rights reserved. * 文件名称: * 作 者:石丽君  * 完...
  • shitoujianqiang123
  • shitoujianqiang123
  • 2012-03-19 18:49:41
  • 808

第四周项目一:三角形类的构造函数(1):带参数的构造函数

问题及代码: /* *Copyright (c)2014,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称: 三角形类的构造函数 .cpp *作 ...
  • baiyunfei08
  • baiyunfei08
  • 2015-03-26 13:22:55
  • 198

定义抽象基类Shape,由它派生出3个派生类,Circle、Rectangle、Triangle

/* * 程序的版权和版本声明部分 * Copyright (c)2012, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: object.cpp * 作...
  • CXZHAOYANG12
  • CXZHAOYANG12
  • 2013-05-31 19:14:29
  • 4072

定义一个继承层次的例子-Shape类Circle类的定义

http://hi.baidu.com/wolfand11/item/03eec320e8a8228a6e2cc3d8 昨天回复了一个Shape类的问题,涉及到了C++中的多态等问题,这里分...
  • bug07250432
  • bug07250432
  • 2013-08-16 15:42:15
  • 918

设计三角形类(使用默认参数的构造函数)

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生  * All rights reserved. * 文件名称:  ...
  • sdhzwuxia
  • sdhzwuxia
  • 2012-03-20 17:34:53
  • 844
收藏助手
不良信息举报
您举报文章:《第五周实验报告1-2》---增加构造函数,使对象在定义时能够进行初始化
举报原因:
原因补充:

(最多只允许输入30个字)