weixin_59021280 2022-01-13 07:49 采纳率: 100%
浏览 513
已结题

c++程序设计,定义一个长方体cuboid类

  1. 定义一个长方体cuboid类,有数据成员长(len)、宽(wid)和高(hig),成员函数getArea()计算长方体的表面积,成员函数getVolume计算长方体的体积,构造函数实现长方体类对象的初始化。再编写一个main()函数进行测试长为5,宽为4,高为3的长方体的体积和表面积。
  2. 定义一个基类Animal,它包含两个私有数据成员,一个是name,存储动物的名称,另一个是整数成员weight,包含该动物的重量(单位是磅)。该类还包含一个公有成员函数,它可以显示一个消息,给出Animal对象的名称和重量。把Animal用作公共基类,派生两个类Lion和Crocodile。再编写一个main()函数,创建Lion对象(“Leo”,400磅)和Crocodile对象(“Algernon”,50磅)。为派生类对象调用who()成员函数,who()成员函数在两个派生类中是继承得来的。
  3. 定义一个长方形rect类,有数据成员长len和宽wid,成员函数getArea()计算长方形的面积,构造函数实现长方体类对象的初始化。再编写一个main()函数进行测试。
  • 写回答

1条回答 默认 最新

  • 加油吧,小杜 2022-01-13 08:55
    关注

    img


    代码:

    
    class cuboid
    {
    public:
        cuboid(int len, int wid, int hig)
        {
            m_len = len;
            m_wid = wid;
            m_hig = hig;
        }
        ~cuboid() {};
        void getVolume()
        {
            cout << "体积为:" << m_len * m_wid * m_hig << endl;
        }
    private:
        int m_len, m_wid, m_hig;
    };
    
    class Animal
    {
    public:
        Animal(string name, int weight)
        {
            m_name = name;
            m_weight = weight;
        }
        ~Animal() {};
        void who()
        {
            cout << "name = " << m_name << " weight = " << m_weight << endl;
        }
    private:
        string m_name;
        int m_weight;
    };
    
    class Lion :public Animal
    {
    public:
        Lion(string name, int weight) :Animal(name, weight)
        {
    
        }
        ~Lion() {};
    };
    
    class Crocodile :public Animal
    {
    public:
        Crocodile(string name, int weight) :Animal(name, weight)
        {
    
        }
        ~Crocodile() {};
    };
    
    class rect
    {
    public:
        rect(int len, int wid)
        {
            m_len = len;
            m_wid = wid;
        }
        ~rect() {};
    
        void getArea()
        {
            cout << "面积为:" << m_len * m_wid << endl;
        }
    
    private:
        int m_len, m_wid;
    };
    
    int main()
    {
        //第一问
        cuboid cub(5, 4, 3);
        cub.getVolume();
    
        //第二问
        Lion lion("Leo", 400);
        Crocodile cor("Algernon", 50);
        lion.who();
        cor.who();
    
        //第三问
        rect rec(10, 20);
        rec.getArea();
    
        return 0;
    }
    

    不过看你应该还是学生,建议你遇到问题还是需要自己多想一想。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月21日
  • 已采纳回答 1月13日
  • 创建了问题 1月13日

悬赏问题

  • ¥15 matlab中使用gurobi时报错
  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂