第三周项目3-程序的多文件组织

本文详细介绍了如何使用多文件结构实现一个三角形类,并通过主文件与类定义文件之间的协作来操作三角形的属性。通过设置和获取三角形的三边长度,程序能够判断是否构成有效三角形,并计算其周长和面积。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用多文件组织,重新实现项目2。其中,整个项目包括3个文件:
主文件: main.cpp,用于定义main()函数
头文件: triangle.h,头文件,声明类,定义内置成员函数
类定义文件: triangle.cpp,用于定义类Triangle中其他成员函数

注意,将3个set函数和3个get函数设计成内置成员函数,其他函数不作为内置函数。

main.cpp

/*
* Copyright (c) 2015,烟台大学计算机学院
* All right reserved.
* 作者:邵帅
* 文件:Demo.cpp
* 完成时间:2015年03月21日
* 版本号:v1.0
*/
#include<iostream>
#include<cmath>
#include<C:\Users\Mayuko2012\Desktop\Demo\triangle.h>
using namespace std;
int main()
{
    Triangle tri1;	//定义三角形类的一个实例(对象)
    double x,y,z;
    cout<<"请输入三角形的三边:";
    cin>>x>>y>>z;
    tri1.setA(x);
    tri1.setB(y);
    tri1.setC(z);	//为三边置初值
    if(tri1.isTriangle())
    {
        cout<<"三条边为:"<<tri1.getA()<<','<<tri1.getB()<<','<<tri1.getC()<<endl;
        cout<<"三角形的周长为:"<< tri1.perimeter()<<'\t'<<"面积为:"<< tri1.area()<<endl;
    }
    else
        cout<<"不能构成三角形"<<endl;
    return 0;
}



triangle.cpp

#include<C:\Users\Mayuko2012\Desktop\Demo\triangle.h>\\自定义的头文件需要绝对路径
#include<cmath>
bool Triangle::isTriangle()
{
    if (a+b>c && a+c>b && b+c>a)
        return true;
    else
        return false;
}
double Triangle::perimeter()
{
    return (a+b+c);
}
double Triangle::area()
{
    double p,s;
    p=(a+b+c)/2;
    s=sqrt(p*(p-a)*(p-b)*(p-c));
    return s;
}

triangle.h

#ifndef TRIANGLE_H_INCLUDED
#define TRIANGLE_H_INCLUDED
class Triangle
{
public:
    void setA(double x)
    {
        a=x;
    };
    void setB(double y)
    {
        b=y;
    };
    void setC(double z)
    {
        c=z;
    };
    double getA()
    {
        return a;
    };
    double getB()
    {
        return b;
    };
    double getC()
    {
        return c;
    };
    double perimeter(void);//计算三角形的周长
    double area(void);//计算并返回三角形的面积
    bool isTriangle();//判断是否构成三角形
private:
    double a,b,c; //三边为私有成员数据
};



#endif // TRIANGLE_H_INCLUDED

run pic:



@ Mayuko


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值