激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频

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

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

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

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

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

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

  A.棧頂元素最先被刪除

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

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

  D.以上三種說(shuō)法都不對

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

  A.有一個(gè)以上根結點(diǎn)的數據結構不一定是非線(xiàn)性結構

  B.只有一個(gè)根結點(diǎn)的數據結構不一定是線(xiàn)性結構

  C.循環(huán)鏈表是非線(xiàn)性結構

  D.雙向鏈表是非線(xiàn)性結構

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

  A.3

  B.4

  C.6

  D.7

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

  A.軟件集成測試計劃

  B.軟件詳細設計說(shuō)明書(shū)

  C.用戶(hù)手冊

  D.軟件需求規格說(shuō)明書(shū)

  5.結構化程序所要求的基本結構不包括(  )。

  A.順序結構

  B.GOTO跳轉

  C.選擇(分支)結構

  D.重復(循環(huán))結構

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

  A.系統總體結構圖支持軟件系統的詳細設計

  B.軟件設計是將軟件需求轉換為軟件表示的過(guò)程

  C.數據結構與數據庫設計是軟件設計的任務(wù)之一

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

  7,負責數據庫中查詢(xún)操作的數據庫語(yǔ)言是(  )。

  A.數據定義語(yǔ)言

  B.數據管理語(yǔ)言

  C.數據操縱語(yǔ)言

  D.數據控制語(yǔ)言

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

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

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

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

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

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

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

  A.自然連接

  B.交

  C.除

  D.并

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

  A.-369

  B.369

  C.0.369

  D.整數集合{1,2,3,4,5}

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

  A.函數返回類(lèi)型

  B.函數參數列表

  C.函數名

  D.函數體

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

  A.類(lèi)的成員函數都有this指針

  B.類(lèi)的友元函數都有this指針

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

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

  13.有如下類(lèi)定義:

  classAA{

  inta:

  public:

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

  };

  classBB:publicAA{

  pubilc:

  BB(intn)____

  };

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

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

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

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

  A.+

  B.=

  C.<<

  D.++

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

  A.函數模板是一個(gè)實(shí)例函數

  B.使用函數模板定義的函數沒(méi)有返回類(lèi)型

  C.函數模板的類(lèi)型參數與函數的參數相同

  D.通過(guò)使用不同的類(lèi)型參數,可以從函數模板得到不同的實(shí)例函數

  16.C++系統預定義了四個(gè)用于標準數據流的對象,下列選項中不屬于此類(lèi)對象的是(  )。

  A.cout

  B.cin

  C.cerr

  D.cset

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

  A.cpp

  B.exe

  C.obj

  D.1ik

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

  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;

  }

  運行時(shí)的輸出結果是()。

  A.2

  B.3

  C.5

  D.8

  20.有如下語(yǔ)句序列:

  intx=100,&r=x;

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

  A.100—100

  B.100—0012FF7C

  C.0012FF7C一100

  D.0012FF7C一0012FF7C

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

  A.f(v1,v2)

  B.t(v1,&v2)

  C.f(&v1,v2)

  D.f(&v1,&v2);

  22.有如下類(lèi)定義:

  classSample{

  public:

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

  private:

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

  staticintva1=5;//③

  constintref;//④

  };

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

  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;

  }

  運行時(shí)的輸出結果是(  )。

  A.5

  B.7

  C.9

  D.12

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

  A.operatorlong()const;

  B.operatorlong(BigNumber);

  C.10ngoperatorlong()const;

  D.10ngoperatorlong(BigNumber);

  25.有如下函數模板定義:

  template

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

  若要求以int型數據9作為函數實(shí)參調用該模板,并返回一個(gè)double型數據,則該調用應表示為(  )。

  A.FUN(9)

  B.FUN<9>

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

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

  A.析構函數可以重載

  B.析構函數由系統自動(dòng)調用

  C.每個(gè)對象的析構函數只被調用一次

  D.每個(gè)類(lèi)都有析構函數

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

  A.構造函數名與類(lèi)名相同

  B.構造函數可以有返回值

  C.構造函數可以重載

  D.每個(gè)類(lèi)都有構造函數

  29.若PAT是一個(gè)類(lèi),則程序運行時(shí),語(yǔ)句“PAT(*ad){3};”調用PAT的構造函數的次數是(  )。

  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)于程序編譯結果的描述中,正確的是(  )。

  A.①②皆無(wú)編譯錯誤

  B.①有編譯錯誤,②無(wú)編譯錯誤

  C.①無(wú)編譯錯誤,②有編譯錯誤

  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;

  }

  運行時(shí)的輸出結果是(  )。

  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;

  }

  運行時(shí)的輸出結果是(  )。

  A.01

  B.21

  C.03

  D.23

  33.有如下類(lèi)模板定義:

  template

  classBigNumber{

  longn;

  public;

  BigNumber{Ti}:n(i){}

  BigNumberoperator+(BigNumberb){

  returnBigNumber{n+b.n);

  }

  };

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

  A.b1+b2

  B.b1+3

  C.3+b1

  D.3+3

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

  A.文件流只能完成針對磁盤(pán)文件的輸入、輸出

  B.建立一個(gè)文件流對象時(shí),必須同時(shí)打開(kāi)一個(gè)文件

  C.若輸入流要打開(kāi)的文件不存在,將建立一個(gè)新文件

  D.若輸出流要打開(kāi)的文件不存在,將建立一個(gè)新文件

  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;

  }

  運行時(shí)的輸出結果是(  )。

  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;

  }

  運行時(shí)的輸出結果是(  )。

  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;

  }

  運行時(shí)的輸出結果是(  )。

  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;

  }

  運行時(shí)的輸出結果是(  )。

  A.5

  B.7

  C.9

  D.12

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

  A.operatorlong()const;

  B.operatorlong(BigNumber);

  C.10ngoperatorlong()const;

  D.longoperatorlong(BigNumber);

  40.有如下函數模板定義:

  template

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

  若要求以int型數據9作為函數實(shí)參調用該模板,并返回一個(gè)double型數據,則該調用應表示為(  )。

  A.FUN(9)

  B.FUN<9>

  【參考答案及解析】

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

  2.D!窘馕觥烤(xiàn)性表的特點(diǎn)是:在數據元素的非空有限集合中1)存在唯一的一個(gè)被稱(chēng)為”第一個(gè)”的數據元素2)存在唯一個(gè)被稱(chēng)為”最后一個(gè)”的數據元素3)除第一個(gè)以外,集合中的每個(gè)數據元素均只有一個(gè)后繼4)除最后一個(gè)以外,集合中的每個(gè)數據元素均只有一個(gè)后繼。因此,雙向表是非線(xiàn)性結構。

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

  4.D!窘馕觥啃枨蠓治鲭A段只能產(chǎn)生需求分析規格說(shuō)明書(shū),A測試說(shuō)明書(shū)是軟件測試階段生成的,B軟件詳細設計說(shuō)明數是設計階段生產(chǎn),C用戶(hù)手冊是軟件發(fā)布時(shí)隨軟件一同交付給用戶(hù)的。

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

  6.A!窘馕觥寇浖到y的總體結構圖是軟件架構設計的依據,它并不能支持軟件的詳細設計。

  7.C!窘馕觥繑祿䦷觳倏v語(yǔ)言專(zhuān)門(mén)負責查詢(xún),增加,刪除等數據操作。

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

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

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

  11.D!窘馕觥亢瘮德暶鞯臅r(shí)候,是不需要實(shí)現部分的,也就是函數體。

  12.D!窘馕觥款(lèi)的非靜態(tài)成員都是有this指針的?梢酝ㄟ^(guò)obj非靜態(tài)成員訪(fǎng)問(wèn)。

  13.B!窘馕觥啃枰獙(shí)現父類(lèi)構造函數。

  14.B!窘馕觥抠x值運算符只能作為重載函數的成員函數,其他運算符都可以作為友元函數重載。

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

  16.D!窘馕觥緾++的標準數據流對象有三個(gè):cout標注輸出流,ein標準輸入流,cerr標準錯誤流。

  17.C!窘馕觥縞pp是C++源文件的擴展名,exe是可執行文件的擴展名,lik是鏈接文件的的擴展名。

  18.A!窘馕觥空麛迪喑秊檎麛,所以結果為0。

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

  20.B!窘馕觥縳的值為100,而r代表x的地址。&r=x等同于r=*X。

  21.B!窘馕觥縱oidf(int*X,int&。y);第一個(gè)參數需要取值,第二個(gè)參數需要取地址,所以為v1為取值,&Lv2為取址。

  22.C!窘馕觥繎獮椤皊taticconstintval一5;”,只有靜態(tài)常量才可以初始化。

  23.D!窘馕觥亢(jiǎn)單類(lèi)之間繼承關(guān)系的調用,按照通常做法便可以得到答案。center.get()函數調用后,3和4的和被返回接著(zhù)再調用Circle類(lèi)的radius成員交量5相加后得到12。

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

  25.C!窘馕觥亢瘮捣祷仡(lèi)型是double型,則T1為double型,T2為int型才符合函數模板的定義。

  26.D!窘馕鯹setw(6)將輸出寬度設為6,如果位數不夠則在最左邊補齊,因此該項輸出一定不會(huì )與其他三項一致。

  27.A!窘馕觥课鰳嫼瘮挡荒鼙恢剌d,因為它的函數中不帶有任何參數,也沒(méi)有任何返回值,函數只有一個(gè)版本,即~類(lèi)名(){}。

  28.B!窘馕觥繕嬙旌瘮禌](méi)有返回值,雖然叫函數但是它沒(méi)有任何返回值,包括void型都不是,官方叫法為“構造器”。

  29.A!窘馕鯹PAT(*ad){3);該表達式表示一個(gè)指向類(lèi)PAT的數組的指針,只是聲明了該指針,而并沒(méi)有進(jìn)行實(shí)例化對象,因此該語(yǔ)句運行時(shí)并不會(huì )調用構造函數。

  30.C!窘馕鯹Derived2繼承Base的方式為protected,則Base的public成員只能在Base內訪(fǎng)問(wèn)。

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

  32.B!窘馕觥勘绢}中需要注意的是虛函數的定義:指向基類(lèi)的指針在操作它的多態(tài)類(lèi)對象時(shí),會(huì )根據不同的類(lèi)對象,調用其相應的函數,這個(gè)函數就是虛函數。所以P->functionl();會(huì )指向實(shí)現類(lèi)Derived,而P->function2()則會(huì )指向Base。

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

  34.C!窘馕觥枯斎肓饕蜷_(kāi)的文件不存在,則會(huì )自動(dòng)建立該文件,而輸出流要打開(kāi)的文件不存在,則會(huì )報錯,而不會(huì )新建一個(gè)文件。

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

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

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

  38.D!窘馕觥亢(jiǎn)單類(lèi)之間繼承關(guān)系的調用,按照通常做法便可以得到答案。center.get()函數調用后,3和4的和被返回,接著(zhù)再調用Circle類(lèi)的radius成員變量5相加后得到12。

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

  40.C!窘馕觥亢瘮捣祷仡(lèi)型是double型,則T1為double型,T2為int型才符合函數模板的定義。

【計算機二級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

激情欧美日韩一区二区,浪货撅高贱屁股求主人调教视频,精品无码成人片一区二区98,国产高清av在线播放,色翁荡息又大又硬又粗视频