AO·GU612 2022-03-20 22:10 采纳率: 66.7%
浏览 279
已结题

使用类计算长方体体积

大家帮帮忙,真的不知道哪里错了,一直编译错误,希望给串代码参考一下

需要求3个长方体的体积,请编写一个基于对象的程序。数据成员抱愧哦length、width、height。要求用成员函数实现以下功能:
(1)由键盘分别输入长方体的长、宽、高(要求校验输入数据的合法性,如果任一数据小于0,则长宽高直接置为0,并显示"ERROR!",否则显示"OK!");
(2)计算长方体的体积;
(3)输出长方体的体积(先输出长宽高信息,再输出体积)
类和函数接口如:
class Cube{
public:
void set_value(int len,int wd,int ht);
int cal_volume();
void show();
private:
int length,width,height;
};
裁判测试程序样例
在这里给出函数被调用进行测试的例子:
int main()
{
int x,y,z;
Cube c;
cin>>x>>y>>z;
c.set_value(x,y,z);
c.show();
return 0;
}

/* 请在这里填写答案 */

  • 写回答

2条回答 默认 最新

  • 关注

    参考代码如下:

    #include <iostream>
    using namespace std;
    
    class Cube
    {
    public:
        void set_value(int len, int wd, int ht);
        int cal_volume();
        void show();
    private:
        int length, width, height;
    };
    int main()
    {
        int x, y, z;
        Cube c;
        cin >> x >> y >> z;
        c.set_value(x, y, z);
        c.show();
        return 0;
    }
    
    /* 请在这里填写答案 */
    void Cube::set_value(int len, int wd, int ht){
        if (len<0 || wd<0 || ht<0)
        {
            length = 0;
            width = 0;
            height = 0;
            cout << "ERROR!" << endl;
        }
        else
        {
            length = len;
            width = wd;
            height = ht;
            cout << "OK!" << endl;
        }
    }
    int Cube::cal_volume()
    {
        return length * width * height;
    }
    void Cube::show()
    {
        cout << "长:" << length << endl;
        cout << "宽:" << width << endl;
        cout << "高:" << height << endl;
        cout << "体积:" << cal_volume() << endl;
    }
    
    

    img

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月19日
  • 已采纳回答 4月11日
  • 创建了问题 3月20日

悬赏问题

  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加