射精一区欧美专区|国产精品66xx|亚洲视频一区导航|日韩欧美人妻精品中文|超碰婷婷xxnx|日韩无码综合激情|特级黄片一区二区|四虎日韩成人A√|久久精品内谢片|亚洲成a人无码电影

您現(xiàn)在的位置:首頁(yè) > IT認(rèn)證 > 練習(xí)中心 >

3月計(jì)算機(jī)等級(jí)考試二級(jí)C++筆試試題


  一、選擇題(每小題2分,共70分)

  下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的。請(qǐng)將正確選項(xiàng)填涂在答題卡相應(yīng)位置上,答在試卷上不得分。

  (1)下列敘述中正確的是

  A)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行查找,最壞情況下需要的比較次數(shù)為n

  B)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(n/2)

  C)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(log2n)

  D)對(duì)長(zhǎng)度為n的有序鏈表進(jìn)行對(duì)分查找,最壞情況下需要的比較次數(shù)為(n log2n)

  (2)算法的時(shí)間復(fù)雜度是指

  A)算法的執(zhí)行時(shí)間

  B)算法所處理的數(shù)據(jù)量

  C)算法程序中的語(yǔ)句或指令條數(shù)

  D)算法在執(zhí)行過程中所需要的基本運(yùn)算次數(shù)

  (3)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于系統(tǒng)軟件的是

  A)編輯軟件

  B)操作系統(tǒng)

  C)教務(wù)管理系統(tǒng)

  D)瀏覽器

  (4)軟件(程序)調(diào)試的任務(wù)是

  A)診斷和改正程序中的錯(cuò)誤

  B)盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤

  C)發(fā)現(xiàn)并改正程序中的所有錯(cuò)誤

  D)確定程序中錯(cuò)誤的性質(zhì)

  (5)數(shù)據(jù)流程圖(DFD圖)是

  A)軟件概要設(shè)計(jì)的工具

  B)軟件詳細(xì)設(shè)計(jì)的工具

  C)結(jié)構(gòu)化方法的需求分析工具

  D)面向?qū)ο蠓椒ǖ男枨蠓治龉ぞ?/p>

  (6)軟件生命周期可分為定義階段,開發(fā)階段和維護(hù)階段。詳細(xì)設(shè)計(jì)屬于

  A)定義階段

  B)開發(fā)階段

  C)維護(hù)階段

  D)上述三個(gè)階段

  (7)數(shù)據(jù)庫(kù)管理系統(tǒng)中負(fù)責(zé)數(shù)據(jù)模式定義的語(yǔ)言是

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

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

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

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

  (8)在學(xué)生管理的關(guān)系數(shù)據(jù)庫(kù)中,存取一個(gè)學(xué)生信息的數(shù)據(jù)單位是

  A)文件

  B)數(shù)據(jù)庫(kù)

  C)字段

  D)記錄

  (9)數(shù)據(jù)庫(kù)設(shè)計(jì)中,用E-R圖來描述信息結(jié)構(gòu)但不涉及信息在計(jì)算機(jī)中的表示,它屬于數(shù)據(jù)庫(kù)設(shè)計(jì)的

  A)需求分析階段

  B)邏輯設(shè)計(jì)階段

  C)概念設(shè)計(jì)階段

  D)物理設(shè)計(jì)階段

  (10)有兩個(gè)關(guān)系R和T如下:

2010年3月計(jì)算機(jī)等級(jí)考試二級(jí)C++筆試試題(文字版)


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

  A)選擇

  B)投影

  C)交

  D)并

  (11)下列關(guān)于函數(shù)的描述中,錯(cuò)誤的是

  A)函數(shù)可以沒有返回值

  B)函數(shù)可以沒有參數(shù)

  C)函數(shù)可以是一個(gè)類的成員

  D)函數(shù)不能被定義為模板

  (12)若MyClass是一個(gè)類名,且有如下語(yǔ)句序列

  MyClass c1,*c2;

  MyClass *c3=new MyClass;

  MyClass &c4=c1;

  上面的語(yǔ)句序列所定義的類對(duì)象的個(gè)數(shù)是

  A)1

  B)2

  C)3

  D)4

  (13)下列關(guān)于繼承方式的描述中,錯(cuò)誤的是

  A)如果不顯式地指定繼承方式,缺省的繼承方式是私有(private)

  B)采用公有繼承方式時(shí),基類中的公有成員在派生類中仍然是公有成員

  C)采用保護(hù)繼承方式時(shí),基類中的保護(hù)成員在派生類中仍然是保護(hù)成員

  D)采用私有繼承方式時(shí),基類中的私有成員在派生類中仍然是私有成員

  (14)將前綴運(yùn)算符“--”重載為非成員函數(shù),下列原型中,能正確用于類中說明的是

  A)Decr& operator --(int);

  B)Decr operator --( Decr&,int);

  C)friend Decr& operator --(Decr&);

  D)frlend Decr operator --(Decr&,int);

  (15)若MyTemp是一個(gè)只有一個(gè)虛擬類型參數(shù)的類模板,且有如下語(yǔ)句序列

  MyTempp2;

  MyTempp3[2];

  編譯系統(tǒng)在處理上面的語(yǔ)句序列時(shí),所生成的模板MyTemp的實(shí)例的個(gè)數(shù)是

  A)1

  B)2

  C)3

  D)0

  (16)在C++中,cin是個(gè)

  A)類

  B)對(duì)象

  C)模板

  D)函數(shù)

  (17)在下列字符中,不允許作為C++標(biāo)識(shí)符的是

  A)b

  B)B

  C)_

  D)2

  (18)下列敘述中,錯(cuò)誤的是

  A)false是一個(gè)邏輯型常量

  B)"b"是一個(gè)字符型常量

  C)365是一個(gè)int常量

  D)3.1415926是一個(gè)double常量

  (19)若x和y是程序中的兩個(gè)整型變量,則下列if語(yǔ)句中正確的是

  A)if(x==0) y=1; else y=2;

  B)if(x==0) then y=1 else y=2;

  C)if(x==0) y=1 else y=2;

  D)if x==0 y=1; else y=2;

  (20)要定義整型數(shù)組x,使之包括初值為O的三個(gè)元素,下列語(yǔ)句中錯(cuò)誤的是

  A)int x[3]={0,0,0};

  B)int x[]={0};

  C)static int x[3]={0};

  D)int x[]={0,0,0};

  (21)關(guān)于函數(shù)中的<返回類型>,下列表述中錯(cuò)誤的是

  A)<返回類型>中有可能包含關(guān)鍵字int

  B)<返回類型>中有可能包含自定義標(biāo)識(shí)符

  C)<返回類型>中有可能包含字符*

  D)<返回類型>中可能包含[]

  (22)要定義一個(gè)引用變量p,使之引用類MyClass的一個(gè)對(duì)象,正確的定義語(yǔ)句是

  A)MyClass p=MyClass;

  B)MyClass p=new MyClass;

  C)MyClass &p=new MyClass;

  D) MyClass a,&p=a;

  (23)有如下兩個(gè)類定義

  class XX{

  private:

  double x1;

  protected:

  double x2;

  public:

  double x3;

  };

  class YY:protected XX{

  private:

  double y1;

  protected:

  double y2;

  public:

  double y3;

  };

  在類YY中保護(hù)成員變量的個(gè)數(shù)是

  A)1

  B)2

  C)3

  D)4

  (24)下列關(guān)于運(yùn)算符重載的描述中,錯(cuò)誤的是

  A)可以通過運(yùn)算符重載在C++中創(chuàng)建新的運(yùn)算符

  B)賦值運(yùn)算符只能重載為成員函數(shù)

  C)運(yùn)算符函數(shù)重載為類的成員函數(shù)時(shí),第一操作數(shù)是該類對(duì)象

  D)重載類型轉(zhuǎn)換運(yùn)算符時(shí)不需要聲明返回類型

  (25)下列關(guān)于類模板的描述中,錯(cuò)誤的是

  A)類模板的成員函數(shù)都是模板函數(shù)

  B)可以為類模板參數(shù)設(shè)置默認(rèn)值

  C)類模板描述了一組類

  D)類模板中只允許有一個(gè)類型參數(shù)

  (26)下列控制格式輸入輸出的操作符中,能夠設(shè)置浮點(diǎn)數(shù)精度的是

  A)setprecision

  B)setw

  C)setfill

  D)showpoint

  (27)下列程序段中包含4個(gè)函數(shù),其中具有隱含this指針的是

  int fun1();

  class Test{

  public:

  int fun2();

  friend int fun3();

  static int fun4();

  };

  A)fun1

  B)fun2

  C)fun3

  D)fun4

  (28)有如下程序

  #include

  using namespace std;

  class Test{

  public:

  Test(){ }

  Test(const Test &t) {cout<<1;}

  };

  Test fun(Test &u) {Test t=u; return t;}

  int main(){Test x,y; x=fun(y); return 0;}

  運(yùn)行這個(gè)程序的輸出結(jié)果是

  A)無輸出

  B)1

  C)11

  D)111

  (29)有如下程序

  #include

  using namespace std;

  class A{

  public:

  A(int i=0):r1(i) { }

  void print() {cout<<'E’<

  void print() const {cout<<'C'<

  void print(int x) {cout <<'P'<

  private:

  int r1;

  };

  int main() {

  A a1;

  const A a2(4);

  a1.print(2);

  a1.print();

  return 0;

  }

  運(yùn)行時(shí)的輸出結(jié)果是

  A)P8-E4

  B)P8-C16-

  C)P0-E4-

  D)P0-C16-

  (30)下列代碼聲明了3個(gè)類

  class Person{};

  class Student:public Person{};

  class Undergraduate:Student{};

  下列關(guān)于這些類之間關(guān)系的描述中,錯(cuò)誤的是

  A)類Person是類Undergraduate的基類

  B)類Undergraduate從類Student公有繼承

  C)類Student是類Person的派生類

  D)類Undergraduate是類Person的派生類

  (31)有如下程序

  #include

  using namespace std;

  Class Base{

  public:

  Base(int x=0):valB(x) {cout<

  ~Base() {cout<

  private:

  int valB;

  };

  class Derived:public Base{

  public:

  Derived(int x=0,int y=0):Base(x),valD(y){cout<

  ~Derived() {cout<

  private:

  int valD;

  };

  int main(){

  Derived obj12(2,3);

  retuen 0;

  }

  運(yùn)行時(shí)的輸出結(jié)果是

  A)2332

  B)2323

  C)3232

  D)3223

  (32)下面是類Shape的定義:

  class Shape{

  public:

  virtual void Draw()=0;

  };

  下列關(guān)于Shape類的描述中,正確的是

  A)類Shape是虛基類

  B)類Shape是抽象類

  C)類Shape中的Draw函數(shù)聲明有誤

  D)語(yǔ)句“Shape s;”能夠建立Shape的一個(gè)對(duì)象s

  (33)將運(yùn)算符“+”重載為非成員函數(shù),下列原型聲明中,錯(cuò)誤的是

  A)MyClock operator + (MyClock,long);

  B)MyClock operator + (MyClock,MyClock);

  C)MyClock operator + (long,long);

  D)MyClock operator + (long,MyClock);

  (34)打開文件時(shí)可單獨(dú)或組合使用下列文件打開模式

 、賗os_base::app ②ios_base::binary

 、踚os_base::in ④ios_base::out

  若要以二進(jìn)制讀方式打開一個(gè)文件,需使用的文件打開模式為

  A)①③

  B)①④

  C)②③

  D)②④

  (35)有如下程序:

  #include

  using namespace std;

  Class B{

  public:

  B(int xx):x(xx) {++cout; x+=10;}

  virtual void show() const

  {cout<

  protected:

  static int count;

  private:

  int x;

  };

  class D:public B{

  public:

  D(int xx,int yy):B(xx),y(yy) {++count; y+=100;}

  virtual void show() const

  {cout<

  private:

  int y;

  };

  int B::count=0;

  int main(){

  B *ptr=new D(10,20);

  ptr->show();

  delete ptr;

  return 0;

  }

  運(yùn)行時(shí)的輸出結(jié)果是

  A)1_120

  B)2_120

  C)1_20

  D)2_20

  二、填空題(每空2分,共30分)

  請(qǐng)將每一個(gè)空的正確答案寫在答題卡【l】~【15】序號(hào)的橫線上,答在試卷上不得分。

  (1)一個(gè)隊(duì)列的初始狀態(tài)為空,F(xiàn)將元素A,B,C,D,E,F,5,4,3,2,1依次入隊(duì),然后再依次退隊(duì),則元素退隊(duì)的順序?yàn)?【1】 。

  (2)設(shè)某循環(huán)隊(duì)列的容量為50,如果頭指針front=45(指向隊(duì)頭元素的前一位置),尾指針rear=10(指向隊(duì)尾元素),則該循環(huán)隊(duì)列中共有 【2】 個(gè)元素。

  (3)設(shè)二叉樹如下:

2010年3月計(jì)算機(jī)等級(jí)考試二級(jí)C++筆試試題(文字版)

  對(duì)該二叉樹進(jìn)行后序遍歷的結(jié)果為 【3】 。

  (4)軟件是 【4】 、數(shù)據(jù)和文檔的集合。

  (5)有一個(gè)學(xué)生選課的關(guān)系,其中學(xué)生的關(guān)系模式為:學(xué)生(學(xué)號(hào),姓名,班級(jí),年齡),課程的關(guān)系模式為:課程(課號(hào),課程名,學(xué)時(shí)),其中兩個(gè)關(guān)系模式的鍵分別是學(xué)號(hào)和課號(hào),則關(guān)系模式選課可定義為:選課(學(xué)號(hào), 【5】 ,成績(jī))。

  (6)若x和y是兩個(gè)整形變量,在執(zhí)行了語(yǔ)句序列

  x=5; y=6; y+=x--;

  后,x+y的值為 【6】 。

  (7)在執(zhí)行語(yǔ)句序列

  int i=0; do i++; while(i*i<10);

  時(shí),do后面的循環(huán)體語(yǔ)句i++被執(zhí)行的次數(shù)為 【7】 。

  (8)有如下的函數(shù)定義:

  int Xfun(int *a, int n){

  int x=*a;

  for(int *pa=a+1; pa

  if(*pa>x) x=*pa;

  return x;

  }

  若執(zhí)行了語(yǔ)句

  int x[5]={23,46,78,55,16};

  后,通過表達(dá)式Xfun(x,5)調(diào)用該函數(shù),則得到的返回值為 【8】 。

  (9)有如下的函數(shù)定義:

  int Xfun(int x){

  int y=x;

  {int x=10; y+=x;}

  return x+y;

  }

  通過表達(dá)式Xfun(5)調(diào)用該函數(shù),則得到的返回值為 【9】 。

  (10)假定Xcs是一個(gè)類,該類中一個(gè)成員函數(shù)的原型為“Xcs *abc();”,則在類外定義時(shí)對(duì)應(yīng)的函數(shù)頭為 【10】 。

  (11)請(qǐng)將下面的類Date的定義補(bǔ)充完整,使得由語(yǔ)句

  Date FirstDay;

  定義的對(duì)象FirstDay的值為2010年1月1日。

  class Date{

  public:

  Date( 【11】 ):year(y),month(m),day(d){ }

  private:

  int year,month,day; //依次表示年、月、日

  };

  (12)請(qǐng)將下面的程序補(bǔ)充完整,使得程序輸出“飄是張娜的書”。

  #include

  using namespace std;

  class Book{

  public:

  Book(char *str) {strcpy(title,str);}

  【12】 void PrintInfo() {cout<

  protected:

  char title[50];

  };

  class MyBook:public Book{

  public:

  MyBook(char *s1,char *s2="張娜"):

  【13】 {strcpy(owner,s2);}

  virtual void PrintInfo() {cout<

  private:

  char owner[10];

  };

  int main(){

  Book *prt=new MyBook("飄");

  prt->PrintInfo();

  return 0;

  }

  (13)在有理數(shù)類Rational中重載插入運(yùn)算符<<,以便按a/q形式輸出。請(qǐng)將<<運(yùn)算符函數(shù)的定義補(bǔ)充完整。

  class Rational{

  public:

  Rational(int aa, int qq):a(aa),q(qq){ }

  friend 【14】 operator<<(ostream &out, Rational &x)

  {

  return (out<

  }

  private:

  int a,q;

  };

  (14)下面的函數(shù)定義是某函數(shù)模板能夠生成的函數(shù)實(shí)例

  int square(int n) {return n*n;}

  double square(double n) {return n*n;}

  由此可知,該函數(shù)模板的定義是 【15】 。

更新時(shí)間2022-09-16 09:59:09【至頂部↑】
聯(lián)系我們 | 郵件: | 客服熱線電話:4008816886(QQ同號(hào)) | 

付款方式留言簿投訴中心網(wǎng)站糾錯(cuò)二維碼手機(jī)版

電話:
付款方式   |   給我留言   |   我要糾錯(cuò)   |   聯(lián)系我們