1樓:匿名使用者
#include #includeusing namespace std;class complex void print (void) const const complex operator+ (const complex& c) const private: int m_r; // 實部 int m_i; // 虛部};int main (void)
希望對你能有所幫助。
2樓:匿名使用者
#include
using namespace std;
class
complex
;complex::complex()
complex::complex(int
r,int i)
ostream &operator <<(ostream &output,complex
void
complex::display()
c++ 一個複數類,運算子過載 + ,實現複數和複數的相加。
3樓:du小蝦
#include
using namespace std;
class complex
float geta()
float getb()
private:
float a;//實數
float b;//虛數
int main()
{complex com1(3,2),com2(2,1),com3(3,0),com4(0,2),com5(0,0);
complex com;
com = com1+com2+com3+com4+com5;
cout<
4樓:
c++過載 << 運算子 用於輸出複數
5樓:阿君
宣告為友元類,friend ostream &operator<<
實現部分:ostream &operator<<
6樓:書道聖儒
//過載輸出運算子"<<"
#include
class ccomplex
ccomplex(double rv)
ccomplex(double rv,double iv)
friend ccomplex operator + (ccomplex c1,ccomplex c2);
//作為類的友元函式,過載加運算子,
friend ostream& operator<<(ostream& stream,ccomplex c);
//過載輸出運算子"<<"
~ccomplex() {};
private:
double real; //複數的實部
double image; //複數的虛部
};ccomplex operator +( ccomplex c1,ccomplex c2)
ostream& operator<<(ostream &stream, ccomplex c)
int main( )
定義一個複數類,通過過載運算子=,+=,-=,+,-,*,直接實現兩個複數之間的各種計算。用c++做。
7樓:神奇浪漫
初中 的知識了。。 你把負數的公式 找到 照寫就可以了。
8樓:神龍見尾不見
#include
#include
#include
class complex
complex(int x=0,int y=0):real(x),image(y)
return *this;
void show()
};void main()
c++ 中如何過載運算子"="用於複數的賦值。
9樓:匿名使用者
=過載時必須作為成員函式,因此應該比正常使用函式時少一個引數。而且複數賦值後的返回值應該也是一個複數類物件,所以應改為返回型別用引用是為了提高效率
10樓:匿名使用者
根據c++語言定義,=,,(),->這四種操作符過載必須被實現為成員函式。所以應該是
cpoint& cpoint::operator=(const cpoint& a);
(c++)定義一個複數類complex,過載運算子「+」,使之能用於複數的加法運算。
11樓:大野瘦子
**為:
#include //用vc++時改為∶ #includeusing namespace std; //用vc++時為取消此行
class complex
complex operator+(int &i);
friend complex operator+(int&,complex &);
void display();
private:
double real;
double imag;
{complex c1(3,4),c2(5,-10),c3;
int i=5;
c3=c1+c2;
cout<<"c1+c2=";
c3.display();
c3=i+c1;
cout<<"i+c1=";
c3.display();
c3=c1+i;
cout<<"c1+i=";
c3.display();
return 0;
12樓:
#include
using namespace std;
class complex
friend ostream& operator << (ostream&,complex&); //宣告過載運算子「<<」
friend istream& operator >> (istream&,complex&); //宣告過載運算子「>>」
private:
double real;
double imag;
ostream& operator << (ostream& output,complex& c) //定義過載運算子「<<」
int main( )
13樓:問明
#include<iostream>
usingnamespacestd;
classcomplex
public:
complex(){real=0;imag=0;}//預設建構函式
complex(doubler){real=r;imag=0;}//轉換建構函式
complex(doubler,doublei){real=r;imag=i;}//建構函式
friendcomplexoperator+(complexc1,complexc2);//過載運算子+函式為友元函式
voiddisplay();//定義display函式
private:
doublereal;
doubleimag;
//過載運算子+函式
complexoperator+(complexc1,complexc2)
returncomplex(c1.real+c2.real,c1.imag+c2.imag);
//display函式
voidcomplex::display()
cout<<"("<<real;
if(imag>=0)cout<<"+";
cout<<imag<<"i)"<<endl;
intmain()
complexc1(4,5),c2(3,-7),c3;//定義complex類物件c1,c2,c3
inti;
c3=c1+c2;
c3.display();
cout<<"pleaseenternumber:";
cin>>i;
c3=i+c1;
c3.display();
c3=c1+i;
c3.display();
system("pause");
return0;
double用法
double是c語言中的雙精度浮點數型別,用來表示實數。
1定義:
doublevar_name;
這樣定義一個名字為var_name的double型別變數。
2賦值:
var_name=100.325;
同其它型別的賦值語句一樣,對var_name賦值用=運算子,右側可以是任意表示式。
3輸入:
scanf("%lf",&var_name);
%lf格式符號對應double,可以用來對double型別輸入,以下輸出類似。
4輸出:
printf("%lf",var_name);
請問誰能用c++實現複數運算 不用過載功能
14樓:小志
要想使用加減號進行復數的運算,必須過載這幾個運算子。否則只能像呼叫一般的成員函式一樣處理
c 運算子過載,c 運算子過載
其實第一個回答的程式已經ok了,這裡簡要說明一下 首先,名稱空間的問題。cout endl以及ostream都是定義在std這個名稱空間下的,因此在使用前必須包含這個一個using指示 using namespace std 表明可以使用std裡面的所有內容。除此以外還有兩種選擇 1.使用作用域運算...
C 運算子過載
其實很簡單,只要你對類的建構函式和解構函式了解的差不多。首先說第一個問題 為什麼會突然出現 string t p 在函式 string operator const char p 中,它接受一個字元指標p,返回一個string類物件,這個你懂吧?這就好辦了,這個函式想返回一個string類物件,必須...
C運算子過載
我想樓主主要是想看到過載函式的實現過程,所以我自動給參加運算的複數付值。考慮你是初學者,我都用的是很簡單的語句寫的,都是一看就懂的句子。include using namespace std class complex private double m image 描述實部 double m rea...