亚洲一级免费看,特黄特色大片免费观看播放器,777毛片,久久久久国产一区二区三区四区,欧美三级一区二区,国产精品一区二区久久久久,人人澡人人草

試題

上半年全國計算機二級C++筆試真題

時間:2025-01-22 19:32:55 試題 我要投稿

2006上半年全國計算機二級C++筆試真題

  一、選擇題((1)~(35)每小題2分,共70分) 下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的,請將正確選項涂寫在答題卡相應位置上,答在試卷上不得分。

2006上半年全國計算機二級C++筆試真題

  (1)下列選項不屬于結構化程序設計方法的是

  A.自頂向下

  B.逐步求精

  C.模塊化

  D.可復用

  (2)兩個或兩個以上模塊之間關聯(lián)的緊密程度稱為

  A.耦合度

  B.內(nèi)聚度

  C.復雜度

  D.數(shù)據(jù)傳輸特性

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

  A.軟件測試應該由程序開發(fā)者來完成

  B.程序經(jīng)調試后一般不需要再測試

  C.軟件維護只包括對程序代碼的維護

  D.以上三種說法都不對

  (4)按照“后進先出”原則組織數(shù)據(jù)的數(shù)據(jù)結構是

  A.隊列

  B.棧

  C.雙向鏈表

  D.二叉樹

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

  A.線性鏈表是線性表的鏈式存儲結構

  B.棧與隊列是非線性結構

  C.雙向鏈表是非線性結構

  D.只有根結點的二叉樹是線性結構

  (6)對如下二叉樹,進行后序遍歷的結果為

  A.ABCDEF

  B.DBEAFC

  C.ABDECF

  D.DEBFCA

  (7)在深度為7的滿二叉樹中,葉子結點的個數(shù)為

  A.32

  B.31

  C.64

  D.63

  (8)“商品”與“顧客”兩個實體集之間的聯(lián)系一般是

  A.一對一

  B.一對多

  C.多對一

  D.多對多

  (9)在E-R圖中,用來表示實體的圖形是

  A.矩形

  B.橢圓形

  C.菱形

  D.三角形

  (10)數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS、數(shù)據(jù)庫管理系統(tǒng)DBMS之間的關系是

  A.DB包含DBS和DBMS

  B.DBMS包含DB和DBS

  C.DBS包含DB和DBMS

  D.沒有任何關系

  (11)下列關于C++函數(shù)的說明中,正確的是

  A.內(nèi)聯(lián)函數(shù)就是定義在另一個函數(shù)體內(nèi)部的函數(shù)

  B.函數(shù)體的最后一條語句必須是return語句

  C.標準C++要求在調用一個函數(shù)之前,必須先聲明其原型

  D.編譯器會根據(jù)函數(shù)的返回值類型和參數(shù)表來區(qū)分函數(shù)的不同重載形式

  (12)由于常對象不能被更新,因此

  A.通過常對象只能調用它的常成員函數(shù)

  B.通過常對象只能調用靜態(tài)成員函數(shù)

  C.常對象的成員都是常成員

  D.通過常對象可以調用任何不改變對象值的成員函數(shù)

  (13)下列關于虛函數(shù)的說明中,正確的是

  A.從虛基類繼承的函數(shù)都是虛函數(shù)

  B.虛函數(shù)不得是靜態(tài)成員函數(shù)

  C.只能通過指針或引用調用虛函數(shù)

  D.抽象類中的成員函數(shù)都是虛函數(shù)

  (14)運算符重載是對已有的運算符賦予多重含義,因此

  A.可以對基本類型(如int類型)的數(shù)據(jù),重新定義“+”運算符的含義

  B.可以改變一個已有運算符的優(yōu)先級和操作數(shù)個數(shù)

  C.只能重載C++中已經(jīng)有的運算符,不能定義新運算符

  D.C++中已經(jīng)有的所有運算符都可以重載

  (15)模板對類型的參數(shù)化提供了很好的支持,因此

  A.類模板的主要作用是生成抽象類

  B.類模板實例化時,編譯器將根據(jù)給出的模板實參生成一個類

  C.在類模板中的數(shù)據(jù)成員都具有同樣類型

  D.類模板中的成員函數(shù)都沒有返回值

  (16)下列關于C++流的說明中,正確的是

  A.與鍵盤、屏幕、打印機和通信端口的交互都可以通過流類來實現(xiàn)

  B.從流中獲取數(shù)據(jù)的操作稱為插入操作,向流中添加數(shù)據(jù)的操作稱為提取操作

  C.cin是一個預定義的輸入流類

  D.輸出流有一個名為open的成員函數(shù),其作用是生成一個新的流對象

  (17)下列符號中可以用作C++標識符的是

  A._radius

  B.foo~bar

  C.else

  D.3room

  (18)下列語句中,錯誤的是

  A.const int buffer=256;

  B.const int temp;

  C.const double *point;

  D.const double *rt =new double(5.5);

  (19)有如下程序:

  int x=3;

  do{

  x -= 2;

  cout<

  }while(!(--x));

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

  A. 1

  B.3 0

  C. l-2

  D.死循環(huán)

  (20)有如下程序:

  #include

  using namespace std;

  int main()

  {

  int *p;

  *p = 9;

  cout<<"The value at p:"<<*p;

  return 0;

  }

  編譯運行程序將出現(xiàn)的情況是

  A.夠編譯時出現(xiàn)語法錯誤,不能生成可執(zhí)行文件

  B.運行時一定輸出:The value at p: 9

  C.運行時一定輸出:The value at p: *9

  D.運行時有可能出錯

  (21)有如下程序:

  #include

  using namespace std;

  int main()

  {

  void function(double val);

  double val;

  function(val);

  cout<

  return 0;

  }

  void function(double val)

  {

  val = 3;

  }

  編譯運行這個程序將出現(xiàn)的情況是

  A.編譯出錯,無法運行

  B.輸出:3

  C.輸出:3.0

  D.輸出一個不確定的數(shù)

  (22)有如下類定義:

  class AA

  {

  int a;

  public:

  int getRef() const{return &a;} //①

  int getvalue() const{return a;} //②

  void set(int n) const{a=n;} //③

  friend void show(AA aa) const {cout< //④

  };

  其中的四個函數(shù)定義中正確的是

  A.①

  B.②

  C.③

  D.④

  (23)有如下程序:

  #include +

  using namespace std;

  #include

  using namespace std;

  class Base

  {

  public:

  void fun(){cout<<"Base::fun"<

  };

  class Derived:public Base

  {

  public:

  void fun()

  {

  cout<<"Derived::fun"<

  }

  };

  int main()

  {

  Derived d;

  d.fun();

  return 0;

  }

  已知其執(zhí)行后的輸出結果為:

  Base::fun

  Derived::fun

  則程序中下劃線處應填入的語句是

  A.Base.fun();

  B.Base::fun()

  C.Base->fun()

  D.fun();

  (24)下面是重載為非成員函數(shù)的運算符函數(shù)原型,其中錯誤的是

  A.Fraction operator + (Fraction, Fraction);

  B.Fraction operator - (Fraction);

  C.Fraction& operator = (Fraction&, Fraction);

  D.Fraction& operator += (Fraction&, Fraction);

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

  template

  T cast(U u){return u;}

  其功能是將U類型數(shù)據(jù)轉換為T類型數(shù)據(jù)。已知i為int型變量,下列對模板函數(shù)cast的調用中正確的是

  A.cast(i);

  B.cast<>(i);

  C.cast(i);

  D.cast (i);


  (26)若磁盤上已存在某個文本文件,其全路徑文件名為d:\ncre\test.txt,下列語句中不 能打開該文件的是

  A.ifstream file("d:\ncre\test.txt");

  B.ifstream file("d:\ncre\test.txt");

  C.ifstream file; file.open("d:\ncre\test.txt");

  D.ifstream* pFile=new ifstream("d:\ncre\test.txt");

  (27)有如下類定義:

  class Foo

  {

  public:

  Foo(int v):value(v){} //①

  ~Foo(){} //②

  private:

  Foo(){} //③

  int value = 0; //④

  };

  其中存在語法錯誤的行是

  A.①

  B.②

  C.③

  D.④

  (28)有如下類定義:

  class Point

  {

  int x_, y_;

  public:

  Point():x_(0), y_(0){}

  Point(int x, int y = 0):x_(x),y_(y){}

  };

  若執(zhí)行語句

  Point a(2), b[3], *c[4];

  則Point類的構造函數(shù)被調用的次數(shù)是

  A.2次

  B.3次

  C.4次

  D.5次

  (29)有如下類定義:

  class Test

  {

  public:

  Test(){ a = 0; c = 0;} //①

  int f(int a)const{this->a = a;} //②

  static int g(){return a;} //③

  void h(int

  B.{Test::b = b;}; //④

  private:

  int a;

  static int b;

  const int c;

  };

  int Test::b = 0;

  在標注號碼的行中,能被正確編譯的是

  A.①

  B.②

  C.③

  D.④

  (30)有如下程序:

  #include

  using namespace std;

  class A

  {

  public:

  A(){cout<<"A";}

  ~A(){cout<<"~A";}

  };

  class B:public A

  {

  A* p;

  public:

  B(){cout<<"B"; p = new A();}

  ~B(){cout<<"~B"; delete p;}

  };

  int main()

  {

  B obj;

  return 0;

  }

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

  A.BAA~A~B~A

  B.ABA~B~A~A

  C.BAA~B~A~A

  D.ABA~A~B~A

  (31)有如下程序:

  #include

  using namespace std;

  class Base

  {

  private:

  void funl() const{cout<<"funl";}

  protected:

  void fun2() const{cout<<"fun2";}

  public:

  void fun3() const{cout<<"fun3";}

  };

  class Derived:protected Base

  {

  public:

  void fun4() const{cout<<"fun4";}

  };

  int main()

  {

  Derived obj;

  obj.funl(); //①

  obj.fun2(); //②

  obj.fun3(); //③

  obj.fun4(); //④

  return 0;

  }

  其中有語法錯誤的語句是

  A.①②③④

  B.①②③

  C.②③④

  D.①④

  (32)有如下程序:

  #include

  using namespace std;

  class Base

  {

  public:

  void funl(){cout<<"Base\n";}

  virtual void fun2(){cout<<"Base\n";}

  };

  class Derived:public Base

  {

  public:

  void funl(){cout<<"Derived\n";}

  void fun2(){cout<<"Derived\n";}

  };

  void f(Base &

  B.{b.funl();b.fun2();}&, lt;, /P>

  int main()

  {

  Derived obj;

  f(obj);

  return 0;

  }

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

  A.Base

  B.Base

  C.Derived

  D.Derived

  Base Derived Base Derived

  (33)有如下程序:

  #include

  using namespace std;

  class Complex

  {

  double re, im;

  public:

  Complex(double r, double i):re(r), im(i){}

  double real() const{return re;}

  double image() const{return im;}

  Complex& operator +=(Complex a)

  {

  re += a.re;

  im += a.im;

  return *this;

  }

  };

  ostream &operator<<(ostream& s,const Complex& z)

  {

  return s<<'('<

  }

  int main()

  {

  Complex x(1, -2), y(2, 3);

  cout<<(x += y)<

  return 0;

  }

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

  A.(1, -2)

  B.(2, 3)

  C.(3, 5)

  D.(3, 1)

  (34)有如下程序:

  #include

  #include

  using namespace std;

  int main()

  {

  cout.fill('*');

  cout<

  return 0;

  }

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

  A.123*OK

  B.123*OK**

  C.*123OK

  D.*123**OK

  (35)有如下類聲明:

  class SAMPLE

  {

  int n;

  public:

  SAMPLE (int i = 0): n(i){}

  void setvalue(int n0);

  };

  下列關于setvalue成員函數(shù)的實現(xiàn)中,正確的是

  A.SAMPLE::setvalue(int n0){n = n0;}

  B.void SAMPLE::setvalue(int n0){n = n0;}

  C.void setvalue(int n0){n = n0;}

  D.setvalue(int n0){n = n0;}


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

  請將每一個空的正確答案寫在答題卡【1】~【15】序號的橫線上,答在試卷上不得分。

  (1)對長度為10的線性表進行冒泡排序,最壞情況下需要比較的次數(shù)為 【1】 。

  (2)在面向對象方法中, 【2】 描述的是具有相似屬性與操作的一組對象。

  (3)在關系模型中,把數(shù)據(jù)看成是二維表,每一個二維表稱為一個 【3】 。

  (4)程序測試分為靜態(tài)分析和動態(tài)測試。其中 【4】 是指不執(zhí)行程序,而只是對程序 文本進行檢查,通過閱讀和討論,分析和發(fā)現(xiàn)程序中的錯誤。

  (5)數(shù)據(jù)獨立性分為邏輯獨立性與物理獨立性。當數(shù)據(jù)的存儲結構改變時,其邏輯結構 可以不變,因此,基于邏輯結構的應用程序不必修改,稱為 【5】 。

  (6)有一種只在循環(huán)語句或switch語句中使用的流程控制語句,表示該語句的關鍵字是 【6】 。

  (7)程序中有如下語句

  for(int i = 0; i<5; i++)cout<<*(p + i)<<",";

  能夠依次輸出int型一維數(shù)組DATA的前5個元素。由此可知,變量p的定義及初始 化語句是 【7】 。

  (8)若下面程序運行時輸出結果為

  1, A, 10.1

  2, B, 3.5

  請將程序補充完整。,

  #include

  using namespace std;

  int main()

  {

  void test(int, char,double 【8】 );

  test(1,'A',10.1);

  test(2,'B');

  return 0;

  }

  void test(int a, char b, double

  C.

  {

  cout<

  }

  (9)有如下類聲明:

  class MyClass

  {

  int i;

  private: int j;

  protected:int k;

  public:int m, n;

  };

  其中,私有成員的數(shù)量為 【9】 。

  (10)有如下程序:

  #include

  using namespace std;

  class Con

  {

  char ID;

  public:

  Con():ID('A'){cout<<1;}

  Con(char I

  D.:ID(I

  D.{cout<<2;}

  Con(Con&

  C.:ID(c.getID()){cout<<3;}

  char getID() const{return ID;}

  };

  void show(Con

  C.{cout<

  int main()

  {

  Con c1;

  show(c1);

  Con c2('B');

  show(c2);

  return 0;

  }

  執(zhí)行上面程序的輸出是 【10】 。

  (11)有如下程序:

  #include

  using namespace std;

  class ONE

  {

  public:

  virtual void f(){cout<<"l";}

  };

  class TWO:public ONE

  {

  public:

  TWO(){cout<<"2";}

  };

  class THREE:public TWO

  {

  public:

  virtual void f(){TWO::f(); cout<<"3";}

  };

  int main()

  {

  ONE aa, *p;

  TWO bb;

  THREE cc;

  p = &cc;

  p->f();

  return 0;

  }

  執(zhí)行上面程序的輸出是 【11】 。

  (12)有如下程序:

  #include

  using namespace std;

  class PARENT

  {

  public:

  PARENT(){cout<<"PARENT";}

  };

  class SON:public PARENT

  {

  public:

  SON(){cout<<"SON";}

  };

  int main()

  {

  SON son;

  PARENT *p;

  p = &son;

  return 0;

  }

  執(zhí)行上面程序的輸出是 【12】 。

  (13)若以非成員函數(shù)形式,為類Bounce重載“!”運算符,其操作結果為一bool型數(shù)據(jù),則該運算符重載函數(shù)的原型是 【13】 。

  (14)下面是復數(shù)類complex的定義,其中重載的運算符“+”的功能是返回一個新的復 數(shù)對象,其實部等于兩個操作對象實部之和,其虛部等于兩個操作對象虛部之和;請補充完整:

  class complex

  {

  double real; //實部

  double imag; //虛部

  public:

  complex(double r,double i):real(r),imag(i){}

  complex operator+(complex a)

  {

  return complex( 【14】 );

  }

  };

  (15)已知一個函數(shù)模板定義為

  template T1, typename T2>

  T1 FUN(T2 n) {return n * 5.0;}

  若要求以int型數(shù)據(jù)7為函數(shù)實參調用該模板函數(shù),并返回一個double型數(shù)據(jù),則該 調用應表示為 【15】 。

【上半年全國計算機二級C++筆試真題】相關文章:

2005年上半年全國計算機二級C++筆試真題10-26

全國計算機等級考試二級C++筆試真題10-11

上半年全國計算機二級C++考試真題03-21

3月全國計算機等級考試二級C++筆試真題10-11

全國計算機二級考試C++真題09-20

2005年上半年全國計算機二級VB筆試真題08-17

2006上半年全國計算機二級C語言筆試真題09-06

2005年上半年全國計算機二級ACCESS筆試真題10-07

2005年上半年全國計算機二級VFP筆試真題09-01