亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

試題

上半年全國(guó)計(jì)算機(jī)二級(jí)C++考試真題

時(shí)間:2024-03-21 09:51:05 試題 我要投稿
  • 相關(guān)推薦

上半年全國(guó)計(jì)算機(jī)二級(jí)C++考試真題

  一、選擇題

上半年全國(guó)計(jì)算機(jī)二級(jí)C++考試真題

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

  A)棧是“先進(jìn)先出”的線性表

  B)隊(duì)列是“先進(jìn)后出”的線性表

  C)循環(huán)隊(duì)列是非線性結(jié)構(gòu)

  D)有序線性表既可以采用順序存儲(chǔ)結(jié)構(gòu),也可以采用鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

  (2)支持子程序調(diào)用的數(shù)據(jù)結(jié)構(gòu)是

  A)棧

  B)樹(shù)

  C)隊(duì)列

  D)二叉樹(shù)

  (3)某二叉樹(shù)有5個(gè)度為z的結(jié)點(diǎn),則該二叉樹(shù)中的葉子結(jié)點(diǎn)數(shù)是

  A)10

  B)8

  C)6

  D)4

  (4)下列排序方法中,最壞情況下比較次數(shù)最少的是

  A)冒泡排序

  B)簡(jiǎn)單選擇排序

  C)直接插入排序

  D)堆排序

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

  A)編譯程序

  B)操作系統(tǒng)

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

  D)匯編程序

  (6)下面敘述中錯(cuò)誤的是

  A)軟件測(cè)試的目的是發(fā)現(xiàn)錯(cuò)誤并改正錯(cuò)誤

  B)對(duì)被調(diào)試的程序進(jìn)行“錯(cuò)誤定位”是程序調(diào)試的必要步驟

  C)程序調(diào)試通常也稱為Debug

  D)軟件測(cè)試應(yīng)嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性

  (7)耦合性和內(nèi)聚性是對(duì)模塊獨(dú)立性度量的兩個(gè)標(biāo)準(zhǔn)。下列敘述中正確的是

  A)提高耦合性降低內(nèi)聚性有利他哦高模塊的獨(dú)立性

  B)降低耦合性提高內(nèi)聚性有利于提高模塊的獨(dú)立性

  C)耦合性是指一個(gè)模塊內(nèi)部各個(gè)元索間彼此結(jié)合的緊密程度

  D)內(nèi)聚性是指模塊間互相連接的緊密程度

  (8)數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)中的核心問(wèn)題是

  A)數(shù)據(jù)庫(kù)設(shè)計(jì)

  B)數(shù)據(jù)庫(kù)系統(tǒng)設(shè)計(jì)

  C)數(shù)據(jù)庫(kù)維護(hù)

  D)數(shù)據(jù)庫(kù)管理員培訓(xùn)

  (9)有如下程序:

  #include

  using namespace std;

  class ONE{

  int c;

  public:

  ONE():c(0){cout<<1;}

  ONE(int n):c (n){cout<<2;}

  };

  class TWO{

  ONE onel;

  ONE one2;

  public:

  TWO(int m):one2(m){cout<<3;}

  };

  int main()t

  TWO t(4)

  return 0

  }

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

  A)3

  B)23

  C)123

  D)213

  (10)將E-R圖轉(zhuǎn)換為關(guān)系模式時(shí),實(shí)體和聯(lián)系都可以表示為

  A)屬性

  B)鍵

  C)關(guān)系

  D)域

  (11)對(duì)C++編譯器區(qū)分重載函數(shù)無(wú)任何意義的信息是

  A)參數(shù)類型

  B)參數(shù)個(gè)數(shù)

  C)返回值類型

  D)常成員函數(shù)關(guān)鍵字coast

  (12)有如下類定義和變量定義:

  class A{

  publie:

  A(){data=0;}

  ~A(){}

  int GetData ( ) coast { return data;}

  void SetData(int n) {data=n;}

  private:

  int data;

  };

  ccnst A a;

  A b;

  下列函數(shù)調(diào)用中錯(cuò)誤的是

  A)a .GetData();

  B)a .SetData(10);

  C)b .GetData();

  D)b .SetData(10);

  (13)有如下類定義和變量定義:

  class Parents{

  public:

  int publicuata;

  private:

  int privateData;

  };

  class ChildA:public Parents{/*類體略*/};

  class ChildB:private Parents{/*類體略*/);

  ChildA a;

  ChildBb;

  下列語(yǔ)句中正確的是

  A)cout< B)cout< C)cout< D)cout<

  (14)運(yùn)算符重載時(shí)不需要保持的性質(zhì)是

  A)操作數(shù)個(gè)數(shù)

  B)操作數(shù)類型

  C)優(yōu)先級(jí)

  D)結(jié)合性

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

  A)從模板實(shí)參表和從模板函數(shù)實(shí)參表獲得信息矛盾時(shí),以模板實(shí)參的信息為準(zhǔn)

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

  C)虛擬類型參數(shù)沒(méi)有出現(xiàn)在模板函數(shù)的形參表中時(shí),不能省略模板實(shí)參

  D)模板參數(shù)表不能為空

  (16)要建立文件流并打開(kāi)當(dāng)前目錄下的文件file.dat用于輸入,下列語(yǔ)句中錯(cuò)誤的是

  A)ifstream fin=ifstream.open(“file.dat”);

  B)ifstream*fir.=new ifstream(“file.dat”);

  C)ifstream fin; fin.open(“file.dat”);

  D)ifstream *fin=new ifstream( );fin一>open(“file.dat”);

  (17)下列描述中,不屬于面向?qū)ο笏枷胫饕卣鞯氖?/p>

  A)封裝性

  B)跨平臺(tái)性

  C)繼承性

  D)多態(tài)性

  (18)有如下程序段:

  Tnt i=4;int j=l;

  int main(){

  int i=8,j=i;

  cout< }

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

  A)44

  B)41

  C)88

  D)81

  (19)有如下程序段:

  int i=5;

  while(int i=0){cout《'*';i--;}

  運(yùn)行時(shí)輸出“*”的個(gè)數(shù)是

  A)0

  B)1

  C)5

  D)無(wú)窮

  (20)己知有數(shù)組定義

  char a[3][4];

  下列表達(dá)式中錯(cuò)誤的是

  A)a[2]=“WIN”

  B)strcpy(a[2],“WIN”)

  C)a [2][3]='W'

  D)a[0][1]=a[0][1]

  (21)已知函數(shù)fun的原型為

  int fun(int,int,int);

  下列重載函數(shù)原型中錯(cuò)誤的是

  A)char fun(int,int);

  B)double fun(int,int,double);

  C)int fun(int,char*);

  D)float fun (int, int, int);

  (22)建立一個(gè)類對(duì)象時(shí),系統(tǒng)自動(dòng)調(diào)用

  A)析構(gòu)函數(shù)

  B)構(gòu)造函數(shù)

  C)靜態(tài)函數(shù)

  D)友元函數(shù)

  (23)通過(guò)派生類的對(duì)象可直接訪問(wèn)其

  A)公有繼承基類的公有成員

  B)公有繼承基類的私有成員

  C)私有繼承基類的公有成員

  D)私有繼承基類的私有成員

  (24)己知表達(dá)式++a中的“++”是作為成員函數(shù)重載的運(yùn)算符,則與十+a等效的運(yùn)算符函數(shù)調(diào)用形式為

  A)a .orerator++(1)

  B)operator++(a)

  C)operator++(a,l)

  D)a.operator++( )

  (25)在定義一個(gè)類模板時(shí),模板形參表是用一對(duì)括號(hào)括起來(lái)的,所采用的括號(hào)是

  A)( )

  B)[ ]

  C)< >

  D){ }

  (26)當(dāng)使用ifstream流類定義一個(gè)流對(duì)象并打開(kāi)一個(gè)磁盤(pán)文件時(shí),文件的默認(rèn)打開(kāi)方式為

  A)ios_base::in

  B)ios_base::in|ios_base::out

  C)ios_base::out

  D)ios_base::in&ios_base::out

  (27)有如下程序:

  #include

  #include

  using namespace std;

  class XCD{

  char* a;

  int b;

  public:

  XCD(char* aa, int bb){

  a=new char[strlen(aa)+1];

  strcpty(a,aa);

  b=bb;

  }

  Char* Geta (){return a;)

  int Getb(){ return b;}

  };

  int main(){

  char *pl=“abcd”,*p2=“weirong”;

  int dl=6, d2=8;

  XCD x(pl,dl),Y(p2,d2);

  cout< return 0;

  }

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

  A)12

  B)16

  C)14

  D)11

  (28)有如下程序:

  #include

  #include

  using namespace std;

  class XCF{

  int a;

  public:

  XCF(int aa=0):a (aa){cout<<“1”;}

  XCF(XCF& x){a=x .a; cout<<“2”;)

  ~XCF(){cout< int Geta(){return a;}

  };

  int main(){

  XCF dl(5),d7 (dl);

  XCF *pd=new XCF(8);

  cout

  delete pd;

  return 0;

  }

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

  A)121SS88

  B)12188SS

  C)12185

  D)128512

  (29)已知類MyClass聲明如下:

  class MyClass{

  int n;

  public;

  MyClass(int k):n(k){}

  int getValue()const{return n;}

  };

  在下列數(shù)組定義中正確的是

  A)MyClass x1[2];

  B)MyClass x2[2]={new MyClass(1),new MyClass(2)};

  C)MyClass *x3[2];

  D)MyClass *x4[2]={MyClass(1),MyClass(2)};

  (30)有如下程序:

  #include

  using namespace std;

  class AA{

  lilt k;

  protected:

  int n;

  void setK(int k){ this->k=k;}

  public:

  void setN(int n){ this->n=n;}

  };

  class BB: public }{/*類體略*/};

  int main(){

  BB x_ ; //1

  x .n=1; //2

  x.setN (2); //3

  x.k=3; //4

  x .setK(4);

  return 0;

  }

  在標(biāo)注號(hào)碼的四條語(yǔ)句中正確的是

  A)1

  B)2

  C)3

  D)4

  (31)有如下類定義:

  class XX{

  int xx;

  public:

  XX():xx(0){cout<<' A';}

  XX(int n):xx ( n){tout<<' B';}

  };

  Class YY:public XX{

  Int yy;

  public:

  YY():yy ( 0){cout+yy;}

  YY(int n):XX(n+1),yy(n){cout< YY (int m, int n):XX (m),yy(n){cout< };

  下列選項(xiàng)中,輸出結(jié)果為A0的語(yǔ)句是

  A)YY y1(0,0);

  B)YY y2(1);

  C)YY y3(0);

  D)YY y4;

  (32)有如下程序:

  #include

  Using namespace std;

  class A{

  public:

  virtual void f(){cout+1;}

  void g(){cout<<2;}

  };

  class B:public A{

  public:

  virtual void f(){cout<<3;}

  void g(){ecut<<4;}

  };

  void show(A &a){a.f();a.g( );}

  int main(){

  B b;

  show(b);

  return 0;

  }

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

  A)12

  B)34

  C)14

  D)32

  (33)有如下程序:

  #include

  using namespace std;

  class Pair{

  int m;

  int n;

  public:

  Pair(int i,int j):m(i),n(j){}

  boot operator >(pair p)const; //須在類體外給出定義

  };

  int main(){

  Pair Al(3,4),p2(4,3);p3(4,5);

  Cout<<(pl>p2)<<(p2>P1)<<(p2>p3)<<(p3>p2);

  return 0;

  }

  運(yùn)算符函數(shù)。operator>的功能是比較兩個(gè)Pair對(duì)象的大小,當(dāng)左邊對(duì)象大時(shí),返回true,否則返回false。比較規(guī)則是首先比較兩對(duì)象的m成員,m大者為大;當(dāng)m相等時(shí)比較n,n大者為大。程序輸出0101,下列對(duì)運(yùn)算符重載函數(shù)的正確定義是

  A)bool Pair::operator>(Pair p)const

  {if (m!=p.m) return m>p.m; return n>p.n;}

  B)bool Pair:;operator>(Pair p)

  {if (m!=p.m) return m>p.m; return n>p.n;}

  C)bool Pair::operator>(Pair p)const

  {if (m>p.m) return true; return n>p.n;}

  D)bool Pair:;operator>(Pair p)

  {if (m>p.m) return true; return n>p.n;}

  (34)假定下列語(yǔ)句都是程序運(yùn)行后首次執(zhí)行的輸出語(yǔ)句,其中輸出結(jié)果與另外三條語(yǔ)句不同的語(yǔ)句是

  A)cout< B)cout< C)cout<<123< D)cout<

  二、填空題

  (1)假設(shè)用一個(gè)長(zhǎng)度為50的數(shù)組(數(shù)組元索的下標(biāo)從0到49)作為棧的存化空間,棧底指針bottom指間棧底元素,棧頂指針top指向棧頂元素,如果bottom=49,top=30(數(shù)組下標(biāo)),則棧中具有【1】個(gè)元素。

  (2)軟件測(cè)試可分為白盒測(cè)試和黑盒測(cè)試;韭窂綔y(cè)試屬于【2】測(cè)試。

  (3)符合結(jié)構(gòu)化原則的三種基本控制結(jié)構(gòu)是:選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)和【3】。

  (4)數(shù)據(jù)庫(kù)系統(tǒng)的核心是【4】。

  (5)在E-K圖中,圖形包括矩形框、菱形框、橢圓框。其中表示實(shí)體聯(lián)系的是【5】框。

  (6)有如下程序段:

  int x=1,Y=2,z=3;

  x=x^z;

  y=y^z;

  z=x^y;

  cout< 執(zhí)行這個(gè)程序段的輸出是【6】。

  (7)有如下程序段:

  fer(int i=1; i<=50;i++){

  if(i%3 != 0)

  continue;

  else

  if(i%5!=0)

  continue;

  tout< }

  執(zhí)行這個(gè)程序段的輸出是【7】。

  (8)有如下程序段:

  Char c [20]=“examination”;

  c[4]=0;

  cout< 執(zhí)行這個(gè)程序段的輸出是【8】。

  (9)下面的函數(shù)利用遞歸實(shí)現(xiàn)了求1+2+3+……+n的功能:

  int sum(int n){

  if(n==0)

  return 0;

  else

  return n+sum(n-1);

  }

  在執(zhí)行sum(10)的過(guò)程中,遞歸調(diào)用sum函數(shù)的次數(shù)是【9】。

  (10)非成員函數(shù)應(yīng)該聲明為類【10】函數(shù)才能訪問(wèn)該類的私有成員。

  (11)有如下程序:

  #include

  using namespace std;

  class Monitor{

  public:

  Monitor(char t):type (t){}

  void print( ) const

  {cout<<“The type of monitor is”< private:

  char type;

  };

  class Computer{

  public:

  Computer(int i,char c): 【11】{}

  void Print()const

  {cout<<“The computer is”< private:

  int id;

  Monitor mon;

  };

  const Computer myComputer(101,'B‘);

  myComputer .Print();

  return 0;

  }

  請(qǐng)將程序補(bǔ)充完整,使程序在運(yùn)行時(shí)輸出:

  The computer is 101

  'The type of monitor i.s 8

  (12)有如下程序:

  #include

  using namespace std

  class Animal{

  public:

  virtual char* getType()const { return “Animal”;}

  virtual char* getVoice()const { return “Voice”;}

  };

  Class Dog : public Animal {

  public:

  char* getType ( ) const {return “Dog”;}

  char* getVoice ( ) const {return “Woof”}

  };

  void type(Animal& a) {cout< void speak(Animal a) {cout< int main( ) {

  Dog d; type (d);cout<<“ speak”;speak(d);cout< return 0;

  }

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

  (13)補(bǔ)充完整下面的類定義:

  const double PI=3 .14;

  class Circle{ //圓形物體的抽象基類

  protected:

  double r; //半徑

  public:

  Circle(double radius=0):r(radius){}

  【13】;//計(jì)算圓形物體表面積的純虛函數(shù)聲明

  };

  class Cylinder:public Circle { //圓柱體類

  double h; //高度

  public:

  Cylindr(double radius=0, doubli height=0):

  Circle(radius),h (height){}

  Virtual double Area() { //計(jì)算圓柱體的表面積

  return 2*PI*r*(r+h);

  }

  };

  (14)補(bǔ)充完整下面的類定義:

  class XCH{

  char* a;

  public:

  XCH(char* as) { //構(gòu)造函數(shù)

  a=new char[strlen(aa)+1];

  strcpy(a,aa);

  }

  XCH& operator=(const XCH& x) //重載賦值函數(shù)

  Delele []a;

  A=new char[strlen(x.a)+l];

  strcpy(a, x .a)

  【14】;

  }

  ~XCH() {delete []a;}

  };

  (15)補(bǔ)充完整下面的模板定義:

  template //Type為類型參數(shù)

  class Xtwo{ //由兩個(gè)Type類型的數(shù)據(jù)成員構(gòu)成的模板類

  Type a;

  Type b;

  public:

  Xtwe(Type aa=0, Type bb=0):a(aa),b(bb){}

  int Ccmpare (){//比較a和b的大小

  if (a>b)returm 1;

  else if(a==b) return 0;

  else return -1;

  }

  Type Snm() {return a+b;} //返回a和b之和

  Type Mult(); //函數(shù)聲明,返回a和b之乘積

  };

  Template

  【15】::Mult(){return a*b;} //Mult 函數(shù)的類外定義

【上半年全國(guó)計(jì)算機(jī)二級(jí)C++考試真題】相關(guān)文章:

全國(guó)計(jì)算機(jī)二級(jí)考試C++真題03-21

全國(guó)計(jì)算機(jī)二級(jí)考試《C語(yǔ)言》真題練習(xí)及答案09-20

全國(guó)計(jì)算機(jī)二級(jí)考試《C++》筆試樣卷06-12

2024年3月全國(guó)計(jì)算機(jī)二級(jí)考試VFP真題11-01

2022年全國(guó)計(jì)算機(jī)二級(jí)C++考試強(qiáng)化練習(xí)11-07

計(jì)算機(jī)等級(jí)考試二級(jí)C++筆試選擇題04-23

全國(guó)計(jì)算機(jī)二級(jí)《C++》上機(jī)試題及答案03-28

全國(guó)計(jì)算機(jī)等級(jí)二級(jí)考試java選擇題練習(xí)04-18

2023下半年全國(guó)計(jì)算機(jī)二級(jí)C++考試模擬題及答案08-22