欧美一级a看免费观看,一本在线视频在线观看,国产偷自拍对白在线视频,精品欧美一区二区在线观看

    1. <dfn id="ktbui"><var id="ktbui"></var></dfn>
    2. 您當前位置: 唯學(xué)網(wǎng) » 計算機等級考試培訓(xùn) » 備考試題專題 »

      計算機二級考試C++考前測試題及答案(3)

      計算機二級考試C++考前測試題及答案(3)

      唯學(xué)網(wǎng) • 教育培訓(xùn)

      2016-7-4 13:44

      計算機等級

      唯學(xué)網(wǎng) • 中國教育電子商務(wù)平臺

      加入收藏

      21關(guān)于在調(diào)用模板函數(shù)時模板實參的使用,下列表述中正確的是(  )。

      A.對于虛擬類型參數(shù)所對應(yīng)的模板實參,如果能從模板函數(shù)的實參中獲得相同的信息,則都可以省略

      B.對于虛擬類型參數(shù)所對應(yīng)的模板實參,如果它們是參數(shù)表中的最后的若干個參數(shù),則都可以省略

      C.對于虛擬類型參數(shù)所對應(yīng)的模板實參,若能夠省略則必須省略

      D.對于常規(guī)參數(shù)所對應(yīng)的模板實參,任何情況下都不能省略

      參考答案:D

      參考解析:在調(diào)用一個模板函數(shù)時,編譯系統(tǒng)需要足夠的信息來判別每個虛擬類型參數(shù)所對應(yīng)的實際類型,可以從兩個不同的渠道獲得這樣的信息:從模板實參表(用“<>”括起來的參數(shù)表)或從模板函數(shù)實參表(用“()”括起來的參數(shù)表)。如果從后者獲得的信息已經(jīng)能夠判定其中部分或全部虛擬類型參數(shù)所對應(yīng)的實際參數(shù),而且它們又正好是參數(shù)表中最后的若干參數(shù),則模板實參表中的那幾個參數(shù)可以省。如果模板實參表中的實參都被省了,則空表“<>”也可以不要,因此選項D錯誤。反之,對于某個模板實參,如果從模板函數(shù)的實參表中無法獲得同樣的信息,就不能省;或者雖然能夠獲得同樣的信息,但在它后面還有其他不能省的實參,則其自身還是不能省。

      22有如下程序段:

      int i=0,J=1;

      int&r=i;//①

      r=j;//②

      int*P=&i;//⑧

      *P=&r;//④

      其中會產(chǎn)生編譯錯誤的語句是(  )。

      A.④B.③C.②D.①

      參考答案:A

      參考解析:本題考查指針和引用。①為引用,使用正確;④中&r表示一一個地址,而* P已經(jīng)是一個值了,不能將一個指針賦值給一個值,所以編譯錯誤。

      23有如下程序:

      #include

      using namespace std;

      class Obj{

      static int i;

      public:

      Obj(){i++;}

      一Obj(){i一一;}

      static int getVal(){return i;}

      };

      int Obj::i=0:

      void f(){Obj ob2;cout<

      int main(){

      Obj obl;

      f();

      Obj}ob3=new Obj;cout

      delete ob3;cout<

      return 0;

      }

      執(zhí)行這個程序的輸出結(jié)果是(  )。

      A.232B.231C.222D.221

      參考答案:D

      參考解析:本題考查構(gòu)造函數(shù)和析構(gòu)函數(shù)的調(diào)用順序,調(diào)用順序為先構(gòu)造的后析構(gòu),后構(gòu)造的先析構(gòu)。本題中先定義了一個對象ob1,會執(zhí)行構(gòu)造函數(shù),那么i就變?yōu)榱薼;再執(zhí)行函數(shù)f后,由于又定義了一個對象ob2,所以再次執(zhí)行構(gòu)造函數(shù),i就變?yōu)榱?,輸出了2。函數(shù)執(zhí)行完后執(zhí)行析構(gòu)函數(shù),i變?yōu)榱?,然后又定義了對象指針,i變?yōu)榱?。釋放ob3后,i變?yōu)榱?,所以答案為D。

      24有如下類定義:

      class MyBase{

      int k;

      public:

      MyBase(int n=O):k(n)}}

      int value()eonst{return k;}

      };

      class MyDerived:MyBase{

      intj;

      public:

      MyDerived(int i):j(i)}}

      int getK()const{return k;}

      int getJ()const{return j;}

      };

      編譯時發(fā)現(xiàn)有一處語法錯誤,對這個錯誤最準確的描述是(  )。

      A.函數(shù)9etK試圖訪問基類的私有成員變量k

      B.在類MyDerived的定義中,基類名MyBase前缺少關(guān)鍵字public、protected或private

      C.類MyDerived缺少一個無參的構(gòu)造函數(shù)

      D.類MyDerived的構(gòu)造函數(shù)沒有對基類數(shù)據(jù)成員k進行初始化

      參考答案:A

      參考解析:默認繼承方式為私有繼承,私有繼承將基類的公用成員和保護成員都變?yōu)閞私有成員,基類的私有成員依然屬于基類私有,派生類不能訪問基類的私有成員。所以A選項正確。

      25下列關(guān)于虛基類的描述,錯誤的是( )。

      A.設(shè)置虛基類的目的是為了消除二義性

      B.虛基類的構(gòu)造函數(shù)在非虛基類之后調(diào)用

      C.若同一層中包含多個虛基類,這些虛基類的構(gòu)造函數(shù)按它們說明的次序調(diào)用

      D.若虛基類由非虛基類派生而來,則仍然先調(diào)用基類構(gòu)造函數(shù),再調(diào)用派生類的構(gòu)造函數(shù)

      參考答案:B

      參考解析:虛基類的引入就是為j-消除。二義性,其構(gòu)造函數(shù)的調(diào)用仍然是按照繼承的順序進行的,對于多個虛基類則按它們說明的次序調(diào)用,虛基類的構(gòu)造函數(shù)先于非虛基類的構(gòu)造函數(shù)執(zhí)行。

      26在長度為n的有序線性表中進行二分查找,最壞情況下需要比較的次數(shù)是(  )。

      A.O(n)B.O(n2)C.O(1092n)D.0(n1092n)

      參考答案:C

      參考解析:當有序線性表為順序存儲時才能用:二分法查找。可以證明的是對于長度為n的有序線性表,在最壞情況下,二分法查找只需要比較l092n次,而順序查找需要比較n次。

      27在軟件開發(fā)中,需求分析階段可以使用的工具是(  )。

      A.N—s圖B.DFD圖C.PAD圖D.程序流程圖

      參考答案:B

      參考解析:在需求分析階段可以使用的工具有數(shù)據(jù)流圖DFD圖,數(shù)據(jù)字典DD,判定樹與判定表,所以選擇B。

      28有如下類聲明:

      class Base{

      protected:

      int amount;

      public:

      Base(int n=0):amount(n){}

      int getAmount()const{retum amount;}

      };

      class Derived:public Base{

      protected:

      int value;

      public:

      Derived(int m,int n):value(m),Base(n){}

      int getData()const{return value+amount;}

      }:

      已知x是一個Derived對象,則下列表達式中正確的是( )。

      A.x.value+X.getAmount()B.x.getData()一x.getAmount()C.x.getData()一x.amountD.x.value+X.amount

      參考答案:B

      參考解析:本題考查公有繼承中派生類對象對基類的訪問屬性。在公有繼承中,派生類對象只能訪問基類的公有成員,而不能}方問基類的保護成員和私有成員。題中x是派生類的對象,只能訪問基類中公有的Base()和getAmount()成員,而不能訪問保護類型的amount成員,故選項C、D錯誤。而類對象對類成員的訪問也存在類似的情況,即類對象只能訪問類的公有成員,而value是Derived的保護成員,所以A選項也錯誤。故答案為B。

      30下面描述中,不屬于軟件危機表現(xiàn)的是( )。

      A.軟件過程不規(guī)范B.軟件開發(fā)生產(chǎn)率低C.軟件質(zhì)量難以控制D.軟件成本不斷提高

      參考答案:A

      參考解析:軟件危機主要表現(xiàn)在:軟件需求的增長得不到滿足;軟件開發(fā)成本和進度無法控制;軟件質(zhì)撼難以保證;軟件不可維護或維護程度非常低;軟件的成本不斷提高;軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和應(yīng)用需求的增長。所以選擇A。

      0% (0)
      0% (10)
      已有條評論