第二章實驗

2021-08-20 12:58:37 字數 3164 閱讀 8162

一:實驗目的和要求

1.熟悉引用的概念,掌握引用的定義方法,學會引用在c++程式中的應用。

2.掌握函式的定義和呼叫方法。

3.練習過載函式的使用。

二:實驗內容

1.除錯下列程式,寫出輸出結果,並解釋輸出結果。

(1)[cpp] 

view plain

copy

//(1)sy2_1.cpp

#include

using

namespace

std;  

intmain()  

程式執行結果如下:

解釋結果如下:

程式分析:首先定義了乙個雙精度浮點型(double)dd和de,並給其賦初值3.9和1.3。然後又定義乙個雙精度浮點型(double)的引用rdd和rde,將它們分別與dd和de相聯絡。第一行和第三行輸出結果rdd+rde和dd+de都為5.2是因為開始賦初值的和是5.2,「&rdd=dd,&rde=de」相當於給dd和de取乙個別名。第二行輸出結果都為2.6,是因為給rdd賦的初始值是2.6,所以輸出rdd為2.6,dd也為2.6是因為rdd為dd的別名,它們使用同乙個位址。

(2)[cpp] 

view plain

copy

//(2)sy2_2.cpp

#include

using

namespace

std;  

intmain()  

void

fun(

intm,

int&n)  

程式執行結果如下:

解釋結果如下:

從程式中可以看出,在主函式中定義了a和b並給a和b賦初值2和3。當程式呼叫函式void fun時,實參a和b分別初始化引用m和n,所以在函式fun中,對m和n的訪問就是對a和b的訪問,函式fun中改變了main函式中的物件a、b的值,就相當於a=2*4=8,b=3*4=12,所以a+b=20。

(3)[cpp] 

view plain

copy

//(3)sy2_3.cpp

#include

using

namespace

std;  

int&fun(

int);  

intaa[5];  

intmain()  

int&fun(

inta)  

程式執行結果如下:

輸出結果解釋如下:

首先定義乙個整數a並給a賦初值5,先輸出a的值5,程式中用到了for迴圈語句和陣列,每次加1,最後再輸出長度為5的陣列,所以最後輸出結果為5,6,7,8,9。

2.程式設計完成下列任務。

(1)編寫乙個函式,用於將華氏溫度轉換為攝氏溫度,轉換公式為:c=(f-32)*5/9。(sy2_4.cpp)

編寫程式如下:

[cpp] 

view plain

copy

//sy2_4.cpp

#include

using

namespace

std;  

intmain()  

程式執行結果如下:

(2)編寫過載函式max1可分別求取2個整數、3個整數、2 個雙精度數和3個雙精度數的最大值。(sy2_5.cpp)

編寫程式如下:

[cpp] 

view plain

copy

#include

using

namespace

std;  

intmax1(

inta,

intb)  

intmax1(

inta,

intb,

intc)  

double

max1(

double

x,double

y)  

double

max1(

double

x,double

y,double

z)  

intmain()  

程式執行結果如下:

三:分析與討論

1.總結引用的概念及用途。

答:引用的概念:所謂引用,就是給物件取乙個別名,使用該別名可以訪問該物件。換句話說是使新物件和原物件共用乙個位址。這樣,無論對哪個物件進行修改,其實都是對同一位址的內容進行修改。因為原物件和新物件總是具有相同的值。

引用的用途:引用的主要用途是用作函式引數和函式值的返回。

2.函式的定義和呼叫方法。

答:函式的定義:從使用者使用的角度來看,c++有兩種函式:標準庫函式和使用者自定義函式。標準庫函式有c++系統定義並提供給使用者,可以看作對語言功能的擴充。使用者根據特定任務編寫的函式稱為自定義函式。

函式的呼叫方法:函式使用時通過函式呼叫實現。函式呼叫指定了被呼叫函式的名字和呼叫函式所需的資訊(引數)。呼叫函式所提供的實際引數。函式呼叫的一般形式為:函式名(《實引數》),其中《實引數》中的各引數用逗號分隔,實引數可以是常量、變數或表示式,與被呼叫函式形參的個數和型別必須相符。

3.過載函式時通過什麼來區分?

答:編譯系統將根據函式引數的型別和個數來判斷使用哪乙個函式。

實驗小結

通過本次實驗,我們不僅要熟悉引用的概念,掌握引用的定義方法,學會引用在c++程式中的應用,還要掌握函式的定義和呼叫方法以及過載函式的使用。在我們編寫程式的時候首先要有乙個清晰的思路,然後再根據這個思路去寫,可能在編寫的時候會出現一些問題導致程式無法執行,這個時候我們要根據提示的錯誤去修改,看不懂的地方我們可以查閱資料或者問老師。還有在學習新知識的同時我們也要溫習以前學過的東西。

個人分類:

第二章實驗

第二章實驗作業

1.輸入課本各個例題,除錯執行程式,並分析程式,將每乙個程式改寫2到3個版本,自己分析程式結果,然後再除錯執行,核對分析結果的對錯。2.編寫程式輸入乙個三角形的三條邊,計算其面積和周長 3.編寫程式計算並輸出課本本章習題3表示式的值並分析結果。4.編寫乙個程式,輸入乙個一元二次方程的三個係數,並計算...

第二章實驗作業

實驗作業 1.輸入課本各個例題,除錯執行程式,並分析程式,將每乙個程式改寫2到3個版本,自己分析程式結果,然後再除錯執行,核對分析結果的對錯。2.編寫程式輸入乙個三角形的三條邊,計算其面積和周長 3.編寫程式計算並輸出課本本章習題3表示式的值並分析結果。4.編寫乙個程式,輸入乙個一元二次方程的三個係...

第二章C 實驗

2 28 1 用if else 語句 includeusing namespace std int main else if alphabet d else if alphabet s else if alphabet q break else cout import error,please im...