程序設計與算法(三)第02周測驗003:超簡單的複數類

程序設計與算法(三)第02周測驗003:超簡單的複數類

本文是中國大學MOOC,北京大學程序設計與算法(三)C++面向對象程序設計第二週測驗。

  • 總時間限制:

    1000ms

  • 內存限制:

    65536kB

  • 描述

    下面程序的輸出是:3+4i 5+6i請補足Complex類的成員函數。不能加成員變量。

    #include <iostream>
    #include <cstring>
    #include <cstdlib>
    using namespace std;
    class Complex {
    private:
        double r,i;
    public:
        void Print() {
            cout << r << "+" << i << "i" << endl;
        }
    // 在此處補充你的代碼
    };
    int main() {
        Complex a;
        a = "3+4i"; a.Print();
        a = "5+6i"; a.Print();
        return 0;
    }
    
  • 輸入

  • 輸出

    3+4i 5+6i

  • 樣例輸入

  • 樣例輸出

    3+4i 5+6i

結合

    void Print() {
        cout << r << "+" << i << "i" << endl;
    }
    a = "3+4i"; a.Print();
    a = "5+6i"; a.Print();

我們知道我們要寫一個函數將3+4i的實部與虛部拆分爲ri並輸出。

將字符串轉換爲ri,我們知道這個函數是類型轉換構造函數

所以我們可以寫成這樣:

    Complex(){}	//有定義Complex a,所以必須寫個無參構造函數
    Complex(char x[])
    {
        r=x[0]-'0';
        i=x[2]-'0';
    }

不要複雜化問題,題目輸入只是3+4i5+6i,不要整出substr的幺蛾子

提交,通過,記得下載通過碼

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章