第5周-任务3-长方柱类数组

2024-03-03 11:48
文章标签 数组 任务 方柱

本文主要是介绍第5周-任务3-长方柱类数组,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

题目】编写基于对象的程序,求5个长方柱的体积和表面积。长方柱类的数据成员包括长(length)、宽(width)、高(heigth)等。另外:

(1)需要定义长方柱类,5个长方柱采用一个对象数组表示;

(2)前4个长方柱(即数组的前4个元素)要在定义数组时初始化,其中前3个直接给出参数初始化,第4、5个用默认构造函数初始化;然后第5个长方柱由键盘输入长、宽、高;

(3)输出这5个长方柱的体积和表面积;


 【分析】定义出长方类并不困难。根据题目中的要求,可以知道需要定义的成员函数有:

  • 构造函数;
  • 输入数据成员的函数;
  • 输出体积和表面积的函数(求体积和表面积的函数可以专门定义,也可以将相应功能在输出函数中实现)。


【参考程序】

#include <iostream>
using namespace std;
class Bulk
{
public:Bulk():lengh(1.0),width(1.0),height(1.0){};//默认构造函数Bulk(doublex,double y,doublez):lengh(x),width(y),height(z){};//带参数的构造函数void set_value();void display();
private:double lengh;double width;double height;
};void Bulk::set_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()
{Bulkb[5]={Bulk(2.3,4.5,6.7),Bulk(1.5,3.4,9.5),Bulk(10.5,22.3,3.14)};//前三个元素用带参构造函数初始化,后两个用默认构造函数b[4].set_value();  //注意b[4]是一个对象,调用成员函数的形式b[4].set_value()for(int i=0;i<5;++i){cout<<"关于b["<<i<<"]"<<endl;b[i].display();//调用对象数组中元素的成员函数}system("pause");return 0;
}


这篇关于第5周-任务3-长方柱类数组的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/769520

相关文章

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

如何使用Python实现一个简单的window任务管理器

《如何使用Python实现一个简单的window任务管理器》这篇文章主要为大家详细介绍了如何使用Python实现一个简单的window任务管理器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 任务管理器效果图完整代码import tkinter as tkfrom tkinter i

C++原地删除有序数组重复项的N种方法

《C++原地删除有序数组重复项的N种方法》给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度,不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(... 目录一、问题二、问题分析三、算法实现四、问题变体:最多保留两次五、分析和代码实现5.1、问题分析5.

Spring Boot 集成 Quartz 使用Cron 表达式实现定时任务

《SpringBoot集成Quartz使用Cron表达式实现定时任务》本文介绍了如何在SpringBoot项目中集成Quartz并使用Cron表达式进行任务调度,通过添加Quartz依赖、创... 目录前言1. 添加 Quartz 依赖2. 创建 Quartz 任务3. 配置 Quartz 任务调度4. 启

Java使用多线程处理未知任务数的方案介绍

《Java使用多线程处理未知任务数的方案介绍》这篇文章主要为大家详细介绍了Java如何使用多线程实现处理未知任务数,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 知道任务个数,你可以定义好线程数规则,生成线程数去跑代码说明:1.虚拟线程池:使用 Executors.newVir

Spring Boot中定时任务Cron表达式的终极指南最佳实践记录

《SpringBoot中定时任务Cron表达式的终极指南最佳实践记录》本文详细介绍了SpringBoot中定时任务的实现方法,特别是Cron表达式的使用技巧和高级用法,从基础语法到复杂场景,从快速启... 目录一、Cron表达式基础1.1 Cron表达式结构1.2 核心语法规则二、Spring Boot中定

Java中数组转换为列表的两种实现方式(超简单)

《Java中数组转换为列表的两种实现方式(超简单)》本文介绍了在Java中将数组转换为列表的两种常见方法使用Arrays.asList和Java8的StreamAPI,Arrays.asList方法简... 目录1. 使用Java Collections框架(Arrays.asList)1.1 示例代码1.

C++一个数组赋值给另一个数组方式

《C++一个数组赋值给另一个数组方式》文章介绍了三种在C++中将一个数组赋值给另一个数组的方法:使用循环逐个元素赋值、使用标准库函数std::copy或std::memcpy以及使用标准库容器,每种方... 目录C++一个数组赋值给另一个数组循环遍历赋值使用标准库中的函数 std::copy 或 std::

C++初始化数组的几种常见方法(简单易懂)

《C++初始化数组的几种常见方法(简单易懂)》本文介绍了C++中数组的初始化方法,包括一维数组和二维数组的初始化,以及用new动态初始化数组,在C++11及以上版本中,还提供了使用std::array... 目录1、初始化一维数组1.1、使用列表初始化(推荐方式)1.2、初始化部分列表1.3、使用std::

C++ Primer 多维数组的使用

《C++Primer多维数组的使用》本文主要介绍了多维数组在C++语言中的定义、初始化、下标引用以及使用范围for语句处理多维数组的方法,具有一定的参考价值,感兴趣的可以了解一下... 目录多维数组多维数组的初始化多维数组的下标引用使用范围for语句处理多维数组指针和多维数组多维数组严格来说,C++语言没