C 第二章習題

2022-01-20 08:38:47 字數 2194 閱讀 8602

2.1 簡述c++的主要特點。

1)         c++是c的超集,保持與c的相容。

2)         保持了c的簡潔、高效和接近組合語言等特點,並對c的功能作了不少擴充。用c++編寫的程式比c更安全,可讀性更好,**結構更為合理。

3)         程式質量高。

4)         增加了物件導向機制。

2.2

#include using

namespace

std;

intmain()

if (d ==min)

cout

<< "

the lowest common denominator is

"<< d

}

2.3 有效

2.4 沒有函式宣告;

函式定義沒有寫返回值型別。

2.5 (1)等價,函式宣告可以省略引數的名字。

(2)不等價,第二個的函式定義不能省略引數的名字。

2.6-2.10 cdaab

2.11-2.15 acbdc

2.16-2.17 dc

2.18

2.19

10 10

2.20

2.21 舉例說明可以使用const替代#define以消除#define的不安全性。

#include using

namespace

std;

intmain()

上面這個程式,初看應該輸出 t2 is 0

但是實際上,得出t2 is 2

如果把#define換成const, 則可以輸出想要的結果。

2.22 用動態分配空間的方法,計算fibonacci數列的前20項,並儲存到動態分配的空間中。

#include using

namespace

std;

intmain()

return0;

}

2.23 過載sroot函式,輸出乙個數的二次方根。

#include using

namespace

std;

double sroot(int

num)

double sroot(long

num)

double sroot (double

num)

intmain()

2.24

解決百錢問題。將一元人民幣換成1、

2、5分的硬幣,有多少種換法?

#include using

namespace

std;

intmain()

for(int k = 0; k <= 20; k++)

if ((i + 2*j + 5*k) > 100

) }}

}cout

<< num

}

2.25

輸入兩個整數,按由小到大的順序輸出。要求使用變數的引用。

#include using

namespace

std;

void swap(int &a, int &b)

intmain()

cout

<< a << ","

<< b

}

2.26

用二分法求解

f(x)=0

的根。

#include using

namespace

std;

double fun(double

x)int

main()

do

while ((fun(a) * fun(b)) >= 0

);

if(fun(b) == 0

)

if(a >b)

while(1

)

if(fun(a) * fun((a + b)/2) < 0

)

if(fun(b) * fun((a + b)/2) < 0

)

}return0;

}

第二章習題

一 linux對於硬體的要求是什麼?是否一定要有很高的配置才能安裝linux?答 不是一定要有很高的配置才能安裝linux 因為linux系統是非常穩定和高效的,對電腦硬體配置要求很低,這正是linux系統的優勢所在,不同的linux系統版本要求略有不同,但是大體上在同乙個配置等級內,而且當下主流的...

第二章習題

一 名詞解釋 引用 所謂引用,就是給物件起乙個別名,使用該別名可以訪問該物件。換句話說,是使新物件和原物件共用 乙個位址。內聯函式 內聯函式是使用inline 關鍵字宣告乙個函式。過載函式 過載函式通常用來對具有相似行為而資料型別不同的操作提供 個通用的名稱。二 填空題 1 一般情況下,用c 語言編...

c primer第二章習題

習題2.1 int,long和short型別之間有什麼差別?答 short,int和long型別都表示整型值,儲存空間的大小不同.一般,short型別為半個機器字長,int型別為乙個機器字長,而long型別為乙個或兩個機器字長 在32位機器中int型別和long型別通常字長是相同的 用sizeof可...