第四周项目1-三角形类的构造函数-有默认参数的构造函数

来源:互联网 发布:工业乙醇的蒸馏数据 编辑:程序博客网 时间:2024/04/29 20:27

问题及代码:

/**Copyright (c)2014,烟台大学计算机与控制工程学院*All   rights  reserved.*文件名称:main.cpp*作        者:黄艳*完成日期:2015年04月05日*版 本 号:v1.0**问题描述:设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化,可以由下面的类声明开始,需要自己实现相关的成员函数,以及增加要求的构造函数:3、使用有默认参数的构造函数,不给定实参时,默认各边为1*输入描述:不必输入*程序输出:输出三角形三边长,周长和面积*/#include<iostream>#include<Cmath>using namespace std;class Triangle{public:    Triangle(double x=1,double y=1,double z=1);//在声明构造函数时指定默认参数    double perimeter();//计算三角形的周长    double area();//计算并返回三角形的面积    void showMessage();private:    double a, b,c;//三边为私有成员数据};int main(){    Triangle Tri1;//定义边长为1 1 1的三角形类实例    Tri1.showMessage();    Triangle Tri2(1.5);//定义边长为1.5 1 1的三角形实例    Tri2.showMessage();    Triangle Tri3(1.5,1.5);//定义边长为1.5 1.5 1的三角形实例    Tri3.showMessage();    Triangle Tri4(7,8,9);//定义边长为7 8 9的三角形实例    Tri4.showMessage();    return 0;}Triangle::Triangle(double x,double y,double z) //在定义函数时可以不指定默认参数{    a=x;    b=y;    c=z;}double Triangle::perimeter(){    return a+b+c;}double Triangle::area(){    double p=(a+b+c)/2;    return sqrt(p*(p-a)*(p-b)*(p-c));}void Triangle::showMessage(){    cout<<"三角形的三边分别为:"<<a<<' '<<b<<' '<<c<<endl;    cout<<"该三角形的周长为:"<<perimeter()<<",面积为:"<<area()<<endl<<endl;}


运行结果:

0 0
原创粉丝点击