C++ 遍歷數組對象(慕課)


題目:
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;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM