2017年计算机二级考试C++练习试题及答案(七)

时间:2017-02-20 15:18:00   来源:无忧考网     [字体: ]

  1). 在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用( )。

  A.内联函数

  B.重载函数

  C.递归调用

  D.嵌套调用

  正确答案:A

  答案解析:本题考查的是内联函数的相关知识点。C++引入内联函数是用它来代替C语言中的预处理宏函数,内联函数在调用时,是将表达式用内联函数体来替换,这样会加快程序的执行速度。

  2). 假定MyClass为一个类,则执行MyClass a,b(2),*p;语句时,自动调用该类构造函数( )次。

  A.2

  B.3

  C.4

  D.5

  正确答案:A

  答案解析:C++在创建一个对象时,会调用类的构造函数。执行MyClass a b,(2),*p;创建了两个对象a、b和指针p,在创建对象a和b会调用构造函数,而创建指针p时,由于p本身不是对象,所以不调用类的构造函数。

  3). 在C++程序中,如果要求通过函数来实现一种简单的功能,并且要求尽可能加快程序执行速度,则应该选用( )。

  A.内联函数

  B.重载函数

  C.递归调用

  D.嵌套调用

  正确答案:A

  答案解析:本题考查的是内联函数的相关知识点。C++引入内联函数是用它来代替C语言中的预处理宏函数,内联函数在调用时,是将表达式用内联函数体来替换,这样会加快程序的执行速度。

  4). 某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)( )

  A.3

  B.6

  C.8

  D.12

  正确答案:D

  答案解析:二叉树中,度为0的节点数等于度为2的节点数加1,即n2=n0-1,叶子节点即度为0,n0=1,则n2=0,总节点数为12=n0+n1+n2=1+n1+0,则度为1的节点数n1=11,故深度为12,选D。

  5). 以下定义数组中错误的是( )

  A.int a[10];

  B.int a[2][20];

  C.int a[20][];

  D.int a[];

  正确答案:C

  6). 下述关于数据库系统的叙述中,正确的是( )。

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

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

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

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

  正确答案:A

  答案解析:数据库系统会减少数据冗余,但不可能避免一切冗余。