第五周项目1构造函数

来源:互联网 发布:java程序员考试 编辑:程序博客网 时间:2024/05/17 09:00
/*  * 程序的版权和版本声明部分:  * Copyright (c) 2013, 烟台大学计算机学院  * All rights reserved.  * 文件名称:test.cpp  * 作    者:李果  * 完成日期:2013 年 4月 17日  * 版 本 号:v1.0  * 对任务及求解方法的描述部分: * 输入描述:无  * 问题描述: * 程序输出:* 问题分析:略 * 算法设计:略  */  #include<iostream>   #include<cmath>using namespace std;  class Triangle  {public:  Triangle(){a=1;b=1;c=1;} //第一类:直接构造一个固定三角形Triangle(double x, double y, double z)  {a=x; b=y; c=z;}//第二类,构造一个可以传参的三角形//Triangle(double x=1, double y=1, double z=1) :a(x),b(y),c(z){} //(4)使用参数初始化表,同第二类 //Triangle(double x=1, double y=1, double z=1);//同第二类,函数体定义在外面而已double perimeter(void);//计算三角形的周长   double area(void);//计算并返回三角形的面积   void showMessage();  private:  double a,b,c; //三边为私有成员数据   };  //Triangle::Triangle(double x, double y, double z) //如果不注释的话会定义重复  //{  //    a=x;   //   b=y;   //    c=z;  //}  double Triangle::perimeter(void){if(a+b<=c || a+c<=b || b+c<=a)cout<<"无法构成三角形!"<<endl;elsereturn a+b+c;}double Triangle::area(void){double p,s;if(a+b<=c || a+c<=b || b+c<=a)cout<<"无法构成三角形!"<<endl;else{p=(a+b+c)/2;s=sqrt(p*(p-a)*(p-b)*(p-c)); }return s;}void Triangle:: showMessage()  {  cout<<"三角形的三边长分别为:"<<a<<" "<<b<<" "<<c<<endl;  cout<<"该三角形的周长为:"<< perimeter()<<" "<<"面积为:"<< area()<<endl;  } void main(void)  {  Triangle Tri1;     Tri1.showMessage();  Triangle Tri2(7,8,9);   Tri2.showMessage();  }

原创粉丝点击