1、国家二级( C+)笔试模拟试卷 38及答案与解析 1 下列陈述中正确的是 _。 ( A)二叉树是度为 2的有序树 ( B)二叉树中结点只有一个孩子时无左右之分 ( C)二叉树中必有度为 2的结点 ( D)二叉树中最多只有两棵子树,并且有左右之分 2 深度为 k的二叉树至多有 _。 ( A) 2k个结点 ( B) 2(k-1)结点 ( C) 2k-1结点 ( D) 2(k-1)-1个结点 3 在有 n个结点的二叉链表中,值为非空的链域的个数为 _。 ( A) n-1 ( B) 2n-1 ( C) n+1 ( D) 2n+1 4 对二叉树从 1开始进行连续编号,要求每个结点的编号大于其左右孩子的编
2、号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用 _ 遍历实现编号。 ( A)无序 ( B)中序 ( C)后序 ( D)从根开始的层次遍历 5 结构化程序设计的一种基本方法是 _。 ( A)归纳法 ( B)逐步求精法 ( C)递归法 ( D)穷尽法 6 为了提高测试的效率,应该 _。 ( A)随机地选取测试数据 ( B)取一切可能的输入数据作为 测试数据 ( C)在完成编码以后制定软件的测试计划 ( D)选择发现错误可能性大的数据作为测试数据 7 程序的三种基本控制结构是 _。 ( A)过程、子程序和分程序 ( B)顺序、选择和重复 ( C)递归、堆栈和队列 ( D)调用
3、、返回和转移 8 数据的逻辑独立性是指 _。 ( A)存储结构与物理结构的逻辑独立性 ( B)数据与存储结构的逻辑独立性 ( C)数据与程序的逻辑独立性 ( D)数据元素之间的逻辑独立性 9 两个关系有若干相同属性名等值连接,并去掉重复属性的关系代数 运算称为 _。 ( A)取列运算 ( B)投影运算 ( C)自然连接 ( D)选择运算 10 设有关系模式 R(A, B, C, D, E, P),其函数依赖集为 ED , CB ,(C, E)F , BA ,则 R最高达到 _。 ( A) 1NF ( B) 2NF ( C) 3NF ( D) BCNF 11 下选项中不属于 c+的类型的是 _。
4、 ( A) signed Short int ( B) unsigned long int ( C) unsigned int ( D) long short 12 设 int n=11, i=4;, 则武值运算 n%=i+1 n%=i+1执行后 n的值是 _。 ( A) 0 ( B) 3 ( C) 2 ( D) 1 13 下面程序段的输出结果是 _。 int X=20, y=20; cout x- - “ , “ - -y; ( A) 20, 20 ( B) 19, 19 ( C) 19, 20 ( D) 20, 19 14 下面四个选项不属于表达式语句的是 _。 ( A) b=a-b; (
5、 B) a*b; ( C) a=b ( D) b=a/2; 15 以下程序的输出结果是 _。 for (x=3;x=6;x+) cout (x%2)? “*“ : “#“ ) x; if(x%2= =0) cout end1; ( A) *3 #4 *5 ( B) #3 *4 #5 ( C) #3 *4#5 ( D) *3#4 *5 16 下面程序的执行结果是 _。 int k; for (k=10 ; k 3 ; k-) if (k%3) k-; -k; k; cout k “, “; ( A) 6, 3 ( B) 7, 4 ( C) 6, 2 ( D) 7, 4, 1 17 不能把字符串
6、“Hello!”赋给数组的语是 _。 ( A) char b10=H , e ,1, 1, o , !; ( B) char b10;b=“ Hello!“ ; ( C) char b10; strcpy(b, “Hello!“); ( D) char b10=“Hello!“ 18 以下程序输出结果是 _。 #include iostream.h void main() int a33=1, 3, 5, 7, 9, 10, 13, 15, 17, sum=0, i, j; for(i=0; i 3: i+) for(j=0; j 3; j ) aij=i+j; if(i= =j)sum=su
7、m+aij; cout “sue=“ sum; ( A) 15 ( B) 25 ( C) 6 ( D) 9 19 以下定义语句中,错误的是 _。 ( A) int a=1, 2); ( B) char *a3; ( C) char s10= “test“; ( D) Int n=5, an; 20 在下面关于函数的描述中错误的是 _。 ( A)在一个源文件中,如果函数定义 在先,调用在后,则不必声明该函数 ( B)如果一个函数在一个源文件里定义,而调用在另一个源文件中,则必须在调用之前声明该函数 ( C)函数的声明应使用函数原型 ( D)在一个源文件中,如果自定义函数调用在先,定义在后,则不必
8、声明该函数 21 在 C+中,函数原型不能标识 _。 ( A)函数的返回类型 ( B)函数参数的个数 ( C)函数参数类型 ( D)函数的功能 22 以下程序的输出结果是 _。 #include iostream.h Int f() static int i=0; int a=1; a+=; i+; return a; void main() int i, s=0; for(i=0; i 4; i+) s+=f(); cout s; ( A) 10 ( B) 15 ( C) 21 ( D) 28 23 已知函数 fp的原型是: int fp(char c, char*k=NULL, doubl
9、e d=10.0);下列调用中正确调用 fp的是 ( A) fp(99)和 fp(A, “ABC“) ( B) fp(A, 4.5)和 fp(A, “ABC”) ( C) fp(A, “ABC”)和 fp() ( D) fp()和 fp(99) 24 已定义以下函数 fun(int *p) return *p; 该函数的返回值是 _。 ( A)不确定的值 ( B)形参 p中存放的值 ( C)形参 p所指存储单元中的值 ( D)形参 p的地址值 25 关于对象成员的构造函数的调用顺序,说法正确的是 _。 ( A)与它们在成员初始化的类表中给出的顺序相同 ( B)与析构函数的调用顺序相同 ( C)
10、与它们在类中说明的顺序相同 ( D)以上说法都不对 26 每个类 _ 构造函数。 ( A)只能有一个 ( B)只可有公有的 ( C)可以有多个 ( D)只可有缺省的 27 下面对结构或类中成员的访问中,不正确的访问是 _。 ( A) *pointer. salary; (其中 pointer为指向类对象的指针 ) ( B) pointer- salary; ( C) x=orker, salary; (其中 worker为具有类类型的对象 ) ( D) Location p- disp(); p=&b; p- disp(); 运行结果为:【 】 【 】 国家二级( C+)笔试模拟试卷 38答案
11、与解析 1 【正确答案】 D 2 【正确答案】 C 3 【正确答案】 A 4 【正确答案】 C 5 【正确答案】 B 6 【正确答案】 D 7 【正确答案】 B 8 【正确答案】 C 9 【正确答案】 C 10 【正确答案】 A 11 【正确答案】 D 12 【正确答案】 D 13 【正确答案】 D 14 【正确答案】 C 15 【正确答案】 D 16 【正确答案】 B 17 【正确答案】 B 18 【正确答案】 C 19 【正确答案】 D 20 【正确答案】 D 21 【正确答案】 D 22 【正确答案】 A 23 【正确答案】 A 24 【正确答案】 C 25 【正确答案】 C 26 【正
12、确答案】 C 27 【正确答案】 A 28 【正确答案】 A 29 【正确答案】 B 30 【正确答案】 C 31 【正确答案】 C 32 【正确答案】 A 33 【正确答案】 C 34 【正确答案】 C 35 【正确答案】 D 36 【正确答案】 2n-1 37 【正确答案】 面向对象程序设计 38 【正确答案】 行为 39 【正确答案】 面向数据流 40 【正确答案】 数据操 纵 41 【正确答案】 *(&a00+20*4*i+4*j) 【试题解析】 根据二维数组的定义,它的 aij元素的地址应该是&a00+20*4*i+4*j,所以 aij元素的值是 *(&a00+20*4*i+4*j)
13、。 42 【正确答案】 char(*p)(const char*)=f; 【试题解析】 如果要使指针指向函数,函数的原型应该改为上面的形式。 43 【正确答案】 *(p- op) 【试题解析】 访问结构指针所指向的指针的值,首先得到 指向的指针 (p- op),然后计算值 *(p- op)。 44 【正确答案】 构造函数 【试题解析】 构造函数在初始化对象时便会自动调用。 45 【正确答案】 iomanip.h 【试题解析】 iomanip.h 头文件包含控制输出字符串格式的函数。 46 【正确答案】 连接 【试题解析】 在过程中首先编译为 .obj文件,然后连接为可执行文件。 47 【正确答案】 两 【试题解析】 16位计算机血型占有的字节为 16/8=2。 48 【正确答案】 “”Hello. world!“” 【试题解析】 “Hello, world!”的输出需要转义字符 ,所以 cout “”Hello. world!“”。 49 【正确答案】 0 【试题解析】 8&3为二进制的 00001000&00000011,结果为 0。 50 【正确答案】 0 7 51 【正确答案】 X类的 disp函数 Y类的 disp函数