<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 計算機二級C++考試測試卷及答案

    時間:2024-08-21 16:35:49 計算機等級 我要投稿
    • 相關(guān)推薦

    計算機二級C++考試測試卷及答案

      選擇題(每小題1分,共40小題,共40分)

    計算機二級C++考試測試卷及答案

      1.下列關(guān)于棧的敘述正確的是(  )。

      A.棧頂元素最先被刪除

      B.棧頂元素最后才能被刪除

      C.棧底元素永遠不能被刪除

      D.以上三種說法都不對

      2.下列敘述中正確的是(  )。

      A.有一個以上根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是非線性結(jié)構(gòu)

      B.只有一個根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一定是線性結(jié)構(gòu)

      C.循環(huán)鏈表是非線性結(jié)構(gòu)

      D.雙向鏈表是非線性結(jié)構(gòu)

      3.某二叉樹共有七個結(jié)點,其中葉子結(jié)點只有一個,則該二叉樹的深度為(假設(shè)根結(jié)點在第1層)(  )。

      A.3

      B.4

      C.6

      D.7

      4.在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是(  )。

      A.軟件集成測試計劃

      B.軟件詳細設(shè)計說明書

      C.用戶手冊

      D.軟件需求規(guī)格說明書

      5.結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括(  )。

      A.順序結(jié)構(gòu)

      B.GOTO跳轉(zhuǎn)

      C.選擇(分支)結(jié)構(gòu)

      D.重復(fù)(循環(huán))結(jié)構(gòu)

      6.下面描述中錯誤的是(  )。

      A.系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細設(shè)計

      B.軟件設(shè)計是將軟件需求轉(zhuǎn)換為軟件表示的過程

      C.數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計是軟件設(shè)計的任務(wù)之一

      D.PAD圖是軟件詳細設(shè)計的表示工具

      7,負責數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是(  )。

      A.數(shù)據(jù)定義語言

      B.數(shù)據(jù)管理語言

      C.數(shù)據(jù)操縱語言

      D.數(shù)據(jù)控制語言

      8.一個教師可講多門課程,一門課程可由多個教師講授,則實體教師和課程間的聯(lián)系是:(  )。

      A.1:1聯(lián)系

      B.1:m聯(lián)系

      C.m:1聯(lián)系

      D.m:n聯(lián)系

      9.有三個關(guān)系R、S和T如下:

      則由關(guān)系R和S得到關(guān)系T的操作是(  )。

      A.自然連接

      B.交

      C.除

      D.并

      10.定義無符號整數(shù)為Uint,下面可以作為類Uint實例化值的是(  )。

      A.-369

      B.369

      C.0.369

      D.整數(shù)集合{1,2,3,4,5}

      11.在對函數(shù)進行原型聲明時,下列語法成分中,不需要的是(  )。

      A.函數(shù)返回類型

      B.函數(shù)參數(shù)列表

      C.函數(shù)名

      D.函數(shù)體

      12.下列關(guān)于this指針的描述中,正確的是(  )。

      A.類的成員函數(shù)都有this指針

      B.類的友元函數(shù)都有this指針

      C.任何與類相關(guān)的函數(shù)都有this指針

      D.類的非靜態(tài)成員函數(shù)都有this指針

      13.有如下類定義:

      classAA{

      inta:

      public:

      AA(intn=0):a(n)()

      };

      classBB:publicAA{

      pubilc:

      BB(intn)____

      };

      其中橫線處缺失部分是()。

      A.:a(n){}B.:AA(n){}

      C.{a(n);}D.{a=n;}

      14.為類Matrix重載下列運算符號時,只能作為Matrix類成員函數(shù)重載的運算符是(  )。

      A.+

      B.=

      C.<<

      D.++

      15.下列關(guān)于函數(shù)模板的描述中,正確的是(  )。

      A.函數(shù)模板是一個實例函數(shù)

      B.使用函數(shù)模板定義的函數(shù)沒有返回類型

      C.函數(shù)模板的類型參數(shù)與函數(shù)的參數(shù)相同

      D.通過使用不同的類型參數(shù),可以從函數(shù)模板得到不同的實例函數(shù)

      16.C++系統(tǒng)預(yù)定義了四個用于標準數(shù)據(jù)流的對象,下列選項中不屬于此類對象的是(  )。

      A.cout

      B.cin

      C.cerr

      D.cset

      17.Windows環(huán)境下,由C++源程序文件編譯而成的目標文件的擴展名是(  )。

      A.cpp

      B.exe

      C.obj

      D.1ik

      18.若有定義語句“inti=2,j=3;”,則表達式i/j的結(jié)果是(  )。

      A.0

      B.0.7

      C.0.66667

      D.0.66666667

      19.有如下程序:

      #include

      usingnamespacestd;

      intmain(){

      intf,f1=0,f2=1

      for(inti=3;i<=6;i++){

      f=f1+f2:

      f1=f2:f2=f

      }

      cout<  return0;

      }

      運行時的輸出結(jié)果是()。

      A.2

      B.3

      C.5

      D.8

      20.有如下語句序列:

      intx=100,&r=x;

      cout<  已知其中變量x的地址為0012FF2C,則執(zhí)行該語句序列的輸出結(jié)果為(  )。

      A.100—100

      B.100—0012FF7C

      C.0012FF7C一100

      D.0012FF7C一0012FF7C

      21.已知函數(shù)f的原型是“voidf(int*x,int&y);”,變量v1、v2的定義是“intv1,v2;”,下列調(diào)用語句中,正確的是(  )。

      A.f(v1,v2)

      B.t(v1,&v2)

      C.f(&v1,v2)

      D.f(&v1,&v2);

      22.有如下類定義:

      classSample{

      public:

      Sample(intx):ref(x){}//①

      private:

      Sample():ref(0){}//②

      staticintva1=5;//③

      constintref;//④

      };

      上述程序段中,錯誤的語句是(  )。

      A.①B.②

      C.③D.④

      23.有如下程序:

      #include

      usingnamespacestd;

      classPoint{

      intX,Y;

      public

      point(intx1=0,inty1=O)tx(x1),y(y1){}

      intget(){returnx+y;}

      };

      classCircle{

      pointcenter;

      intradius;

      public

      circle(intCX,intcy,intr):center(cx,cy),radius(r)

      {}

      intget(){returncenter.get()+radius;)

      };

      intmain(){

      circlec(3,4,5);

      cout<  return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.5

      B.7

      C.9

      D.12

      24.若是對類BigNumber中重載的類型轉(zhuǎn)換運算符long進行聲明,下列選項中正確的是(  )。

      A.operatorlong()const;

      B.operatorlong(BigNumber);

      C.10ngoperatorlong()const;

      D.10ngoperatorlong(BigNumber);

      25.有如下函數(shù)模板定義:

      template

      T1FUN(T2n){returnn*5,0;}

      若要求以int型數(shù)據(jù)9作為函數(shù)實參調(diào)用該模板,并返回一個double型數(shù)據(jù),則該調(diào)用應(yīng)表示為(  )。

      A.FUN(9)

      B.FUN<9>

      26.下列語句都是程序運行時的第一條輸出語句,其中一條語句的輸出效果與其他三條語句不同,該語句是(  )。

      A.cout<  B.cout<  C.cout<  D.cout<  27.下列關(guān)于析構(gòu)函數(shù)的描述中,錯誤的是(  )。

      A.析構(gòu)函數(shù)可以重載

      B.析構(gòu)函數(shù)由系統(tǒng)自動調(diào)用

      C.每個對象的析構(gòu)函數(shù)只被調(diào)用一次

      D.每個類都有析構(gòu)函數(shù)

      28.下列關(guān)于構(gòu)造函數(shù)的描述中,錯誤的是(  )。

      A.構(gòu)造函數(shù)名與類名相同

      B.構(gòu)造函數(shù)可以有返回值

      C.構(gòu)造函數(shù)可以重載

      D.每個類都有構(gòu)造函數(shù)

      29.若PAT是一個類,則程序運行時,語句“PAT(*ad){3};”調(diào)用PAT的構(gòu)造函數(shù)的次數(shù)是(  )。

      A.0

      B.1

      C.2

      D.3

      30.有如下程序:

      ClassBase{

      public:

      intdata;

      };

      ClassDerived1:publicBase{};

      ClassDerived2:protectedBase{};

      intmain(){

      Derived1d1;

      Derived2d2;

      d1.data=0;//①

      d2.data=0;//②

      return0;

      }

      下列關(guān)于程序編譯結(jié)果的描述中,正確的是(  )。

      A.①②皆無編譯錯誤

      B.①有編譯錯誤,②無編譯錯誤

      C.①無編譯錯誤,②有編譯錯誤

      D.①②皆有編譯錯誤

      31.有如下程序;

      #include

      usingnamespacestd;

      clasBasel{

      public:

      Basel(intd){cout<  -Basel(){}

      };

      classBase2{

      public:

      Base2(intd){out<  ~Base2(){}

      };

      classDerived:publicBase1,Base2{

      public:

      Derived(inta,intb,intC,intd):

      Basel(b),Base2(a),b1(d),b2(c){}

      private:

      intb1;

      intb2;

      };

      intmain(){

      Derivedd(1,2,3,4);

      return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.1234

      B.2134

      C.12

      D.21

      32.有如下程序:

      #include

      usingnamespacestd;

      classBase{

      public:

      virtualvoidfunctionl(){cout<<’0’;}

      voidfunction2(){out<<’1’;}

      };

      classDerived:publicBase{

      oublic:

      voidfunctionl(){cout<<’2’;}

      voidfunction2(){cout<<’3’;}

      };

      intmain(){

      Base*p=newDerived();

      p->functionl();

      p->function2();

      return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.01

      B.21

      C.03

      D.23

      33.有如下類模板定義:

      template

      classBigNumber{

      longn;

      public;

      BigNumber{Ti}:n(i){}

      BigNumberoperator+(BigNumberb){

      returnBigNumber{n+b.n);

      }

      };

      已知b1、b2是BigNumber的兩個對象,則下列表達中踏誤的是(  )。

      A.b1+b2

      B.b1+3

      C.3+b1

      D.3+3

      34.下列關(guān)于文件流的描述中,正確的是(  )。

      A.文件流只能完成針對磁盤文件的輸入、輸出

      B.建立一個文件流對象時,必須同時打開一個文件

      C.若輸入流要打開的文件不存在,將建立一個新文件

      D.若輸出流要打開的文件不存在,將建立一個新文件

      35.有如下程序:

      #include

      usingnamespacestd;

      classPair{

      intm,n;

      public;

      Pair(intj,intk):m(j),n(k){}

      intget(){returnm;}

      intget()const{returnm+n;}

      };

      intmain(){

      Paira(3,5);

      constPairb(3,5);

      cout<  return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.33

      B.38

      C.83

      D.88

      36.有如下程序:

      #include

      usingnamespacestd;

      voidf1(int&X,int&y){intz=x;x=y;y=z;}voidf2(intX,inty){intz=x;x=y;y=z;}intmain(){

      intx=10,y=26;

      f1(x,y);

      f2(x,y);

      cout<  return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.10

      B.16

      C.26

      D.36

      37.有如下程序:

      #include

      usingnamespacestd;

      classXA{

      inta;

      public:

      staticintb;

      XA(intaa):a(aa){b++;}

      ~XA(){}

      intget(){returna;}

      };

      intXA::b=0

      intmain(){

      XAd1(1),d2(3);

      cout<  return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.5

      B.6

      C.7

      D.8

      38.有如下程序:

      #include

      usingnamespacestd;

      classPoint{

      intX,y;

      public:

      Point(intx1=0,inty1=0):X(x1),y(y1){}

      intget(){returnx+y;}

      };

      classCircle{

      Pointcenter;

      intradius;

      public:

      Circle(intCX,intcy,intr):center(CX,cy),radius(r)

      {}

      intget(){returncenter.get()+radius;}

      };

      intmain(){

      Circlec(3,4,5);

      cout<  return0;

      }

      運行時的輸出結(jié)果是(  )。

      A.5

      B.7

      C.9

      D.12

      39.若是對類BigNumber中重載的類型轉(zhuǎn)換運算符long進行聲明,下列選項中正確的是(  )。

      A.operatorlong()const;

      B.operatorlong(BigNumber);

      C.10ngoperatorlong()const;

      D.longoperatorlong(BigNumber);

      40.有如下函數(shù)模板定義:

      template

      T1FUN(T2n){returnn*5,0;}

      若要求以int型數(shù)據(jù)9作為函數(shù)實參調(diào)用該模板,并返回一個double型數(shù)據(jù),則該調(diào)用應(yīng)表示為(  )。

      A.FUN(9)

      B.FUN<9>

      【參考答案及解析】

      1.A!窘馕觥織J窍薅ㄔ谝欢诉M行插入刪除的先入后出的線性表數(shù)據(jù)結(jié)構(gòu),棧頂元素最后插入到棧中,但是最先被刪除;而棧底元素最先插入,最后被刪除。

      2.D。【解析】線性表的特點是:在數(shù)據(jù)元素的非空有限集合中1)存在唯一的一個被稱為”第一個”的數(shù)據(jù)元素2)存在唯一個被稱為”最后一個”的數(shù)據(jù)元素3)除第一個以外,集合中的每個數(shù)據(jù)元素均只有一個后繼4)除最后一個以外,集合中的每個數(shù)據(jù)元素均只有一個后繼。因此,雙向表是非線性結(jié)構(gòu)。

      3.D!窘馕觥繉τ谌我庖豢枚鏄銽,如果葉子節(jié)點數(shù)為nO,度為2的結(jié)點數(shù)為n2,二者之間的關(guān)系是nO=n2+1,該題中度為2的結(jié)點數(shù)為0,且只有一個葉子節(jié)點,因此,樹中度為1的結(jié)點有6個,很容易想到樹的深度為7。

      4.D。【解析】需求分析階段只能產(chǎn)生需求分析規(guī)格說明書,A測試說明書是軟件測試階段生成的,B軟件詳細設(shè)計說明數(shù)是設(shè)計階段生產(chǎn),C用戶手冊是軟件發(fā)布時隨軟件一同交付給用戶的。

      5.B!窘馕觥拷Y(jié)構(gòu)化程序設(shè)計的三種結(jié)構(gòu)是順序、分支和循環(huán),不包括goto跳轉(zhuǎn),它只是分支結(jié)構(gòu)的一種,也是一個關(guān)鍵字。

      6.A。【解析】軟件系統(tǒng)的總體結(jié)構(gòu)圖是軟件架構(gòu)設(shè)計的依據(jù),它并不能支持軟件的詳細設(shè)計。

      7.C。【解析】數(shù)據(jù)庫操縱語言專門負責查詢,增加,刪除等數(shù)據(jù)操作。

      8.D!窘馕觥恳粋教師可以上多門課程,一門課程也可以由多個教師教授,這是典型的多對多的E-R關(guān)系。

      9.C!窘馕觥縎中的關(guān)系全部出現(xiàn)在R中,只有做除法操作才會出現(xiàn)關(guān)系T。

      10.B!窘馕觥緼是有符號數(shù),C是浮點數(shù),D是集合,并不是類的實例化對象,只有B完全符臺。

      11.D!窘馕觥亢瘮(shù)聲明的時候,是不需要實現(xiàn)部分的,也就是函數(shù)體。

      12.D!窘馕觥款惖姆庆o態(tài)成員都是有this指針的。可以通過obj非靜態(tài)成員訪問。

      13.B。【解析】需要實現(xiàn)父類構(gòu)造函數(shù)。

      14.B。【解析】賦值運算符只能作為重載函數(shù)的成員函數(shù),其他運算符都可以作為友元函數(shù)重載。

      15.D!窘馕觥亢瘮(shù)模板只是聲明,一個函數(shù)的描述即模板,不是一個可以直接執(zhí)行的函數(shù),只有根據(jù)實際情況用實參的數(shù)據(jù)類型參數(shù)標識符之后,才能產(chǎn)生真正的函數(shù)。

      16.D。【解析】C++的標準數(shù)據(jù)流對象有三個:cout標注輸出流,ein標準輸入流,cerr標準錯誤流。

      17.C。【解析】cpp是C++源文件的擴展名,exe是可執(zhí)行文件的擴展名,lik是鏈接文件的的擴展名。

      18.A!窘馕觥空麛(shù)相除為整數(shù),所以結(jié)果為0。

      19.C:【解析】循環(huán)3次,分別每次計算出fl,f2和f的值,該題較簡單,只需細心即可。

      20.B。【解析】x的值為100,而r代表x的地址。&r=x等同于r=*X。

      21.B。【解析】voidf(int*X,int&。y);第一個參數(shù)需要取值,第二個參數(shù)需要取地址,所以為v1為取值,&Lv2為取址。

      22.C!窘馕觥繎(yīng)為“staticconstintval一5;”,只有靜態(tài)常量才可以初始化。

      23.D!窘馕觥亢唵晤愔g繼承關(guān)系的調(diào)用,按照通常做法便可以得到答案。center.get()函數(shù)調(diào)用后,3和4的和被返回接著再調(diào)用Circle類的radius成員交量5相加后得到12。

      24.A!窘馕觥緾++不僅可以對運算符進行重載,還可以重載類型轉(zhuǎn)換符,函數(shù)聲明的形式勾operator類型符()const。

      25.C!窘馕觥亢瘮(shù)返回類型是double型,則T1為double型,T2為int型才符合函數(shù)模板的定義。

      26.D。【解析]setw(6)將輸出寬度設(shè)為6,如果位數(shù)不夠則在最左邊補齊,因此該項輸出一定不會與其他三項一致。

      27.A!窘馕觥课鰳(gòu)函數(shù)不能被重載,因為它的函數(shù)中不帶有任何參數(shù),也沒有任何返回值,函數(shù)只有一個版本,即~類名(){}。

      28.B。【解析】構(gòu)造函數(shù)沒有返回值,雖然叫函數(shù)但是它沒有任何返回值,包括void型都不是,官方叫法為“構(gòu)造器”。

      29.A。【解析]PAT(*ad){3);該表達式表示一個指向類PAT的數(shù)組的指針,只是聲明了該指針,而并沒有進行實例化對象,因此該語句運行時并不會調(diào)用構(gòu)造函數(shù)。

      30.C。【解析]Derived2繼承Base的方式為protected,則Base的public成員只能在Base內(nèi)訪問。

      31.D!窘馕觥慷嗬^承構(gòu)造函數(shù)執(zhí)行的順序為繼承時的順序。所以答案為D。Derived(inta,intb,intC,intd):Basel(b),Base2(a),bl(d),b2(c)的含義是:構(gòu)造函數(shù)Basel的參數(shù)值為b,構(gòu)造函數(shù)Base2的參數(shù)值為a。成員變量b1,b2的值分別為d、C。

      32.B。【解析】本題中需要注意的是虛函數(shù)的定義:指向基類的指針在操作它的多態(tài)類對象時,會根據(jù)不同的類對象,調(diào)用其相應(yīng)的函數(shù),這個函數(shù)就是虛函數(shù)。所以P->functionl();會指向?qū)崿F(xiàn)類Derived,而P->function2()則會指向Base。

      33.C!窘馕觥吭擃}考查了C++模板類和+運算符重載的知識,3+b1時,程序不能將b1轉(zhuǎn)化為整型,所以編譯會出錯。

      34.C。【解析】輸入流要打開的文件不存在,則會自動建立該文件,而輸出流要打開的文件不存在,則會報錯,而不會新建一個文件。

      35.B!窘馕觥縠onst函數(shù)只能被eonst對象調(diào)用,a.get()函數(shù)調(diào)用的返回值是3,而b.get()調(diào)用的返回值是8。

      36.A!窘馕觥吭擃}考查了函數(shù)參數(shù)傳遞的兩種方式:引用傳遞和值傳遞。引用傳遞時X和Y會交換,而傳值時二者不交換,因此選10。

      37.C!窘馕觥棵空{(diào)用一次get函數(shù)時,對新的類A對象進行一次實例化,調(diào)用一次構(gòu)造函數(shù),類A的靜態(tài)成員變量b便加1。

      38.D!窘馕觥亢唵晤愔g繼承關(guān)系的調(diào)用,按照通常做法便可以得到答案。center.get()函數(shù)調(diào)用后,3和4的和被返回,接著再調(diào)用Circle類的radius成員變量5相加后得到12。

      39.A!窘馕觥緾++不僅可以對運算符進行重載,還可以重載類型轉(zhuǎn)換符,函數(shù)聲明的形式為:operator類型符()const。

      40.C。【解析】函數(shù)返回類型是double型,則T1為double型,T2為int型才符合函數(shù)模板的定義。

    【計算機二級C++考試測試卷及答案】相關(guān)文章:

    計算機二級考試C++試題及答案03-27

    計算機二級考試C++試題03-09

    2016年計算機二級C++考試試卷及答案03-05

    2016計算機等級考試二級C++上機模擬試題及答案03-08

    2016最新計算機二級C++上機試題及答案03-03

    2017年9月計算機二級C++考試模擬試題及答案03-05

    2017計算機二級C++考試試題03-05

    計算機二級考試答案10-24

    2016年計算機二級C++模擬試題及答案03-07

    主站蜘蛛池模板: 国产中老年妇女精品| 国内精品久久久久久不卡影院| 91av国产精品| 中文精品99久久国产 | 无码国产精品一区二区免费模式| 91精品国产91久久久久久青草| 少妇精品无码一区二区三区| 精品偷自拍另类在线观看丰满白嫩大屁股ass | 第一福利永久视频精品| 在线精品动漫一区二区无广告| 国产精品无码永久免费888 | 久久九九久精品国产| 香蕉国产精品频视| 999精品视频| 精品视频一区二区三三区四区| 午夜精品久久久内射近拍高清| 国模精品一区二区三区| 69堂午夜精品视频在线| 99精品视频免费| 国产中老年妇女精品| 亚洲精品无码乱码成人| 亚洲国产精品国产自在在线| 久久精品无码一区二区三区日韩 | 精品无人区无码乱码毛片国产| 欧美韩国精品另类综合| 91久久婷婷国产综合精品青草| 久久棈精品久久久久久噜噜| 99精品电影一区二区免费看| 500av导航大全精品| 亚洲国产精品成人AV无码久久综合影院 | 国产精品夜色视频一级区| 久久91精品国产91久久户| 国产三级精品三级在线专区1| 亚洲AV永久无码精品网站在线观看 | 凹凸69堂国产成人精品视频| 无码精品国产VA在线观看| 野狼第一精品社区| 亚洲av无码国产精品色午夜字幕| 最新欧美性爱精品一区二区三区 | 国产精品视频九九九| 国产小呦泬泬99精品|