C++实践参考——用对象数组操作长方柱类

返回:贺老师课程教学链接

【项目3-用对象数组操作长方柱类】
编写基于对象的程序,求5个长方柱的体积和表面积。长方柱类Bulk的数据成员包括长(length)、宽(width)、高(heigth)等。
对照已经给出的代码,要做的工作及要求有:

  • 需要你定义长方柱类,代码中已经给出由5个长方柱对象构成的对象数组b;
  • B数组中的前3个对象b[0]、b[1]、b[2]直接参数初始了,需要定义构造函数,而初始化中,各对象提供的参数数目不同,需要有默认参数的构造函数(未给出的参数默认为1.0)
  • 第4个对象b[3]用默认构造函数初始化;
  • 第5个长方柱b[4]定义时不初始化,设计成员函数get_value,由键盘输入长、宽、高;
  • 设计成员函数output,在main中调用输出这5个长方柱的体积和表面积;
int main()
{
     Bulk b[5]={Bulk(2.3,4.5,6.7),Bulk(1.5,3.4),Bulk(10.5)};
     b[4].get_value();
     //下面分别输出这5个长方柱的体积和表面积
}

[参考解答]

#include <iostream>
using namespace std;
class Bulk
{
public:
    Bulk(double x=1.0,double y=1.0,double z=1.0):lengh(x),width(y),height(z) {};
    void get_value();
    void display();
private:
    double lengh;
    double width;
    double height;
};

void Bulk::get_value()
{
    cout<<"please input lengh, width, height:";
    cin>>lengh;
    cin>>width;
    cin>>height;
}

void Bulk::display()
{
    cout<<"    The volume is: "<<lengh*width*height<<endl;
    cout<<"    The surface area is: "<<2*(lengh*width+lengh*height+width*height)<<endl;
    cout<<endl;
}

int main()
{
    Bulk b[5]= {Bulk(2.3,4.5,6.7),Bulk(1.5,3.4),Bulk(10.5)};
    b[4].get_value();
    //下面分别输出这个长方柱的体积和表面积
    for(int i=0; i<5; ++i)
    {
        cout<<"关于b["<<i<<"]"<<endl;
        b[i].display();
    }
    return 0;
}
时间: 2024-09-17 04:00:21

C++实践参考——用对象数组操作长方柱类的相关文章

C++第5周(春)项目3 对象数组操作长方柱类

课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [项目3-对象数组操作长方柱类] 编写基于对象的程序,求5个长方柱的体积和表面积.长方柱类Bulk的数据成员包括长(length).宽(width).高(heigth)等. 对照已经给出的代码,要做的工作及要求有: 需要你定义长方柱类 代码中已经给出由5个长方柱对象构成的对象数组b: B数组中的前3个对象b[0].b[1].b[2]直接参数初始

C++实践参考——长方柱类

返回:贺老师课程教学链接 [项目 - 长方柱类] 编写基于对象的程序,求3个长方柱(Bulk)的体积.数据成员包括长(length).宽(width).高(heigth).体积,要求设计成员函数实现下面的功能: (1)由键盘输入3个长方柱的长.宽.高: (2)计算长方柱的体积(volume)和表面积(areas): (3)输出这3个长方柱的体积和表面积: [参考解答] 写出的程序结构应该如下: class Bulk {//定义需要的成员函数 //定义数据成员 }; //此处实现各成员函数 int

新手写的一个队数组操作的工具类,提供给大家

问题描述 新手写的一个队数组操作的工具类,提供给大家@param本程序为一个单独的工具类,内部没有入口函数,只需要在主函数中调用本类即可@param调用方法1.如果你用的是记事本类的编写工具,只需要将class文件放到你的代码下,设置classpath2.如果你是用的eclipse专用编写工具你需要先将class文件打包:打包命令为jar-cvfarrtool.jar*.*然后添加外置包即可.1.这个是jar文件2.这个是class文件http://download.csdn.net/detai

C++第5周项目3 - 长方柱类

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/8723847 [项目3]编写基于对象的程序,求5个长方柱的体积和表面积.长方柱类Bulk的数据成员包括长(length).宽(width).高(heigth)等.另外: (1)需要定义长方柱类,5个长方柱采用一个对象数组表示: (2)定义相应的构造函数以支持如下

C++第3周(春)项目4 长方柱类

课程首页在:http://blog.csdn.net/sxhelijian/article/details/11890759,内有完整教学方案及资源链接 [项目4 - 长方柱类](改自教材P262第6题)仿照你阅读过的程序,编写基于对象的程序,求3个长方柱(Bulk)的体积.数据成员包括长(length).宽(width).高(heigth).体积,要求设计成员函数实现下面的功能:(1)由键盘输入3个长方柱的长.宽.高:(2)计算长方柱的体积(volume)和表面积(areas):(3)输出这3

C++第3周项目4——长方柱类

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/8661031 [项目4 - 长方柱类](改自教材P262第6题)仿照你阅读过的程序,编写基于对象的程序,求3个长方柱(Bulk)的体积.数据成员包括长(length).宽(width).高(heigth).体积,要求用成员函数实现下面的功能:(1)由键盘输入3个

《C语言及程序设计》实践参考——为动态数组扩容

返回:贺老师课程教学链接 [项目3-为动态数组扩容]下面的程序,利用动态数组保存学生的成绩.当再有一批学生成绩需要保存时,要为之扩容(和吃自助一样,用多少,取多少,这好),请补充完整下面的程序,实现如图所示的功能. #include <stdio.h> #include <malloc.h> int main( ) { int num,i,addNum; //num是小组人数 printf("输入学生人数: "); scanf("%d", &

《C语言及程序设计》实践参考——二维数组当函数参数

返回:贺老师课程教学链接 [项目1-二维数组当函数参数]定义一个函数来完成对参数数组中元素的排序工作,函数声明如下: int sum(int array[ ][4],int m,int n); //该函数完成对array数组中的前m行和n列元素求和 在以下程序的基础上,完成对sum函数的定义. #include <stdio.h> int sum(int array[ ][4],int m,int n);//该函数完成对array数组中的前m行和n列元素求和 int main() { int

《C++语言基础》实践参考——我的数组类

返回:贺老师课程教学链接 [项目2-我的数组类]下面的程序,因为存在指针类型的数据成员,需要能完成深复制的构造函数.请补充完整构造函数和析构函数(其他不必动).其中,构造函数要完成下面三个任务:(1)为各成员函数赋值,按照深复制原则,其中arrayAddr应该是为保存数据新分配的连续空间的首地址:(2)MyArray(int *a, int n)中,要将a指向的数组中的数值,逐个地复制到新分配的arrayAddr指向的空间中:(3)getMax( )函数采取的策略是直接返回max(所以,计算ma