视窗
loading...
您现在的位置:首页 > IT认证 > 练习中心 >

3月计算机等级考试二级C++笔试试题


  一、选择题(每小题2分,共70分)

  下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。

  (1)下列叙述中正确的是

  A)对长度为n的有序链表进行查找,最坏情况下需要的比较次数为n

  B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2)

  C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)

  D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n log2n)

  (2)算法的时间复杂度是指

  A)算法的执行时间

  B)算法所处理的数据量

  C)算法程序中的语句或指令条数

  D)算法在执行过程中所需要的基本运算次数

  (3)软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是

  A)编辑软件

  B)操作系统

  C)教务管理系统

  D)浏览器

  (4)软件(程序)调试的任务是

  A)诊断和改正程序中的错误

  B)尽可能多地发现程序中的错误

  C)发现并改正程序中的所有错误

  D)确定程序中错误的性质

  (5)数据流程图(DFD图)是

  A)软件概要设计的工具

  B)软件详细设计的工具

  C)结构化方法的需求分析工具

  D)面向对象方法的需求分析工具

  (6)软件生命周期可分为定义阶段,开发阶段和维护阶段。详细设计属于

  A)定义阶段

  B)开发阶段

  C)维护阶段

  D)上述三个阶段

  (7)数据库管理系统中负责数据模式定义的语言是

  A)数据定义语言

  B)数据管理语言

  C)数据操纵语言

  D)数据控制语言

  (8)在学生管理的关系数据库中,存取一个学生信息的数据单位是

  A)文件

  B)数据库

  C)字段

  D)记录

  (9)数据库设计中,用E-R图来描述信息结构但不涉及信息在计算机中的表示,它属于数据库设计的

  A)需求分析阶段

  B)逻辑设计阶段

  C)概念设计阶段

  D)物理设计阶段

  (10)有两个关系R和T如下:

2010年3月计算机等级考试二级C++笔试试题(文字版)


  则由关系R得到关系T的操作是

  A)选择

  B)投影

  C)交

  D)并

  (11)下列关于函数的描述中,错误的是

  A)函数可以没有返回值

  B)函数可以没有参数

  C)函数可以是一个类的成员

  D)函数不能被定义为模板

  (12)若MyClass是一个类名,且有如下语句序列

  MyClass c1,*c2;

  MyClass *c3=new MyClass;

  MyClass &c4=c1;

  上面的语句序列所定义的类对象的个数是

  A)1

  B)2

  C)3

  D)4

  (13)下列关于继承方式的描述中,错误的是

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

  B)采用公有继承方式时,基类中的公有成员在派生类中仍然是公有成员

  C)采用保护继承方式时,基类中的保护成员在派生类中仍然是保护成员

  D)采用私有继承方式时,基类中的私有成员在派生类中仍然是私有成员

  (14)将前缀运算符“--”重载为非成员函数,下列原型中,能正确用于类中说明的是

  A)Decr& operator --(int);

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

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

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

  (15)若MyTemp是一个只有一个虚拟类型参数的类模板,且有如下语句序列

  MyTempp2;

  MyTempp3[2];

  编译系统在处理上面的语句序列时,所生成的模板MyTemp的实例的个数是

  A)1

  B)2

  C)3

  D)0

  (16)在C++中,cin是个

  A)类

  B)对象

  C)模板

  D)函数

  (17)在下列字符中,不允许作为C++标识符的是

  A)b

  B)B

  C)_

  D)2

  (18)下列叙述中,错误的是

  A)false是一个逻辑型常量

  B)"b"是一个字符型常量

  C)365是一个int常量

  D)3.1415926是一个double常量

  (19)若x和y是程序中的两个整型变量,则下列if语句中正确的是

  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)要定义整型数组x,使之包括初值为O的三个元素,下列语句中错误的是

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

  B)int x[]={0};

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

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

  (21)关于函数中的<返回类型>,下列表述中错误的是

  A)<返回类型>中有可能包含关键字int

  B)<返回类型>中有可能包含自定义标识符

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

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

  (22)要定义一个引用变量p,使之引用类MyClass的一个对象,正确的定义语句是

  A)MyClass p=MyClass;

  B)MyClass p=new MyClass;

  C)MyClass &p=new MyClass;

  D) MyClass a,&p=a;

  (23)有如下两个类定义

  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中保护成员变量的个数是

  A)1

  B)2

  C)3

  D)4

  (24)下列关于运算符重载的描述中,错误的是

  A)可以通过运算符重载在C++中创建新的运算符

  B)赋值运算符只能重载为成员函数

  C)运算符函数重载为类的成员函数时,第一操作数是该类对象

  D)重载类型转换运算符时不需要声明返回类型

  (25)下列关于类模板的描述中,错误的是

  A)类模板的成员函数都是模板函数

  B)可以为类模板参数设置默认值

  C)类模板描述了一组类

  D)类模板中只允许有一个类型参数

  (26)下列控制格式输入输出的操作符中,能够设置浮点数精度的是

  A)setprecision

  B)setw

  C)setfill

  D)showpoint

  (27)下列程序段中包含4个函数,其中具有隐含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;}

  运行这个程序的输出结果是

  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;

  }

  运行时的输出结果是

  A)P8-E4

  B)P8-C16-

  C)P0-E4-

  D)P0-C16-

  (30)下列代码声明了3个类

  class Person{};

  class Student:public Person{};

  class Undergraduate:Student{};

  下列关于这些类之间关系的描述中,错误的是

  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;

  }

  运行时的输出结果是

  A)2332

  B)2323

  C)3232

  D)3223

  (32)下面是类Shape的定义:

  class Shape{

  public:

  virtual void Draw()=0;

  };

  下列关于Shape类的描述中,正确的是

  A)类Shape是虚基类

  B)类Shape是抽象类

  C)类Shape中的Draw函数声明有误

  D)语句“Shape s;”能够建立Shape的一个对象s

  (33)将运算符“+”重载为非成员函数,下列原型声明中,错误的是

  A)MyClock operator + (MyClock,long);

  B)MyClock operator + (MyClock,MyClock);

  C)MyClock operator + (long,long);

  D)MyClock operator + (long,MyClock);

  (34)打开文件时可单独或组合使用下列文件打开模式

  ①ios_base::app ②ios_base::binary

  ③ios_base::in ④ios_base::out

  若要以二进制读方式打开一个文件,需使用的文件打开模式为

  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;

  }

  运行时的输出结果是

  A)1_120

  B)2_120

  C)1_20

  D)2_20

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

  请将每一个空的正确答案写在答题卡【l】~【15】序号的横线上,答在试卷上不得分。

  (1)一个队列的初始状态为空。现将元素A,B,C,D,E,F,5,4,3,2,1依次入队,然后再依次退队,则元素退队的顺序为 【1】 。

  (2)设某循环队列的容量为50,如果头指针front=45(指向队头元素的前一位置),尾指针rear=10(指向队尾元素),则该循环队列中共有 【2】 个元素。

  (3)设二叉树如下:

2010年3月计算机等级考试二级C++笔试试题(文字版)

  对该二叉树进行后序遍历的结果为 【3】 。

  (4)软件是 【4】 、数据和文档的集合。

  (5)有一个学生选课的关系,其中学生的关系模式为:学生(学号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时),其中两个关系模式的键分别是学号和课号,则关系模式选课可定义为:选课(学号, 【5】 ,成绩)。

  (6)若x和y是两个整形变量,在执行了语句序列

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

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

  (7)在执行语句序列

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

  时,do后面的循环体语句i++被执行的次数为 【7】 。

  (8)有如下的函数定义:

  int Xfun(int *a, int n){

  int x=*a;

  for(int *pa=a+1; pa

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

  return x;

  }

  若执行了语句

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

  后,通过表达式Xfun(x,5)调用该函数,则得到的返回值为 【8】 。

  (9)有如下的函数定义:

  int Xfun(int x){

  int y=x;

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

  return x+y;

  }

  通过表达式Xfun(5)调用该函数,则得到的返回值为 【9】 。

  (10)假定Xcs是一个类,该类中一个成员函数的原型为“Xcs *abc();”,则在类外定义时对应的函数头为 【10】 。

  (11)请将下面的类Date的定义补充完整,使得由语句

  Date FirstDay;

  定义的对象FirstDay的值为2010年1月1日。

  class Date{

  public:

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

  private:

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

  };

  (12)请将下面的程序补充完整,使得程序输出“飘是张娜的书”。

  #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)在有理数类Rational中重载插入运算符<<,以便按a/q形式输出。请将<<运算符函数的定义补充完整。

  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)下面的函数定义是某函数模板能够生成的函数实例

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

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

  由此可知,该函数模板的定义是 【15】 。

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞瀹€鍕;闁跨噦鎷�

闂傚倷绶氬ḿ褍螞濞嗘挸绀夐柡鍥ュ灩閸屻劑鏌曢崼婵囧閻庢艾顭烽弻銊モ攽閸℃ê鐝旂紓浣瑰敾缂嶄線寮婚敓鐘茬妞ゆ劧瀵岄埀顒侇殜閺岀喖鎽庨崒姘ギ闂佽鍟崶褔鍞堕梺缁樻煥閹芥粎绮旈鍕厽闁绘ê寮堕幖鎰版煟鎺抽崝灞藉祫闂佺鎻粻鎴g箽闂備浇娉曢崳锕傚箯閿燂拷
闂傚倷绀侀幖顐︽偋濠婂牆绀堟繛鎴欏灪閸嬬喐銇勯弽顐沪闁绘帡绠栭弻鏇熺箾閸喖濮庨梺璇叉唉椤曆嗗絹闂佹悶鍎荤徊鑺ユ櫠閹绘崡褰掓偂鎼淬垹娈楅悗娈垮枛閻栧吋淇婇悜鑺ユ櫆闁告挆鍐帗婵犵數鍋涢悺銊у垝瀹€鈧懞閬嶆嚃閳哄嫬小婵炲鍘ч悺銊╁吹閸岀偞鐓涢柛鎰╁妼閳ь剝宕电划鏃囥亹閹烘挾鍙嗗┑鐐村灱濞呮洜鈧熬鎷�闂備浇顕уù鐑藉极閹间降鈧焦绻濋崑顖氱秺瀹曞崬螣鐠囧樊娼梻浣风串缁蹭粙寮甸鍕仼闁告鍊戞惔銊ョ倞闁挎繂鎳庨埛澶嬬箾鐎电ǹ甯堕柟铏耿閻涱喚鈧綆鍠栫粻锝嗙節婵犲倸顏柟鏋姂濮婃椽宕ㄦ繝鍐f嫻缂備礁顑嗙敮锟犲箚閸ャ劌顕遍柡澶嬪灥閸炪劑姊洪幖鐐插姌闁告柨绉归敐鐐哄冀椤儱閰e畷鍫曟晲閸涱厸鎷ゅ┑鐐差嚟閸樠囧箠濮椻偓楠炲棝宕橀鑲╊槹濡炪倖鍔戦崹娲儊閺冣偓缁绘繈濮€閿濆棛銆愰柣搴㈣壘閹芥粌危閹扮増鏅搁柨鐕傛嫹闂傚倷鑳堕幊鎾绘偤閵娾晛鍨傞柛鎰ゴ閸亪鏌熺€电ǹ小闁绘帒锕ら埞鎴︽偐閸欏鎮欏┑鐐叉噷閸ㄥ綊婀侀梺鎸庣箓濡盯鎯屾惔銊︾厓鐟滄粓宕滃▎鎾崇疇闁归偊鍏橀弸鏃堟煙鏉堥箖妾柛瀣儔閺屾盯顢曢妶鍛€剧紓鍌氱М閸嬫捇姊绘担鐟扮亰闁绘帪绠撴俊鐢告倷閻㈢數顦梺鍝勫暙閻楀棛鐥閺屾盯骞囬娑氥€婄紓浣插亾闁跨噦鎷�闂備浇顕х花鑲╁緤婵犳熬缍栧鑸靛姇閸ㄥ倹绻濇繝鍌氼伀妞も晠鏀遍妵鍕箳閹存繃娈茬紓浣风贰閸o絽顕i崼鏇熷€烽柛顭戝亝閻濐亜鈹戦悙鑼闁搞劌澧庣划姘舵焼瀹ュ懐鍔撮梺鍛婂壃閸涱垼妲繝鐢靛Х椤d粙鍩€椤掆偓閸熷潡鍩€椤掑倹鍤€闁挎洏鍨洪幏鍛村礈閹绘帗顓块梻浣呵归張顒傛崲瀹ュ鑸归柟缁㈠枟閻撴瑩鎮楀☉娆嬬細濠⒀屽墯缁绘繈鍩€椤掍焦濯撮柛锔诲幘閹虫繈姊洪崜鑼帥闁稿鎳愮槐鐐哄焵椤掑嫭鈷戦柣鐔稿閹界娀鏌eΔ鍐ㄤ户闁瑰箍鍨归~婵嬵敄閼恒儳浜欓梻浣告惈濞诧箓鎯岄鐐床闁糕剝绋掗悡娆愩亜閹炬鍟版禒鏉戭渻閵堝棙澶勯柛鎾跺枎閻g兘鏁愰崱娆戠槇闂佸憡鍔忛弲鈺佄i鐐粹拺闁奸€涘嵆閸濈儤鎱ㄦ繝鍌ょ吋闁哄苯鐗撻獮姗€顢欓懖鈺婂悈闂備胶鎳撻悺銊у垝瀹ュ洤鍨濋柨鏇炲€归悡銉︾箾閹寸倖鎴濓耿閻楀牏绡€闁逞屽墴楠炲秹顢欓幆褍瑙︽繝鐢靛仜濡霉妞嬪海鐜绘俊銈呭暟绾惧ジ鏌¢崒娑卞劌闁稿骸绻掗埀顒冾潐閹哥ǹ螞濠靛棛鏆︽慨妯垮煐閸嬫劗绱撴担璐細鐟滅増鍨垮娲箰鎼粹€虫灆闂佺懓鍤栭幏锟�闂備浇顕уù鐑藉极閹间礁绠犻柟鎹愬煐閺嗘粍銇勯幇鍓佺暠缂佲偓閸℃ḿ绠鹃柟瀵镐紳椤忓牆鏋侀柛顐f礃閸婄數鐥鐐村婵炲吋鍔欓弻娑㈠Ω閿斿墽鐓佺紓浣稿€圭敮锟犮€佸Δ浣瑰缂佸鏅濋锔解拺閻熸瑥瀚欢鑼磼缂佹ê鐏寸€殿噮鍋婇、娆撴偩瀹€濠冪カ婵犳鍠楅妵娑㈠磻閹剧粯鐓冪憸婊堝礈濞嗘挸纾归柛婵勫劤缁€濠囨倵閿濆骸鏋熼柛搴$Ч閺屾盯寮撮妸銉ョ瑢閻熸粎澧楃敮妤呮偂閳ь剙顪冮妶鍡楃瑨闁挎洩濡囩划鍫ユ晸閿燂拷闂傚倷娴囨竟鍫熴仈缁嬫娼栧┑鐘崇閻掗箖鏌熺紒銏犳灈婵☆偅锕㈤弻锝夋偄缁嬫妫嗙紒缁㈠幐閸嬫捇姊绘担鐟邦嚋缂佸甯掗悾婵嬪箹娴e摜锛涢梺鍝勭Р閸斿酣銆呴悜鑺ョ叆闁绘洖鍊圭€氾拷:webmaster@jscj.com闂傚倷绶氬ḿ褍螞瀹€鍕;闁瑰墽绮悡鐔搞亜椤愵偄骞樼紒浣哄厴閺岋綁鏁傜捄銊х厯闂佽桨绀佺粔褰掑极閹剧粯鏅搁柨鐕傛嫹4008816886

相关文章

  3月计算机等级考试二级Java笔试试题  (2011-04-03 14:24:23)
  12月大学英语四级(CET-4)真题  (2011-03-09 10:28:30)
  报关员考试真题  (2011-03-05 11:04:29)
  导游资格考试卷真题精选  (2011-02-28 16:30:46)
  考研数学真题各学科分数详细分布比例  (2011-01-17 10:25:51)
  江苏省3月计算机等级考试成绩查询  (2010-06-23 15:46:41)
  历史学考研真题新特点及备考方略  (2010-06-07 11:57:00)
  中医执业医师考试中医内科学真题(9)  (2010-05-14 11:25:00)
  中医执业医师考试中医内科学真题(7)  (2010-05-14 11:24:00)
  中医执业医师考试中医内科学真题(8)  (2010-05-14 11:24:00)
更新时间2022-09-16 09:59:09【至顶部↑】
联系我们 | 邮件: webmaster@jscj.com | 客服热线电话:4008816886(QQ同号) |  濠电姷鏁搁崕鎴犵礊閳ь剚銇勯弴鍡楀閸欏繘鏌i幇顕呮毌闁稿鎹囬悰顕€宕归鍙ョ棯婵犵數濮崑鎾绘煕閵夋垵鑻▓顐㈩渻閵堝棙顥嗘い鏂匡功閹广垽鏁撻敓锟�

付款方式留言簿投诉中心网站纠错二维码手机版

电话:
付款方式   |   给我留言   |   我要纠错   |   联系我们