練習6.1;實參和形參的區別是什麼?
練習6.2:請指出下列函式哪個有錯誤,為什麼?應該如何修改這些錯誤呢?
(a). int f()
(b) f2(int i)
(c) int calc(int v1, int v2) /*…*/ }
(d) double square(double x) return x*x;
練習6.3:編寫你自己的fact函式,上機檢查是否正確。
練習6.4:編寫乙個與使用者互動的函式,要求使用者輸入乙個數字,計算生成該數字的階乘。在main函式中呼叫該函式。
練習6.5:編寫乙個函式輸出實參的絕對值。
答:練習6.1:
實參是形參的初始值。編譯器能以任意可行的順序對實參求值。實參的型別必須與對應的形參型別匹配。
練習6.2:修正後
(a)string f()
(b)int f2(int i)
(c) int calc(int v1, int v2)
(d) double square(double x)
練習6.3 – 6.5見雲盤程式。
/*
*練習6.3
*2015/6/8
*問題描述:練習6.3:編寫你自己的fact函式,上機檢查是否正確。
*功能:階乘
* */
#include
#include
using
namespace
std;
void fact(int val)
if (val == 0)
if (val < 0)
catch(runtime_error err)
}
}int main()
練習6.4
/*
*練習6.4
*2015/6/8
*問題描述:練習6.4:編寫乙個與使用者互動的函式,要求使用者輸入乙個數字,計算生成該數字的階乘。在main函式中呼叫該函式。
*功能:階乘
* */
#include
#include
using
namespace
std;
void fact()
else
if (val == 0)
cout
<< "the result is: 1"
<< endl;
else
try catch(runtime_error err)
} }int main()
練習6.5
/*
*練習6.5
*2015/6/8
*問題描述:練習6.5:編寫乙個函式輸出實參的絕對值。
*功能:求絕對值
* */
#include
using
namespace
std;
void abs() }
int main()
C Primer第五版 2 4 3節練習
練習2.30 對於下面的這些語句,請說明物件被宣告成了頂層const還是底層const?const int v2 0 v2的值不能被改變,所以這是乙個頂層const int v1 v2 int p1 v1,r1 v1 const int p2 v2 p2存放的是v2的位址,不能間接改變v2的值,但p...
C Primer第五版 2 5 3節練習
練習 2.36 關於下面的 請指出乙個變數的型別以及程式結束時它們各自的值。include int main 練習 2.37 賦值是會產生引用的一類典型表示式,引用的型別就是左值的型別。也就是說,如果i是int,則表示式 i x的型別是int 根據這一特點,請指出下面的 中每乙個變數的型別和值。in...
C Primer第五版 3 2 2節練習
練習3.2 編寫一段程式從標準輸入中一次讀入一整行,然後修改該程式使其一次讀入乙個詞。練習3.3 請說明string類的輸入運算子和getline函式分別是如何處理空白字元的。練習 3.4 編寫一段程式讀入兩個字串,比較其是否相等並輸出結果。如果不相等,輸出較大的那個字串。改寫上述程式,比較輸入的兩...