選單

《面向物件程式設計》線上作業答案整理

微信搜小程式迅鳥搜題助手,攢積分免費搜答案

關注公眾號迅鳥答題助手,更多精彩免費分享

1。 單選題

1。 兩個指標變數不可以()

A。 相加

B。 比較

C。 相減

D。 指向同一地址

2。 執行下列語句段後,輸出字元“*”的個數是()for(inti=50;i>1;I-=2)cout

A。 24

B。 25

C。 26

D。 50

3。 有如下類和物件的定義:class Constants{ public: static double getPI() }; Constants constants; 下列各組語句中,能輸出 3。1416 的是 ( )

A。 cout

B。 cout

C。 cout

D。 cout

4。 佇列的最大特徵是()

A。 先進先出

B。 後進先出

C。 自動排序

D。 大數優先

5。 C++函式的宣告和定義可以分開,函式宣告不需要()

A。 返回型別

B。 函式名

C。 引數表

D。 函式體

《面向物件程式設計》線上作業答案整理

6。 多重繼承時,如果派生類的兩個父類有一個共同的虛基類,那麼虛基類的初始化引數由()的建構函式來傳遞

A。 第一個父類

B。 第二個父類

C。 派生類

D。 以上都不是

7。 如果定義了一個類myclass,則為myclass類物件以成員函式形式過載後++運算子的宣告應該為()

A。 myclassoperator++();

B。 myclass&operator++();

C。 myclassoperator++(int);

D。 myclass&operator++(int);

8。 private訪問屬性限制物件的成員可以在()中訪問

A。 本類的成員函式

B。 main函式

C。 父類的成員函式

D。 子類的成員函式

9。 在下列關鍵字中,不能用來表示繼承方式的是()

A。 private

B。 static

C。 public

D。 protected

10。 已知Value是一個類,Value是Value的一個物件。下列以非成員函式形式過載的運算子函式原形中,正確的是()

A。 Valueoperator+(Valuev,inti);

B。 Valueoperator+(Valuev=value,inti);

C。 Valueoperator+(Valuevinti=0);

D。 Valueoperator+(Valuev=value,inti=0);

11。 執行語句 char ch[] = “Hello”; char * p = &ch[0]; cout

A。 一個地址

B。 H

C。 Hello

D。 亂碼

12。 若有定義:intaa[8];則以下表達式中不能代表陣列元aa[1]的地址的是()

A。 &aa[0]+1

B。 &aa[1]

C。 &aa[0]++

D。 aa+1

13。 如果有如下定義:constchar*str=“OK”;那麼,sizeof(str)的值應該是()

A。 1

B。 2

C。 3

D。 4

14。 多型性是透過()實現的

A。 建構函式

B。 解構函式

C。 虛擬函式

D。 函式過載

15。 有如下 4 個語句: cout

A。 和

B。 和

C。 和

D。 和

16。 以下對二維陣列a的正確說明是:()

A。 inta[3][];

B。 floata(3,4);

C。 doublea[1][4];

D。 floata(3)(4);

17。 假定a為一個短整型(shortint)陣列名,則元素a[8]的地址為()

A。 a+4

B。 a+8

C。 a+16

D。 a+32

18。 在每個C++程式中都必須包含有這樣一個函式,該函式的名稱為()

A。 main

B。 MAIN

C。 name

D。 function

19。 父類和子類各自定義一個成員函式,函式名相同,引數表不同,那麼()

A。 在子類中這兩個函式構成過載關係

B。 子類不會繼承父類的這個函式

C。 子類中的函式會覆蓋父類中的函式

D。 編譯時會發生錯誤

20。 函式的形參是()

A。 全域性變數

B。 區域性變數

C。 靜態變數

D。 部變數

21。 下面是一個模板宣告的開始部分:templute double __ 由此可知 ( )

A。 這可能是一個函式模板的宣告

B。 這可能是一個類模板的宣告

C。 這既可能是一個函式模板的宣告,也可能是一個類模板的宣告

D。 這肯定是一個錯誤的模板宣告

22。 若有說明:int*p1,*p2,m=5,n;以下均是正確賦值語句的是()

A。 p1=&m,p2=&p1

B。 p1=&m;p2=&n;*p1=*p2

C。 p1=&m;p1=p2

D。 p1=&m;*p2=*p1

23。 下面函式呼叫語句含有實參的個數為:( ) func((exp1,exp2),(exp3,exp4,exp5))

A。 1

B。 2

C。 4

D。 5

24。 連結串列的基本單元是()

A。 節點

B。 頭指標

C。 尾指標

D。 資料域

25。 C++語言對C語言做了很多改進,C++語言相對於C語言的最根本的變化是()

A。 增加了一些新的運算子

B。 允許函式過載,並允許設定預設引數

C。 規定函式說明符必須用原型

D。 引進了類和物件的概念

26。 C++原始檔的預設副檔名為()

A。 cpp

B。 exe

C。 obj

D。 lik

27。 下列排序演算法中,平均效率最低的排序演算法是()

A。 插入法

B。 冒泡法

C。 選擇法

D。 快速排序法

28。 設有定義intx;floatv;,則10+x+v值的資料型別是()

A。 int

B。 double

C。 float

D。 不確定

29。 以下不能正確進行字串賦初值的語句是()

A。 charstr[5]=“good!”;

B。 charstr[]=“good!”;

C。 char*str=“good!”;

D。 charstr[5]={‘g‘,‘o’,‘o‘,‘d’};

30。 用cin為整型變數輸入資料時,如果從鍵盤輸入的不是數字,輸入後整型變數中的結果會是:()

A。 0

B。 負數

C。 正數

D。 不確定

2。 多選題

31。 C++中變數要求()

A。 有明確的型別

B。 先聲明後使用

C。 名字中不能使用下劃線

D。 嚴格區分大小寫

32。 兩個同名函式構成過載關係,只要()不同

A。 返回型別

B。 引數個數

C。 引數型別

D。 函式頭後有無const

33。 面向物件的程式設計方法的主要特徵包括()

A。 封裝

B。 繼承

C。 多型

D。 訊息

34。 for語句的格式為for(表示式1;表示式2;表示式3),其中可以省略的是()

A。 兩個分號

B。 表示式1

C。 表示式2

D。 表示式3

35。 流程控制語句有()幾種

A。 條件語句

B。 迴圈語句

C。 分支語句

D。 表示式語句

3。 判斷題

36。 邏輯運算子兩側運算物件的資料型別只能是0或1。()

A。 錯誤

B。 正確

37。 結構化程式設計的基本方法是遞迴法。()

A。 錯誤

B。 正確

38。 C++語言是從早期的C語言逐漸發展演變而來的,與C語言相比,它在求解問題方法上進行的最大改進是面向過程。()

A。 錯誤

B。 正確

39。 宏名必須用大寫字母表示。()

A。 錯誤

B。 正確

40。 1。234e0為C++語言合法常量。()

A。 錯誤

B。 正確