C 複習題 有答案

2022-11-25 01:42:02 字數 3426 閱讀 8983

一、選擇題

1、在c++程式中,如果要求通過函式來實現一種簡單的功能,並且要求盡可能加快程式執行速度該選用( a )。

a、內聯函式b、過載函式

c、遞迴呼叫d、巢狀呼叫

2、下面關於類概念的描述中,(  d   )是錯誤的。

a、 類是抽象資料型別的實現。

b、 類是具有共同行為的若干物件的統一描述體。

c、 類是建立物件的樣板。

d、 類就是c語言中的結構體型別。

3、有關析構函式的說法不正確的是( bc  )。

a、析構函式又且只有乙個

b、析構函式和建構函式一樣可以有形參。

c、析構函式的功能是用來釋放乙個物件。

d、析構函式無任何函式型別。

4、類模板的使用實際上是將類模板例項化成乙個具體的(c  )。

a、模板函式 b、 物件 c、模板類 d、類模板

5、假定x為乙個類,執行x a[3],*p[2];語句時會自動呼叫該類建構函式(a )次。

a、3b、 2c、4d、5

6、如果表示式++j*k中的「++」和「*」都是過載的友元運算子,則採用運算子

函式呼叫格式,該表示式還可以表示為(  b   )。

a、 operator*(

b、 operator*(operator++(j),k)

c、 d、 j))

7、下面對靜態資料成員的描述中,正確的是(  a   )。

a、靜態資料成員是類的所有物件共享的資料

b、類的沒個物件都有自己的靜態資料成員

c、類的不同物件有不同的靜態資料成員值

d、靜態資料成員不能通過類的物件呼叫

8、下面的說法中錯誤的是( b )。

a、公有繼承的基類中的public成員在派生類中仍是public

b、私有繼承的基類中的public成員在派生類中是private

c、公有繼承的基類中的private成員在派生類中仍是private

d、保護繼承的基類中的public成員在派生類中仍是protected

9、虛函式( d )是可以不同的。

a、函式名b、引數個數

c、返回型別d、函式體內容

10、假定myclass為乙個類,那麼下列的函式說明中,( c )為該類的

析構函式。

a、void ~ myclassb、~ myclass( int n);

c、~myclassd、myclass( );

11、類myclass的定義如下,若要對value賦值,則下面語句正確的是( d )。

class myclass

myclass(int i)

int *value;

};a、myclass my; my; *

c、myclass my; my.*value=10; d、myclass my(10);

12、設定虛基類的目的是(  b  )。

a、簡化程式b、消除二義性

c、提高執行效率d、減少目標**

13、有一函式原型說明為:int special(int x=5, float y=5.3);以下函式

的呼叫哪個是錯誤的(  c  )。

a、 special(100,7.6b、 special(20)

c、 special( ,23.5d、 special( )

14、執行下列程式語句後,輸出結果為( d )。

#include

using namespace std;

int m=5;

int main()

a、3 b、 4c、5d、6

15、下面關於友元的說法中錯誤的是( b )。

a、友元函式可以訪問類中的所有資料成員

b、友元函式不可以在類內部定義

c、友元類的所有成員函式都是另乙個類友元函式

d、友元函式必須宣告在public區

二、填空題

1、如果表示式x=y*z中的「*」是作為成員函式過載的運算子,採用顯示呼叫格

式,該表示式還可以表示為  x=

2、假定使用者沒有給乙個名為ab的類定義析構函式,則系統自動給出的預設析構函式定義為

3、cin是標準輸入流的乙個物件,處理標準輸入;cout是標準輸出流

的乙個物件,處理標準輸出。

4、c++語言中允許公有派生類可相容基類。

5、虛函式和普通函式的區別在於函式名字與函式體之間的繫結方式不同,普通函式使用的是靜態繫結而虛函式使用的是動態繫結

6、類繼承中,預設的繼承方式是私有繼承方式

7、不同的物件可以呼叫相同名稱的函式,並可導致完全不同的行為的現象稱為多型性

8、對於派生類的建構函式,在定義物件時建構函式的執行順序為:先執行基類的建構函式,再執行派生類的夠造函式

9、c++語言中的多型性分為編譯時的多型性和 __ 執行時的多型性。

10、形如x::x(x&)的建構函式稱為拷貝建構函式

三、讀程式題

1、寫出下面程式的執行結果。

#include

using namespace std;

class sample

void disp()

;int sample::sum=0靜態資料成員賦初值

int main()

程式執行結果為:

n=1 sum=10

n=4 sum=10

n=5 sum=10

2、寫出下列程式的執行結果。

#include

using namespace std;

class a

執行結果:

class a

class b

class d

class b

class c

class m

3、寫出下面程式的執行結果。

#include

using namespace std;

class tdate;

tdate::tdate()

{ month=6; day=15; year=2009;

cout

{ month=4; day=d; year=2008;

cout

{ month=m; day=d; year=2007;

cout

{ month=m; day=d; year=y;

cout

{ tdate aday;

tdate bday(10);

tdate cday(2,12);

tdate dday(1,2,2009);

C語言複習題 答案

2014年春c語言程式設計複習 分數分布 題型 注 以下答案僅為個人理解的方法所出。同學們幫核對一下若有錯誤還請同學們指正。如有哪個同學有更好更快更準更簡的方法做題或程式設計序,還望其能指點一 二 多 多交流。同學們可以直接把程式複製到vc6.0編譯器上編譯。此外我發有個編譯器在群共享檔案裡是中文版...

鉗工複習題有答案

一 單項選擇題 1 滑動軸承的主要特點之一是 a 摩擦小b 效率高c 工作可靠 d 裝拆方便 2 球化退火一般適用於 a 優質碳素結構鋼b 合金結構鋼 c 普碳鋼d 軸承鋼及合金工具鋼 3 表面粗糙度基本特徵符號 表示 a 用去除材料的方法獲得的表面b 無具體意義,不能單獨使用 c 用不去除材料的方...

C語言期末複習題附答案

1 凡是函式中未指定儲存型別的區域性變數,其隱含的儲存型別為 a a auto b static c extern d register 2 若有定義 int ptr 6 則識別符號ptr b a 是乙個指向整形變數的指標 b 是乙個指標陣列名 c 是乙個指標,它指向乙個含有四個整形元素的一維陣列 ...