国家二级C++机试(选择题)模拟试卷502
选择题
1.算法的空间复杂度是指( )。(A)
A. 算法在执行过程中所需要的计算机存储空间
B. 算法所处理的数据量
C. 算法程序中的语句或指令条数
D. 算法在执行过程中所需要的临时工作单元数
解析:算法的空间复杂度是指执行这个算法所需要的内存空间。这个内存空间包括算法程序所占的空间,输入的初始数据所占的存储空间以及算法执行过程中所需要的额外空间。
2.字面常量42、4.2、42L的数据类型分别是( )。(C)
A. long,double,int
B. long,float,int
C. int,double,long
D. int,float,long
解析:此题考查的知识点是字面常量。对于整型字面常量,要没有超过C++中整数所能表示的范围,C+十将自动按整数来存储此数,也可以通过在整型字面常量后添加u或1来指定无符号整数或长整数来存储;对于实型字面常量,C++将自动按照双精度数来存储,也可以通过在实型字而常量后添加f来指定按单精度数存储。
3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是(C)
A. 10
B. 8
C. 6
D. 4
解析:根据二叉树的性质,在任意二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。
4.有如下程序:
#include<iostream>
using namespace std;
class Test{
public:
Test() {n+=2;}
-TestO {n-=3;}
static int getNum(){return n;}
private:
static int n:
};
int Test::n=1;
int main()
{Test*p=new Test;
delete p;
cout<<’’n=’’<<Test::getNum()<<end1;
return 0;
}
执行后的输出结果是( )。(A)
A. n=0
B. n=1
C. n=2
D. n=3
解析:语句Test*p=new Test;会调用类的构造函数Test() {n+=2;},使n的值由原来的1变为3,然后delete p调用类的析构函数~Test(){n-=3;},因为n是static型变量,所以会在3的基础上减3使得输出结果为0。
5.在软件生命周期中,能准确确定软件系统必须做什么和必须具备哪些功能的阶段是(D)
A. 概要设计
B. 详细设计
C. 可行性分析
D. 需求分析
解析:软件需求是指用户对目标软件系统在功能、行为、设计约束等方面的期望。需求分析的任务是发现需求、求精、建模和定义需求的过程。
6.数据库管理系统中负责数据模式定义的语言是( )。(A)
A. 数据定义语言
B. 数据管理语言
C. 数据操纵语言
D. 数据控制语言
解析:数据库管理系统一般提供相应的数据语言,它们分别是:数据定义语言,负责数据的模式定义与数据的物理存取构建;数据操纵语言,负责数据的操纵,包括查询及增、删、改等操作;数据控制语言,负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。
7.对于int *pa[5];的描述,正确的是( )。(A)
A. pa是一个指向数组的指针,所指向的数组是5个int型元素
B. pa是一个指向某个数组中第5个元素的指针,该元素是int型变量
C. pa[5]表示某个数组的第5个元素的值
D. pa是一个具有5个元素的指针数组,每个元素是一个int型指针
解析:语句“int*p[5]”表示一个数组p,它的大小是5,里面存放的数据类型是int*,也就是整型指针。称之为指针数组(从右向左解析这个表示)。
8.下面描述中不属于数据库系统特点的是( )。(C)
A. 数据共享
B. 数据完整性
C. 数据冗余度高
D. 数据独立性高
解析:数据系统的基本特点有数据的集成性、数据的高共享性与低冗余性、数据的独立性、数据统一管理与控制。
9.下列程序段中包含4个函数。其中具有隐含this指针的是( )。
int funl();
class Test{
public:
int fura();
friend int fun3();
static int fun4();
}(B)
A. funl
B. fun2
C. fun3
D. fun4
解析:this指针是成员函数所属对象的指针,它指向类对象的地址。成员函数通过这个指针知道自己属于哪一个对象。this指针是一个隐含的指针,它隐含于每个类的非静态成员函数中,它明确的地表示出了成员函数当前操作的数据所属的对象。
10.有如下程序:
#include
using namespace std;
class Base
{
public:
void fun(){cout<<\\(B)
A. Base.fun();
B. Base∷fun();
C. Base->fun();
D. fun();
解析:此题考查的是继承的使用。分析题目可知,横线处应填入对基类成员函数fun()的调用语句,此处只能使用作用域运算符“∷”才能调用到基类的同名函数,故选项B正确。
11.下列选项可以做C++标识符的是( )。(A)
A. _256
B. fat/pig
C. delete
D. Schar
解析:标识符的命名规则:①所有标识符必须由一个字母(a~Z或A~Z)或下划线()开头;②标识符的其他部分可以用字母、下划线或数字(0~9)组成;③大小写字母表示不同意义,即代表不同的标识符,如cout和Cout。
12.有如下程序:
#include
using namespace std;
class GA{
public;
virtual hat f(){retum 1;}
};
class GB:public GA{
public;
virtual int f0{return 2;}
);
void show(GA g){cout<<g.f();}
void display(GA&g){cout<<g.f0;}
int
本文档预览:3600字符,共8110字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载