1、二级 C+笔试-264 及答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.结构化程序设计的一种基本方法是 _。(分数:2.00)A.归纳法B.逐步求精法C.递归法D.穷尽法2.下列不能被重载的运算符是 _。(分数:2.00)A.+B.C.?:D.for(i=1; i3;i+)for(j=1; j=i; j+)s+=aij;couts;(分数:2.00)A.10B.18C.20D.2113.对于任意一个类,析构函数的个数最多为 _。(分数:2.00)A.0B.1C.2D.314.两个关系有若干相同属性名等值连接,并去掉重复属性的关系代数运算称为
2、_。(分数:2.00)A.取列运算B.投影运算C.自然连接D.选择运算15.下列哪种说法不符合多态性的含义 _。(分数:2.00)A.用对象名调用一个虚函数B.用基类的指针调用一个虚函数C.用基类的引用调用一个虚函数D.调用一个有多个重载版本的全局函数16.以下程序输出结果是 _。#includeiostream.hvoid fun(int x,int y,int z)zxy;void main() int a=10;fun (2,2,(分数:2.00)A.;后,*(p+4)的值是 _。(分数:2.00)A.“abcd”B.dC./0D.不能确定22.若有一下程序段int *ptr,x,y=1
3、1;ptr=public:void init(int initX,int initY);private:int y;public:int SetX();Int SetY();(分数:2.00)A.xB.yC.SetX(),SetY()D.B 和 A 都是24.设有关系模式 R(A, B, C, D, E, P),其函数依赖集为 ED,CB,(C,E)F,BA,则 R 最高达到 _。(分数:2.00)A.1NFB.2NFC.3NFD.BCNF25.下列各项中不符合函数重载必须满足的条件的是 _。(分数:2.00)A.必须有不同的参数个数B.对应的参数类型必须不相同C.A 和 B 必须同时满足D.
4、A 和 B 只要满足一个即可26.为了提高测试的效率,应该 _。(分数:2.00)A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据27.下列陈述中正确的是 _。(分数:2.00)A.二叉树是度为 2 的有序树B.二叉树中结点只有一个孩子时无左右之分C.二叉树中必有度为 2 的结点D.二叉树中最多只有两棵子树,并且有左右之分28.关于动态联编的下列叙述中, _ 是错误的。(分数:2.00)A.动态联编是以虚函数为基础的B.动态联编调用虚函数操作是指向对象的指针或引用C.动态联编是在运行时确定所调用的函数代码的
5、D.动态联编是在编译时确定操作函数的29.下面程序段的输出结果是 _。char *s= “12345“;s+=2;couts;(分数:2.00)A.345B.字符3C.字符3的地址D.无确定的输出结果30.下列对类的构造函数和析构函数描述正确的是 _。(分数:2.00)A.构造函数不能重载,析构函数可以重载。B.构造函数可以重载,析构也可以重载。C.构造函数不能重载,析构函数也不能重载。D.构造函数可以重载,析构函数不能重载。31.深度为 k 的二叉树至多有 _。(分数:2.00)A.2k 个结点B.2K-1结点C.2K-1 结点D.2k-1-1 个结点32.表达式 2! =3 的值是 _。(
6、分数:2.00)A.非 0 值B.1C.0D.233.一个函数功能不太复杂,但要求被频繁调用,选用 _。(分数:2.00)A.内联函数B.重载函数C.递归函数D.嵌套函数34.对二叉树从 1 开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用 _ 遍历实现编号。(分数:2.00)A.无序B.中序C.后序D.从根开始的层次遍历35.若有 char *x2=“xyzw“,“XYZW“;则下面的表述正确的是 _。(分数:2.00)A.x 数组元素酌值分别是“xyzw”和“XYZW”B.x 是指针变量,它指向含有两个数组元素的字
7、符型一维数组C.x 数组的两个元素分别存放的是含有 4 个字符的一维字符数组的首地址D.x 数组的两个元素中各自存放了字符x和X的地址二、填空题(总题数:13,分数:26.00)36.汇编语言是面向 1 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。(分数:2.00)填空项 1:_37.对于顺序存储的队列,存储空间大小为 n,头指针为 P,尾指针为 R。若在逻辑上看成一个环,则队列中元素的个数为 2 。(分数:2.00)填空项 1:_38.有 64 个结点的完全二叉树的深度 3 (根的层次为 1)。(分数:2.00)填空项 1:_39.在结构化分析中,用于描述加工逻辑
8、的主要工具有三种,即:结构化语言、判定表、 4 。(分数:2.00)填空项 1:_40.在扩展的 E-R 模型中;子类 5 超类所有的联系和属性。(分数:2.00)填空项 1:_41.若有:int x=25,y=14,z=19;则在计算表达式 x+=25else if(B) if(!C) d=15;else d=20;cout “d=” dend1;(分数:2.00)填空项 1:_43.下面程序用于计算矩阵的两条对角线上的元素之和。补充下列语句,实现该功能。#includeiostream.hvoid main()int a3,3=9,8,7,6,5,4,3,2,1;int sum1=0,su
9、m2=0,i,j;for(i=0;i3;i+)for(j=0;j3;j+)if(i=j)sum1+=aij;for(i=0;i3:i+)for(j=2; 8 ;j-)if(i+j=2)sum2+=aij;(分数:2.00)填空项 1:_44.分析下列程序,并写出运行结果 9 。#includeiostream.hvoid main()int x10:int i=5,*ptr=x;*(ptr+i)=10;coutxiend1;(分数:2.00)填空项 1:_45.以下程序运行后的输出结果是 10 。#includeiostream.hvoid main()char s“123456”,*p;fo
10、r(p=s; ps+2; p+)coutpend1;(分数:2.00)填空项 1:_46.如果要把 viod fun()定义为类 X 的友元函数:则应在类 X 的定义中加入语句 11 。(分数:2.00)填空项 1:_47.基类的 12 不能被派生类的成员访问,基类的 13 在派生类中的性质和继承的性质一样,而基类的 14 在私有继承时在派生类中成为私有成员,在公有和私有保护继承时在派生类中仍为保护成员。(分数:2.00)填空项 1:_48.ios 类中定义的用于控制输入输出的枚举常量中,用于控制对齐方式的常量有 left、right 和 15 。(分数:2.00)填空项 1:_二级 C+笔试
11、-264 答案解析(总分:96.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.结构化程序设计的一种基本方法是 _。(分数:2.00)A.归纳法B.逐步求精法 C.递归法D.穷尽法解析:2.下列不能被重载的运算符是 _。(分数:2.00)A.+ B.C.?:D.for(i=1; i3;i+)for(j=1; j=i; j+)s+=aij;couts;(分数:2.00)A.10 B.18C.20D.21解析:13.对于任意一个类,析构函数的个数最多为 _。(分数:2.00)A.0B.1 C.2D.3解析:14.两个关系有若干相同属性名等值连接,并去掉重复属性的关系代数
12、运算称为 _。(分数:2.00)A.取列运算B.投影运算C.自然连接 D.选择运算解析:15.下列哪种说法不符合多态性的含义 _。(分数:2.00)A.用对象名调用一个虚函数 B.用基类的指针调用一个虚函数C.用基类的引用调用一个虚函数D.调用一个有多个重载版本的全局函数解析:16.以下程序输出结果是 _。#includeiostream.hvoid fun(int x,int y,int z)zxy;void main() int a=10;fun (2,2,(分数:2.00)A.;后,*(p+4)的值是 _。(分数:2.00)A.“abcd”B.dC./0 D.不能确定解析:22.若有一下
13、程序段int *ptr,x,y=11;ptr=public:void init(int initX,int initY);private:int y;public:int SetX();Int SetY();(分数:2.00)A.xB.yC.SetX(),SetY() D.B 和 A 都是 解析:24.设有关系模式 R(A, B, C, D, E, P),其函数依赖集为 ED,CB,(C,E)F,BA,则 R 最高达到 _。(分数:2.00)A.1NF B.2NFC.3NFD.BCNF解析:25.下列各项中不符合函数重载必须满足的条件的是 _。(分数:2.00)A.必须有不同的参数个数 B.对
14、应的参数类型必须不相同C.A 和 B 必须同时满足D.A 和 B 只要满足一个即可解析:26.为了提高测试的效率,应该 _。(分数:2.00)A.随机地选取测试数据B.取一切可能的输入数据作为测试数据C.在完成编码以后制定软件的测试计划D.选择发现错误可能性大的数据作为测试数据 解析:27.下列陈述中正确的是 _。(分数:2.00)A.二叉树是度为 2 的有序树B.二叉树中结点只有一个孩子时无左右之分C.二叉树中必有度为 2 的结点D.二叉树中最多只有两棵子树,并且有左右之分 解析:28.关于动态联编的下列叙述中, _ 是错误的。(分数:2.00)A.动态联编是以虚函数为基础的 B.动态联编调
15、用虚函数操作是指向对象的指针或引用C.动态联编是在运行时确定所调用的函数代码的D.动态联编是在编译时确定操作函数的解析:29.下面程序段的输出结果是 _。char *s= “12345“;s+=2;couts;(分数:2.00)A.345B.字符3 C.字符3的地址D.无确定的输出结果解析:30.下列对类的构造函数和析构函数描述正确的是 _。(分数:2.00)A.构造函数不能重载,析构函数可以重载。 B.构造函数可以重载,析构也可以重载。C.构造函数不能重载,析构函数也不能重载。D.构造函数可以重载,析构函数不能重载。解析:31.深度为 k 的二叉树至多有 _。(分数:2.00)A.2k 个结
16、点B.2K-1结点C.2K-1 结点 D.2k-1-1 个结点解析:32.表达式 2! =3 的值是 _。(分数:2.00)A.非 0 值B.1 C.0D.2解析:33.一个函数功能不太复杂,但要求被频繁调用,选用 _。(分数:2.00)A.内联函数 B.重载函数C.递归函数D.嵌套函数解析:34.对二叉树从 1 开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用 _ 遍历实现编号。(分数:2.00)A.无序B.中序C.后序 D.从根开始的层次遍历解析:35.若有 char *x2=“xyzw“,“XYZW“;则下面的表
17、述正确的是 _。(分数:2.00)A.x 数组元素酌值分别是“xyzw”和“XYZW”B.x 是指针变量,它指向含有两个数组元素的字符型一维数组C.x 数组的两个元素分别存放的是含有 4 个字符的一维字符数组的首地址D.x 数组的两个元素中各自存放了字符x和X的地址 解析:二、填空题(总题数:13,分数:26.00)36.汇编语言是面向 1 的,可以完成高级语言无法完成的特殊功能,如与外部设备之间的一些接口工作。(分数:2.00)填空项 1:_ (正确答案:机器)解析:37.对于顺序存储的队列,存储空间大小为 n,头指针为 P,尾指针为 R。若在逻辑上看成一个环,则队列中元素的个数为 2 。(
18、分数:2.00)填空项 1:_ (正确答案:(R-F+1)mod n)解析:38.有 64 个结点的完全二叉树的深度 3 (根的层次为 1)。(分数:2.00)填空项 1:_ (正确答案:7)解析:39.在结构化分析中,用于描述加工逻辑的主要工具有三种,即:结构化语言、判定表、 4 。(分数:2.00)填空项 1:_ (正确答案:判定树)解析:40.在扩展的 E-R 模型中;子类 5 超类所有的联系和属性。(分数:2.00)填空项 1:_ (正确答案:继承)解析:41.若有:int x=25,y=14,z=19;则在计算表达式 x+=25else if(B) if(!C) d=15;else
19、d=20;cout “d=” dend1;(分数:2.00)填空项 1:_ (正确答案:15)解析:43.下面程序用于计算矩阵的两条对角线上的元素之和。补充下列语句,实现该功能。#includeiostream.hvoid main()int a3,3=9,8,7,6,5,4,3,2,1;int sum1=0,sum2=0,i,j;for(i=0;i3;i+)for(j=0;j3;j+)if(i=j)sum1+=aij;for(i=0;i3:i+)for(j=2; 8 ;j-)if(i+j=2)sum2+=aij;(分数:2.00)填空项 1:_ (正确答案:j=0)解析:44.分析下列程序,
20、并写出运行结果 9 。#includeiostream.hvoid main()int x10:int i=5,*ptr=x;*(ptr+i)=10;coutxiend1;(分数:2.00)填空项 1:_ (正确答案:10)解析:45.以下程序运行后的输出结果是 10 。#includeiostream.hvoid main()char s“123456”,*p;for(p=s; ps+2; p+)coutpend1;(分数:2.00)填空项 1:_ (正确答案:12345623456)解析:46.如果要把 viod fun()定义为类 X 的友元函数:则应在类 X 的定义中加入语句 11 。(分数:2.00)填空项 1:_ (正确答案:friend void fun())解析:47.基类的 12 不能被派生类的成员访问,基类的 13 在派生类中的性质和继承的性质一样,而基类的 14 在私有继承时在派生类中成为私有成员,在公有和私有保护继承时在派生类中仍为保护成员。(分数:2.00)填空项 1:_ (正确答案:12私有成员 13公有成员 14保护成员)解析:48.ios 类中定义的用于控制输入输出的枚举常量中,用于控制对齐方式的常量有 left、right 和 15 。(分数:2.00)填空项 1:_ (正确答案:internal)解析: