码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 遍历数组对象

时间:2020-04-29 18:14:22      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:精度控制   turn   circle   使用   10个   圆周率   for循环   def   一个   

题目:
1. 编写类Circle。

2. 编写主函数,利用 std::array 创建包含10个对象的Circle数组并初始化。

3. 用基于范围的for循环遍历Circle数组,求10个Circie对象的面积之和。

题目内容:

类Circle有两个构造函数。无参构造函数没有函数体,使用default关键字声明。有参构造函数接收一个double类型参数作为Circle的半径。Circle类的半径的默认值是1.0

类Circle有一个 double getArea() 函数,返回圆的面积。圆周率的值取 3.14

在主函数中用 std::array 声明一个有10个Circle对象的数组。其中前5个Circle对象的半径分别设置为1.0、2.0、3.0、4.0、5.0。后5个对象使用Circle的默认构造函数初始化。

在主函数中,用基于范围的for循环遍历Circle数组,求10个Circie对象的面积之和

在主函数中,输出所求出的面积和。输出结果为双精度浮点数。使用系统默认精度。无需做格式和精度控制。

代码:

#include <iostream>
#include <array>
class Circle {
public:
  Circle() = default;
  Circle(double r) {
    this->r = r;
  }
  double getArea() {
    double area = 3.14 * r * r;
    return area;
  }
private:
  double r{ 1.0 };
};
int main()
{
  std::array<Circle, 10> arr{ 1.0,2.0,3.0,4.0,5.0 };
  double sumArea{ 0.0 };
  for (auto x : arr) {
    sumArea += x.getArea();
  }
  std::cout << sumArea;
  return 0;
}

C++ 遍历数组对象

标签:精度控制   turn   circle   使用   10个   圆周率   for循环   def   一个   

原文地址:https://www.cnblogs.com/walkwaters/p/12803477.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!