第五章项目1——(5)三角形类雏形

来源:互联网 发布:微信公众号授权域名 编辑:程序博客网 时间:2024/06/05 06:59

问题及代码:

/* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名称:main.cpp * 作    者:赵志君 * 完成日期:2016年3月27日 * 版 本 号:v1.0 * * 问题描述:设置一个三角形类 */#include <iostream>#include<cmath>using namespace std;class Triangle{public:    Triangle(double x=1,double y=1,double z=1):a(x),b(y),c(z){}    Triangle(const Triangle &p);    void area();    inline void perimeter();    void showMessage();private:    double a,b,c,are,per;  //三边为私有成员数据};int main(){    Triangle Tri1(3,4,5);            //定义边长为1 1 1的三角形类实例    Tri1.showMessage();    Triangle Tri2(Tri1);       //调用赋值构造函数    Tri2.showMessage();    return 0;}Triangle::Triangle(const Triangle &p){    a=p.a;    b=p.b;    c=p.c;}inline void Triangle::perimeter(){    per=a+b+c;}void Triangle::area(){    double s;    s=(a+b+c)/2;    are=sqrt(s*(s-a)*(s-b)*(s-c));}void Triangle::showMessage(){    if(a+b>c && a+c>b && b+c>a)   //isTriangle()返回值为布尔型,用于判断给出的三边是否能构成一个三角形    {        perimeter();        area();        cout<<"三角形的周长为:"<<per<<'\t'<<"面积为:"<<are<<endl;    }    else        cout<<"不能构成三角形"<<endl;}

运行结果:



学习心得:复制构造函数的调用联系

0 0