计算机类 二级 C++
全国计算机等级考试 二级C++ 笔试模拟试题(六) 48 题 含答案 C++
1 单选题 1 / 48
下列数据结构中,按先进后出原则组织数据的是
A 线性链表 B 栈 C 循环链表 D 顺序表
查看答案 B. 栈
2 单选题 2 / 48
具有3个结点的二叉树有
A 2种形态 B 4种形态 C 7种形态 D 5种形态
查看答案 D. 5种形态
3 单选题 3 / 48
设有下列二叉树:
对此二叉树前序遍历的结果为
A ZBTYCPXA B ATBZXCYP C ZBTACYXP D ATBZXCPY
查看答案 B. ATBZXCYP
4 单选题 4 / 48
结构化程序设计主要强调的是
A 程序的规模 B 程序的效率 C 程序设计语言的先进性 D 程序易读性
查看答案 D. 程序易读性
5 单选题 5 / 48
程序的3种基本控制结构是
A 过程、子过程和分程序 B 顺序、选择和重复 C 递归、堆栈和队列 D 调用、返回和转移
查看答案 B. 顺序、选择和重复
6 单选题 6 / 48
下列叙述中,不属于测试的特征的是
A 测试的挑剔性 B 完全测试的不可能性 C 测试的可靠性 D 测试的经济性
查看答案 C. 测试的可靠性
7 单选题 7 / 48
需求分析中开发人员要从用户那里了解
A 软件做什么 B 用户使用界面 C 输入的信息 D 软件的规模
查看答案 A. 软件做什么
8 单选题 8 / 48
下列关系模型中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是
A 选择 B 连接 C 投影 D 并
查看答案 B. 连接
9 单选题 9 / 48
下列叙述中,正确的是
A 用E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系 B 用E-R图只能表示实体集之间一对一的联系 C 用E-R图只能表示实体集之间一对多的联系 D 用E-R图表示的概念数据模型只能转换为关系数据模型
查看答案 A. 用E-R图能够表示实体集间一对一的联系、一对多的联系和多对多的联系
10 单选题 10 / 48
"年龄在18-25之间"这种约束是属于数据库当中的
A 原子性措施 B 一致性措施 C 完整性措施 D 安全性措施
查看答案 C. 完整性措施
11 单选题 11 / 48
下列选项中不全是C++语言关键字的是
A const, break, default B long, void, using C virtual, extern, include D try, throw, this
查看答案 C. virtual, extern, include
12 单选题 12 / 48
以下C++语言中用于单行注释的是
A // B /* C */ D |
查看答案 A. //
13 单选题 13 / 48
在32位的计算机中,一个char型数据所占的内存长度的字节是
A 4 B 1 C 2 D 8
查看答案 B. 1
14 单选题 14 / 48
若变量已正确定义并赋值,以下符合C++语言语法的表达式是
A a:=b+1 B a=b=c+2 C int 18.5%3 D a=a+7=c+b
查看答案 B. a=b=c+2
15 单选题 15 / 48
有如下程序: #include"iostream.h" void main() { int x=1,a=0,b=0; switch(x){ case 0: b++; case 1: a++; case 2: a++;b++; } cout << "a=" << a << "," << "b=" << b; } 该程序的输出结果是
A a=2,b=1 B a=1,b=1 C a=1,b=0 D a=2,b=2
查看答案 A. a=2,b=1
16 单选题 16 / 48
有以下程序 #include"iostream.h" void main() { int i=1,j=1,k=2; if((j++||k++)&&i++) cout << i << "," << j << "," << k; cout<<endl; } 执行后输出结果是
A 1,1,2 B 2,2,1 C 2,2,2 D 2,2,3
查看答案 C. 2,2,2
17 单选题 17 / 48
若有说明 int a[3][4];,则a数组元素的非法引用是
A a[0][2*1] B a[1][3] C a[4-2][0] D a[0][4]
查看答案 D. a[0][4]
18 单选题 18 / 48
若有语句int *point,a=4;和 point=&a;下面均代表地址的一组选项是
A a, point,*&a B &*a, &a,*point C *&point,*point, &a D &a, &*point, point
查看答案 D. &a, &*point, point
19 单选题 19 / 48
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
A 函数调用可以作为独立的语句存在 B 函数调用可以无返回值 C 函数调用可以出现在表达式中 D 函数调用可以作为一个函数的形参
查看答案 D. 函数调用可以作为一个函数的形参
20 单选题 20 / 48
若运行时给变量x输入12,则以下程序的运行结果是 #include<iostream.h> void main() { int x,y; cin >> x; y=x>12?x+10:x-12; cout << y; cout<<endl; }
A 0 B 22 C 12 D 10
查看答案 A. 0
21 单选题 21 / 48
以下类定义中可能会引起错误的语句是 class A { public: ~A(){}//1 int i;//2 private: int j;//3 A(int i ){i++;}//4 };
A 1 B 2 C 3 D 4
查看答案 D. 4
22 单选题 22 / 48
以下关于C++语言类的说法中正确的是
A C++语言的默认访问权限是private B C++语言中的类定义,用户一定要自己定义一个构造函数用于实例化类 C C++语言中的成员函数的实现部分一定要写在类定义外 D C++语言中的类不能够嵌套定义
查看答案 A. C++语言的默认访问权限是private
23 单选题 23 / 48
下列描述中错误的是
A 派生类可以作为基类派生其他的子类 B 派生类继承基类的所有数据成员 C 派生类可以有多个基类 D 派生类不能继承一些函数成员
查看答案 B. 派生类继承基类的所有数据成员
24 单选题 24 / 48
派生类对象对其基类中的什么成员是可访问的?
A 公有继承的私有成员 B 私有继承的公有成员 C 私有继承的保护成员 D 保护继承的保护成员
查看答案 D. 保护继承的保护成员
25 单选题 25 / 48
下列运算符中哪些是不能够被重载的?
A ., .*, ->*, ::, ?: B ++,--, new, delete,== C sizeof,new,delete,++,-- D sizeof, new,delete,+,-
查看答案 A. ., .*, ->*, ::, ?:
26 单选题 26 / 48
下列关于运算符重载不正确的是
A 运算符重载不能改变运算符的操作数个数 B 运算符重载不能改变运算符的优先级 C 运算符重载不能改变运算符的结合性 D 运算符重载能改变对预定义类型数据的操作方式
查看答案 D. 运算符重载能改变对预定义类型数据的操作方式
27 单选题 27 / 48
下列关于函数模板实参不能省略的情况说明不正确的是
A 从模板函数实参表获得的信息有矛盾 B 需要获得特定类型的返回值,而不管参数的类型如何 C 虚拟类型参数没有出现在模板函数的形参表中 D 函数模板不含有常规形参
查看答案 D. 函数模板不含有常规形参
28 单选题 28 / 48
对于重载的运算符>>,它是一个
A 用于输入的友元函数 B 用于输入的成员函数 C 用于输出的友元函数 D 用于输出的成员函数
查看答案 A. 用于输入的友元函数
29 单选题 29 / 48
表达式10>5 && 6%3的值是
A -1 B 非零值 C 0 D 1
查看答案 C. 0
30 单选题 30 / 48
若调用一个函数,且此函数中没有return语句,则正确的说法是该函数
A 没有返回值 B 返回若干个系统默认值 C 有返回值,但返回一个不确定的值 D 能返回一个用户所希望的函数值
查看答案 C. 有返回值,但返回一个不确定的值
31 单选题 31 / 48
以下函数调用语句中含有参数的个数是 excc((v1,v2),(v2,v3,v4),v6)
A 3 B 4 C 5 D 6
查看答案 A. 3
32 单选题 32 / 48
以下能对二维数组a进行正确初始化的语句是
A int a[2][]={{1,0,1},{5,2,3}}; B int a[][3]={{1,2,3},{4,5,6}}; C int a[2][4]={{1,2,3},{4,5},{6}}; D int a[][3]={{1,0,1},{},{1,1}};
查看答案 B. int a[][3]={{1,2,3},{4,5,6}};
33 单选题 33 / 48
下列程序段的输出结果是 #include<iostream.h> void fun(int *x, int *y) { cout << *x << *y; *x=3; *y=4; } void main() { int x=1,y=2; fun(&y,&x); cout << x << y<<endl; }
A 2143 B 1212 C 1234 D 2112
查看答案 A. 2143
34 单选题 34 / 48
有如下程序 #include<iostream.h> void main() { float x=2.0,y; if(x<0.0)y=0.0; else if(x<10.0)y=1.0/x; else y=1.0; cout << y; } 该程序的输出结果是
A 0 B 0.25 C 0.5 D 1.0
查看答案 C. 0.5
35 单选题 35 / 48
下列程序的输出结果是 #include<iostream.h> void main() { char *str="12123434"; int x1=0,x2=0,x3=0,x4=0,i; for(i=0;str[i]!=′\0′;i++) switch (str[i]) { case′1′: x4++; case′2′: x3++; case′3′: x2++; case′4′: x1++; } cout << x1 << "," << x2 << "," << x3 << "," << x4; }
A 8,6,4,1 B 8,6,3,2 C 8,8,4,1 D 8,6,4,2
查看答案 D. 8,6,4,2
36 填空题 36 / 48
排序是计算机程序设计中的一种重要操作,常见的排序方法有插入排序、__ 和选择排序等。
查看答案 交换排序
37 填空题 37 / 48
当循环队列非空且队尾指针等于队头指针时,说明循环队列已满,不能进行入队运算。这种情况称为__ 。
查看答案 上溢
38 填空题 38 / 48
__ 是一种信息隐蔽技术,目的在于将对象的使用者和对象的设计者分开。
查看答案 封装
39 填空题 39 / 48
为了便于对照检查,测试用例应由输入数据和预期的__ 两部分组成。
查看答案 输出结果
40 填空题 40 / 48
__ 是从二维表列的方向进行的运算。
查看答案 关系运算
41 填空题 41 / 48
内联函数是通过__ 来实现的,因此内联函数是真正的函数。
查看答案 编译器
42 填空题 42 / 48
以下程序的输出结果是__ 。 #include<iostream.h> void main() { int a=0; a+=(a=8); cout << a; }
查看答案 16
43 填空题 43 / 48
以下程序的执行结果为__ 。 #include<iostream.h> class A { public: A(){cout<<"a";} ~A(){cout<<"b";} }; class B:public A { public: B(){cout<<"c";} ~B(){cout<<"d";} }; void main() { B b; }
查看答案 acdb
44 填空题 44 / 48
如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的__ 函数。
查看答案 内联
45 填空题 45 / 48
为解决在多重继承环境中因公共基类带来的__ 问题,C++语言提供了虚基类机制。
查看答案 二义性
46 填空题 46 / 48
operator是运算符重载时必须使用的关键字,它和被重载的运算符连在一起,作为运算符函数的专用函数名,务必把该函数说明为__ 的。
查看答案 public
47 填空题 47 / 48
__ 是一系列相关函数的模型或样板,这些函数的__ 形式相同,只是所针对的__ 不同。
查看答案 48 填空题 48 / 48
我们通常用到的cin>>,是属于__ 输入。
查看答案 有格式