程序:
/*
* Copyright(c)2013,
*All right reserved.
*文件名称: test9-1.cpp
*作 者: 徐驰
*完成日期: 2013-12-16
*版 本 号: v1.0
*
*输入描述: 设计三角形类,通过增加构造函数,使对象在定义时能够进行初始化
*问题描述:(1)使用带参数构造函数,即Triangle(double x, double y, double z),三边长在调用时由实参直接给出;
(2)设计默认构造函数,即不指定参数时,默认各边长为1;
(3)使用有默认参数的构造函数,不给定实参时,默认边长为1;
(4)在构造函数中使用参数初始化表对数据成员初始化。
*程序输出:略
*问题分析:略
*算法分析:略
*/
#include<iostream>
#include<Cmath>
using namespace std;
class Triangle
{
private:
int a,b,c;
public:
Triangle(int x=1,int y=1,int z=1):a(x),b(y),c(z){}
int perimeter();
double area();
void show();
};
int Triangle::perimeter()
{
return a+b+c;
}
double Triangle::area()
{
double s;
double p;
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
return s;
}
void Triangle::show()
{
cout<<"三角形的周长为:"<<perimeter()<<"\t"<<"三角形的面积为:"<<area()<<endl;
}
void main()
{
Triangle tri2(3,4,5);
Triangle tri1;
tri1.show();
tri2.show();
}
结果: