上机内容:学习构造函数的参数问题,以及它的声明和调用
上机目的:了解错误,发现问题
/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: object.cpp
* 作者:刘杰
* 完成日期: 2013年4 月 2 日
* 版本号: v1.0
* 输入描述:// (1)使用带参数构造函数,即Triangle(double x, double y, double z),三边长在调用时由实参直接给出;
// (2)设计默认构造函数,即不指定参数时,默认各边长;
* 问题描述:解决重复定义问题
* 程序输出:
*/
#include<iostream>
#include <cmath>
using namespace std;
class Triangle
{public:
double perimeter(void);//计算三角形的周长
double area(void);//计算并返回三角形的面积
void showMessage();
Triangle(double h=5,double m=5,double n=5);
private:
double a,b,c; //三边为私有成员数据
};
void Triangle:: showMessage()
{
cout<<"三角形的三边长分别为:"<<a<<'\t'<<b<<'\t'<<c<<endl;
cout<<"该三角形的周长为:"<< perimeter()<<'\t'<<"面积为:"<< area()<<endl<<endl;
}
void main(void)
{
Triangle Tri1; //定义三角形类的一个实例(对象),要求执行一个默认构造函数,三边初值均为1
Tri1.showMessage();
Triangle Tri2(7,8,9); //定义三角形类的一个实例(对象)
Tri2.showMessage();
Triangle Tri3(3,4);
Tri3.showMessage();
}
//求周长
double Triangle::perimeter(void)
{
return a+b+c;
}
//求面积
double Triangle::area(void)
{
double s,q,area;
s=(a+b+c)/2;
q=s*(s-a)*(s-b)*(s-c);
area=sqrt(q);
return area;
}
Triangle::Triangle(double h,double m,double n)
{
a=h;
b=m;
c=n;
}
运行结果:
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。