计算机等级考试二级C++模拟题及解析9(笔试)

日期:12-29| http://www.59wj.com |二级C++模拟试题|人气:112

计算机等级考试二级C++模拟题及解析9(笔试)

计算机等级考试二级C++模拟题及解析9笔试部分

  一、选择题

  1.在深度为5的满二叉树中,叶子结点的个数为

  A)32 B)31 C)16 D)15

  【参考答案】 B

  2.若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的结点访问顺序是

  A)bdgcefha B)gdbecfha C)bdgaechf D)gdbehfca

  【参考答案】 D

  3.一些重要的程序语言(如C语言和Pascal语言)允许过程的递归调用。而实现递归调用中的存储分配通常用

  A)栈 B)堆 C)数组 D)链表

  【参考答案】 A

  4.软件工程的理论和技术性研究的内容主要包括软件开发技术和

  A)消除软件危机 B)软件工程管理 C)程序设计自动化 D)实现软件可重用

  【参考答案】 B

  5.开发软件时对提高开发人员工作效率至关重要的是

  A)操作系统的资源管理功能 B)先进的软件开发工具和环境

  C)程序人员的数量 D)计算机的并行处理能力

  【参考答案】 B

  6.在软件测试设计中,软件测试的主要目的是

  A)实验性运行软件

  B)证明软件正确

  C)找出软件中全部错误

  D)发现软件错误而执行程序

  【参考答案】 D

  7.数据处理的最小单位是

  A)数据 B)数据元素 C)数据项 D)数据结构

  【参考答案】 C

  8.索引属于

  A)模式 B)内模式 C)外模式 D)概念模式

  【参考答案】 B

  9.下述关于数据库系统的叙述中正确的是

  A)数据库系统减少了数据冗余

  B)数据库系统避免了一切冗余

  C)数据库系统中数据的一致性是指数据类型一致

  D)数据库系统比文件系统能管理更多的数据

  【参考答案】 B

  10.数据库系统的核心是

  A)数据库 B)数据库管理系统

  C)模拟模型 D)软件工程

  【参考答案】 B

  .
       
        www.59wj.com

  11.下列关于C++语言类的描述中错误的是

  A)类用于描述事物的属性和对事物的操作

  B)类与类之间通过封装而具有明确的独立性

  C)类与类之间必须是平等的关系,而不能组成层次结构

  D)类与类之间可以通过一些方法进行通信和联络

  【参考答案】 C

  12.C++语言中,表示一条语句结束的标号是

  A)# B); C)// D)}

  【参考答案】 B

  13.以下叙述中正确的是

  A)构成C++语言程序的基本单位是类

  B)可以在一个函数中定义另一个函数

  C)main()函数必须放在其他函数之前

  D)所有被调用的函数一定要在调用之前进行定义

  【参考答案】 A

  14.已知有定义

  const int D=5;

  int i=1;

  double f=0.32;

  char c=15;

  则下列选项错误的是

  A)++i; B)D--; C)c++; D)--f;

  【参考答案】 B

  15.以下程序的输出结果是

  #include

  void reverse(int a[],int n)

  { int i,t;

  for(i=0;i

  { t=a[i];a[i]=a[n-1-i];a[n-1-i]=t;} }

  void main()

  { int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0;

  reverse(b,8);

  for(i=6;i<10;i++)s+=b[i];

  cout << s; }

  A)22 B)10 C)34 D)30

  【参考答案】 A

  16.下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,在划线处应填入的选项是

  #include

  void main()

  { int i=0,j,k;

  do{ i++;k=316-13*i;} while( );

  j=k/11;

  cout << "316=13*"<

  A)k/11 B)k%11 C)k/11==0 D)k%11==0

  【参考答案】 B

  .
       
        www.59wj.com

  17.设有数组定义: char array[]="China";,则数组 array所占的空间为

  A)4个字节 B)5个字节 C)6个字节 D)7个字节

  【参考答案】 C

  18.若已定义:

  int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i;

  其中 0≤i≤9, 则对a数组元素不正确的引用是

  A)a[p-a] B)*(&a[i]) C)p[i] D)a[10]

  【参考答案】 D

  19.以下程序的输出结果是

  #include

  void main()

  { int x=1,y=3;

  cout << x++ << ",";

  { int x=0;x+=y*2;

  cout << x <<"," << y << ","; }

  cout << x <<"," << y; }

  A)1,6,3,1,3 B)1,6,3,6,3 C)1,6,3,2,3 D)1,7,3,2,3

  【参考答案】 C

  20.函数fun的返回值是

  fun(char *a,char *b)

  { int num=0,n=0;

  while(*(a+num)!=′\0′)num++;

  while(b[n]){*(a+num)=b[n];num++;n++;}

  return num; }

  A)字符串a的长度 B)字符串b的长度

  C)字符串a和b的长度之差 D)字符串a 和b的长度之和

  【参考答案】 D

  21.下面程序输出的结果是

  #include

  void main()

  { int i;

  int a[3][3]={1,2,3,4,5,6,7,8,9};

  for(i=0;i<3;i++)

  cout << a[2-i][i]<<""; }

  A)1 5 9 B)7 5 3 C)3 5 7 D)5 9 1

  【参考答案】 B

  22.下面程序的结果为

  #include

  int c;

  class A

  { private:

  int a;

  static int b;

  public:

  A(){a=0; c=0;}

  void seta(){a++;}

  void setb(){b++;}

  void setc(){c++;}

  void display(){cout << a << " " << b << " " << c;} };

  int A::b = 0;

  void main()

  {

  A a1,a2;

  a1.seta();

  a1.setb();

  a1.setc();

  a2.seta();

  a2.setb();

  a2.setc();

  a2.display();

  }

  A)1 2 1 B)1 2 2 C)1 1 2 D)2 2 2

  【参考答案】 B

  .
       
        www.59wj.com

  23.下列描述中哪个是正确的?

  A)私有派生的子类无法访问父类的成员

  B)类A的私有派生子类的派生类C无法初始化其祖先类A对象的属性,因为类A的成员对类C是不可访问的

  C)私有派生类不能作为基类派生子类

  D)私有派生类的所有子孙类将无法继续继承该类的成员

  【参考答案】 B

  24.下列关于构造函数说法不正确的是

  A)构造函数必须与类同名 B)构造函数可以省略不写

  C)构造函数必须有返回值 D)在构造函数中可以对类中的成员进行初始化

  【参考答案】 C

  25.如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是

  A)一元运算符 B)二元运算符 C)选项A)和选项B)都有可能 D)重载错误

  【参考答案】 D

  26.在重载一个运算符时,如果其参数表中有一个参数,则说明该运算符是

  A)一元成员运算符 B)二元成员运算符

  C)一元友元运算符 D)选项B)和选项C)都可能

  【参考答案】 D

  27.下列关于模板的说法正确的是

  A)模板的实参在任何时候都可以省略

  B)类模板与模板类所指的是同一概念

  C)类模板的参数必须是虚拟类型的

  D)类模板中的成员函数全部都是模板函数

  【参考答案】 D

  28.表示在输出时显示小数位,和在文件输入时判断文件尾的函数分别是

  A)showbase()和eof() B)showpoint()和eof()

  C)showpoint()和bad() D)showpoint()和good()

  【参考答案】 B

  29.下面程序段的运行结果是

  void main()

  { int t, a, b, c;

  a=1;b=2;c=2;

  while(a

  { t=a;a=b;b=t;c--;}

  cout << a << "," << b << "," << c; }

  A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1

  【参考答案】 A

  30.下列程序中画线处应填入的语句是

  class Base

  { public:

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

  class Derived:public Base

  { void fun()

  { //显示基类的成员函数fun

  cout<<"Derived of fun"<

  A)fun(); B)Base.fun(); C)Base::fun(); D)Base->fun();

  【参考答案】 C

  .
       
        www.59wj.com

  31.若定义int k=7,x=12;,则能使值为3的表达式是

  A)x%=(k%=5) B)x%=(k-k%5) C)x%=k-k%5 D)(x%=k)-(k%=5)

  【参考答案】 D

  32.在位运算中,操作数每右移一位,其结果相当于

  A)操作数乘以2 B)操作数除以2 C)操作数乘以4 D)操作数除以4

  【参考答案】 B

  33.有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是

  struct node

  { char data;

  struct node *next;

  } a,b,*p=&a,*q=&b;

  A)a.next=q; B)p.next=&b;

  C)p->next=&b; D)(*p).next=q;

  【参考答案】 B

  34.一个类的友元函数能够访问该类的

  A)私有成员 B)保护成员 C)公有成员 D)所有成员

  【参考答案】 D

  35.下面程序的输出结果是

  #include

  #include

  void main()

  { char p1[10],p2[10];

  strcpy(p1,"abc");

  strcpy(p2,"ABC");

  char str[50]= "xyz";

  strcpy(str+2,strcat(p1,p2));

  cout << str; }

  A)xyzabcABC B)zabcABC C)xyabcABC D)yzabcABC

  【参考答案】 C

  .
       
        www.59wj.com

  二、填空题

  (1)在树形结构中,树根结点没有 【1】 。

  【参考答案】

  【1】前件

  (2)Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向 【2】 的设计方法。

  【参考答案】

  【2】数据结构

  (3)面向对象的模型中,最基本的概念是对象和 【3】 。

  【参考答案】

  【3】类

  (4)软件设计模块化的目的是 【4】 。

  【参考答案】

  【4】降低复杂性

  (5)数据模型按不同应用层次分成3种类型,它们是概念数据模型、 【5】 和物理数据模型。

  【参考答案】

  【5】逻辑数据模型

  (6)派生类的成员一般分为两部分,一部分是 【6】 ,另一部分是自己定义的新成员。

  【参考答案】

  【6】从基类继承的成员

  (7)以下程序输出的结果是 【7】 。

  #include

  void main()

  { int a=5,b=4,c=3,d;

  d=(a>b>c);

  cout << d; }

  【参考答案】

  【7】 0

  (8)设i,j,k均为int型变量,则执行完for(i=0, j=10; i<=j; i++, j--)k=i+j;语句后,k的值为 【8】 。

  【参考答案】

  【8】 10

  (9)如果要把返回值为void的函数A声明为类B的友元函数,则应在类B的定义中加入的语句是 【9】 。

  【参考答案】

  【9】friend void A( );

  (10)如果类B继承了类A,则称类A为类B的基类,类B称为类A的 【10】 。

  【参考答案】

  【10】派生类

  (11)将x+y中的+运算符用友元函数重载应写为 【11】 。

  【参考答案】

  【11】operator+(x,y)

  (12)已知程序的结果为1 2 3,请填空。

  #include

  template

  class A

  { public:

  T x,y,z;

  void display(){cout << x << " " << y << " " << z;} };

  void main()

  { Aa1;

  【12】

  【13】

  【14】

  a1.display(); }

  【参考答案】

  【12】a1.x=1 【13】a1.y=2 【14】a1.z=3

  (13)下列程序段的输出结果是 【15】 。

  cout << fixed << 509.123456789 << endl;

  【参考答案】

  【15】509.123457

  .
       
        www.59wj.com 如果觉得《计算机等级考试二级C++模拟题及解析9(笔试)》二级C++模拟试题,jsj不错,可以推荐给好友哦。
本文Tags: 计算机等级考试 - 模拟试题 - 计算机二级模拟试题 - 二级C++模拟试题,jsj,
在百度中搜索相关文章:计算机等级考试二级C++模拟题及解析9(笔试)
在谷歌中搜索相关文章:计算机等级考试二级C++模拟题及解析9(笔试)
在soso中搜索相关文章:计算机等级考试二级C++模拟题及解析9(笔试)
在搜狗中搜索相关文章:计算机等级考试二级C++模拟题及解析9(笔试)
相关分类导航|
热门推荐|