| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 702 人关注过本帖
标题:通过函数来实现复数相加
只看楼主 加入收藏
hmsabc
Rank: 2
来 自:贵州省兴义市
等 级:论坛游民
帖 子:97
专家分:19
注 册:2010-8-2
结帖率:100%
收藏
 问题点数:0 回复次数:0 
通过函数来实现复数相加
程序代码:
//通过函数来实现复数相加

#include <iostream>

using namespace std;

class Complex                      //定义 Complex

{ public:

    Complex( ){ real = 0; imag =0;}                //定义无参构造函数,并初始化

    Complex( double r, double i){ real = r; imag = i;}             //构造函数重载,定义并初始化

    Complex complex_add( Complex &c2);         /*声明复数相加的函数,这个函数是正在定义的 Complex 类,c2 是 

                                                 complex 类的引用 */

    void display( );                                               //声明输出函数

    private:

        double real;                                               //实部

        double imag;                                               //虚部

};

Complex Complex::complex_add( Complex &c2)                        //定义复数相加的函数

{ Complex c;

c.real = real + c2.real;                                          //两个复数的实部相加

c.imag = imag + c2.imag;                                          //两个复数的虚部相加

return c;}


void Complex::display( )                                          //定义输出函数

{ cout << "(" << real << "," << imag << "i)" << endl;}



int main( )
{
    Complex c1( 3,4),c2( 5,-10),c3;                          //定义三个复数对象,建立对象时自动调用有参构造函数并赋值

    c3 = ( c2);                        //调用复数相加函数,注意这里是通过 c1 调用 complex_add 函数的

    cout << "c1 =";c1.display( );                            //输出 c1 的值

    cout << "c2 =";c2.display( );                            //输出 c2 的值

    cout << "c1 + c2 =";c3.display( );                       //输出 c3 的值

    system("pause");
   
    return 0;
}

/*
在 Complex 类中定义一个 complex_add 函数,其作用是将两个复数相加,在该函数体中定义一个 Complex 类对象 c 作为临时对象。

其后的两个赋值语句相当于

                     c.real = this -> real + c2.real;

                     c.imag = this -> imag + c2.imag

this 是当前对象的指针。现在,在 main 函数中是通过对象 c1 调用 complex_add 函数的,因此,以上两句相当于

                     c.real = c1.real + c2.real;

                     c.imag = c1.imag + c2.imag;

注意函数的返回值是 Complex 类对象 c 的值。
*/


[ 本帖最后由 hmsabc 于 2010-8-13 09:26 编辑 ]
搜索更多相关主题的帖子: 复数 函数 相加 
2010-08-13 09:22
快速回复:通过函数来实现复数相加
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027452 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved