求立方体表面积和体积,哪里错了
#include<iostream>using namespace std;
class cube
{
public:
void setL(int l)
{
m_L=l;
}
int getl()
{
return m_L;
}
void setW(int w)
{
m_W=w;
}
int getw()
{
return m_W;
}
void setH(int h)
{
m_H=h;
}
int geth()
{
return m_H;
}
int getV()
{
return m_L*m_W*m_H;
}
int getS()
{
return 2*(m_L*m_W+m_L*m_H+m_W*m_H);
}
private:
int m_L;
int m_W;
int m_H;
};
int main()
{
cube c1;
c1.setW(10);
c1.setW(10);
c1.setH(10);
cout<<"面积为"<<c1.getS()<<endl;
cout<<"体积为"<<c1.getV()<<endl;
return 0;
} 在这段代码中,你有一个名为 cube 的类,它具有 setL , getl , setW , getw , setH , geth , getV 和 getS 的成员函数。在主函数中,你创建了一个名为 c1 的 cube 对象,并使用 setW 和 setH 函数设置了宽度和高度。然后,你使用 getS 函数计算并打印出立方体的表面积,使用 getV 函数计算并打印出立方体的体积。
然而,你在设置宽度时出现了错误。你应该使用 setL 函数设置立方体的长度,而不是使用 setW 函数。所以,你需要将 c1.setW(10); 改为 c1.setL(10); 。
修改后的代码如下:
#include<iostream>
using namespace std;
class cube
{
public:
void setL(int l)
{
m_L=l;
}
int getl()
{
return m_L;
}
void setW(int w)
{
m_W=w;
}
int getw()
{
return m_W;
}
void setH(int h)
{
m_H=h;
}
int geth()
{
return m_H;
}
int getV()
{
return m_L*m_W*m_H;
}
int getS()
{
return 2*(m_L*m_W+m_L*m_H+m_W*m_H);
}
private:
int m_L;
int m_W;
int m_H;
};
int main()
{
cube c1;
c1.setL(10);
c1.setW(10);
c1.setH(10);
cout<<"面积为"<<c1.getS()<<endl;
cout<<"体积为"<<c1.getV()<<endl;
return 0;
}
现在,你应该能够正确计算并打印出立方体的表面积和体积。
页:
[1]