C++程序設(shè)計(jì)運(yùn)算符重載實(shí)驗(yàn)報(bào)告_第1頁(yè)
C++程序設(shè)計(jì)運(yùn)算符重載實(shí)驗(yàn)報(bào)告_第2頁(yè)
C++程序設(shè)計(jì)運(yùn)算符重載實(shí)驗(yàn)報(bào)告_第3頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余1頁(yè)可下載查看

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、開(kāi)課學(xué)期:2015至2016 學(xué)年 第1 學(xué)期專業(yè):計(jì)算機(jī)科學(xué)與技術(shù)年級(jí)班級(jí):13計(jì)科學(xué)生姓名:侯瑄 學(xué)號(hào):2實(shí)驗(yàn)教師:陳陳睿計(jì)算機(jī)與信息科學(xué)學(xué)院軟件學(xué)院實(shí)驗(yàn)項(xiàng)目名稱C+程序設(shè)計(jì)運(yùn)算符重載實(shí)驗(yàn)時(shí)間實(shí)驗(yàn)類型驗(yàn)證性 設(shè)計(jì)性 綜合性一、實(shí)驗(yàn)?zāi)康暮鸵螅?)掌握通過(guò)運(yùn)算符重載實(shí)現(xiàn)多態(tài)性的方法;(2) 學(xué)會(huì)運(yùn)算符重載的成員函數(shù)法和友元函數(shù)法;?(3)能區(qū)分單目運(yùn)算符的前置與后置。二、實(shí)驗(yàn)內(nèi)容與設(shè)計(jì)(主要內(nèi)容,操作步驟、算法描述或程序代碼)本次實(shí)驗(yàn)主要實(shí)現(xiàn)以下內(nèi)容:【項(xiàng)目?jī)?nèi)容】?定義一個(gè)復(fù)數(shù)類 Complex,重載運(yùn)算符 “+”,“ - ”,“* ”,“/ ” “+” “ - ”“ >”“<”

2、, 使之能用于復(fù)數(shù)的加、 減、乘、除、自增、自減、比較大小。運(yùn)算符重載函數(shù)作為 Complex 類的成員函數(shù)。編程序,分別求兩個(gè)復(fù)數(shù)之和、差、積、商、自增、自減、比較大小。?提示:注意復(fù)數(shù)的乘、除法計(jì)算。Ps :同時(shí)注意復(fù)數(shù)的顯示。程序設(shè)計(jì)如下:(基于vs2010運(yùn)行) / redow n. cpp :定義控制臺(tái)應(yīng)用程序的入口點(diǎn)。#i nclude "stdafx.h"#include <iostream>using namespacestd; class Complex private :double r, i;public :Complex ( double

3、 R=0, double l=O):r(R), i(l);Complex operator +(Complex b);/L1復(fù)數(shù)加法Complex operator -(Complex b);/L2復(fù)數(shù)減法frie ndComplex operator *(Complex a,Complex b);L3復(fù)數(shù)乘法frie ndComplex operator /(Complex a,Complex b);L4復(fù)數(shù)除法frie ndComplex operator -(Complex a);/L5復(fù)數(shù)自減frie ndComplex operator +(Complex a);/L6復(fù)數(shù)自增fri

4、e ndbool operator >(Complex a,Complex b);/L7復(fù)數(shù)的比較frie ndbool operator <(Complex a,Complex b);voiddisplay();/ 重載 + and Complex Complex: operator +(Complex b) return Complex(r+b.r,i+b.i);Complex Complex: operator -(Complex b)return Complex(r-b.r,i-b.i);/重載*Complex operator *(Complex a,Complex b)

5、Complex t;t.r=a.r*b.r-a.i*b.i;t.i=b.r*b.i+b.i*b.r;return t;/重載/Complex operator /(Complex a,Complex b) Complex t;double x;x=1/(b.r*b.r+b.i*b.i);t.r=x*(a.r*b.r+a.i*b.i);t.i=x*(a.i*b.r-a.r*b.i);return t;/重載Complex operator -(Complex a)Complex t;Complex y(1,1);t = a - y; return t;/重載+Complex operator +

6、(Complex a)Complex t;Complex y(1,1);t = a + y; return t;/重載>bool operator >(Complex a,Complex b) Complex t;t = a-b;if (t.r>0)&&(t.i>0)return 1;elsereturn 0;/重載<bool operator <(Complex a,Complex b) Complex t; t = a-b;if (t.r<0)&&(t.i<0)return 1;elsereturn 0;/定義

7、復(fù)數(shù)的顯示void Complex:display()cout«r;if (i>0) cout<< "+"if (i!=0) coutvvivv "i" <<endl;void main( void ) Complex c1(1,2),c2(3,4),c3,c4,c5,c6,c7,c8; c3=c1+c2;c4=c1-c2;c5=c1*c2;c6=c1/c2;c7=c2+;c8=c2-;cout« "c1的數(shù)值為"c1.display();cout<< "c2的數(shù)

8、值為"c2.display();cout« "c3=c1+c2,所以 c3 的數(shù)值為"c3.display();cout« "c4=c1-c2,所以 c4 的數(shù)值為"c4.display();cout« "c5=c1*c2,所以 c5 的數(shù)值為"c5.display();cout« "c6=c1/c2,所以 c6 的數(shù)值為"c6.display();cout«"c7=c2+,所以c7的數(shù)值為“;c7.display();cout<<

9、"c8=c2-,所以 c8的數(shù)值為";c8.display();cout<<"比較 c8>c7?"cout<< (c8>c7? "ture" : "false");cout<< "n"cout<< "比較 c8<c7?"cout<< (c8<c7? "ture" : "false");system( "pause");三、測(cè)試數(shù)據(jù)和執(zhí)行結(jié)果(在給定數(shù)據(jù)下,執(zhí)行操作、算法和程序的結(jié)果,可使用數(shù)據(jù)、圖表、截圖等給出)程序運(yùn)行如圖:四、實(shí)驗(yàn)結(jié)果分析及總結(jié)(對(duì)實(shí)驗(yàn)的結(jié)果是否達(dá)到預(yù)期進(jìn)行分析,總結(jié)實(shí)驗(yàn) 的收獲和存在的問(wèn)題等)通過(guò)此次實(shí)驗(yàn)我對(duì)于運(yùn)算符的重載有了一定的了解認(rèn)識(shí)和掌握,對(duì)于友元,二元,一 元,特殊等運(yùn)算符也有了清楚的認(rèn)知,同時(shí)明白了這些運(yùn)算符應(yīng)該如何重載以及不能重 載的運(yùn)算符有 *

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論