计算机类 二级 C++
全国计算机等级考试 二级C++ 笔试模拟试题(三) 49 题 含答案 C++
1 单选题 1 / 49
最简单的交换排序方法是
A 快速排序 B 选择排序 C 堆排序 D 冒泡排序
查看答案 D. 冒泡排序
2 单选题 2 / 49
栈通常采用的两种存储结构是
A 线性存储结构和链表存储结构 B 散列方式和索引方式 C 链表存储结构和数组 D 线性存储结构和非线性存储结构
查看答案 A. 线性存储结构和链表存储结构
3 单选题 3 / 49
线性表的顺序存储结构和线性表的链式存储结构分别是
A 顺序存取的存储结构、顺序存取的存储结构 B 随机存取的存储结构、顺序存取的存储结构 C 随机存取的存储结构、随机存取的存储结构 D 任意存取的存储结构、任意存取的存储结构
查看答案 B. 随机存取的存储结构、顺序存取的存储结构
4 单选题 4 / 49
完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是
A 黑箱测试法 B 白箱测试法 C 错误推测法 D 安装测试法
查看答案 A. 黑箱测试法
5 单选题 5 / 49
在结构化设计方法中,生成的结构图(SC)中,带有箭头的连线表示
A 模块之间的调用关系 B 程序的组成成分 C 控制程序的执行顺序 D 数据的流向
查看答案 A. 模块之间的调用关系
6 单选题 6 / 49
下列选项中,不属于模块间耦合的是
A 数据耦合 B 同构耦合 C 异构耦合 D 公用耦合
查看答案 C. 异构耦合
7 单选题 7 / 49
一个关系中属性个数为1时,称此关系为
A 对应关系 B 单一关系 C 一元关系 D 二元关系
查看答案 C. 一元关系
8 单选题 8 / 49
为用户与数据库系统提供接口的语言是
A 高级语言 B 数据描述语言(DDL) C 数据操纵语言(DML) D 汇编语言
查看答案 C. 数据操纵语言(DML)
9 单选题 9 / 49
相对于数据库系统,文件系统的主要缺陷有数据关联差、数据不一致性和
A 可重用性差 B 安全性差 C 非持久性 D 冗余性
查看答案 D. 冗余性
10 单选题 10 / 49
需求分析阶段的任务是确定
A 软件开发方法 B 软件开发工具 C 软件开发费用 D 软件系统功能
查看答案 D. 软件系统功能
11 单选题 11 / 49
以下哪个特征不是面向对象思想中的主要特征?
A 多态 B 继承 C 封装 D 垃圾回收
查看答案 D. 垃圾回收
12 单选题 12 / 49
以下哪个不是C++语言中的有效标识符?
A 34a B _AB C A_B D A25
查看答案 A. 34a
13 单选题 13 / 49
C++中运算符优先级由高到低排列正确的是
A :: ++ + || B < * || , C sizeof % + :: D , && new sizeof
查看答案 A. :: ++ + ||
14 单选题 14 / 49
下面程序的运行结果是 #include"iostream.h" #define sum(a,b)a*b void main() { int x; x=sum(1+2,3); cout<<x; }
A 0 B 9 C 7 D 5
查看答案 C. 7
15 单选题 15 / 49
以下for语句中不是死循环的是
A for(int i=0;i<1;++i); B for(int i=0;;++i); C for(int i=1;i>0;++i); D for( ; ; );
查看答案 A. for(int i=0;i<1;++i);
16 单选题 16 / 49
关于continue语句叙述不正确的是
A continue语句用于循环体中,结束循环 B continue语句用于循环体中,它使执行流跳出循环体中尚未执行的语句,并进行下一循环判断 C continue可以用于if语句中 D continue语句不能代替break语句
查看答案 A. continue语句用于循环体中,结束循环
17 单选题 17 / 49
以下定义数组中错误的是
A int a[10]; B int a[2][20]; C int a[20][ ]; D int a[];
查看答案 C. int a[20][ ];
18 单选题 18 / 49
下面程序的执行结果是 #include"iostream.h" void main() { int *p,r; p = new int; *p = 20; r=sizeof(*p); cout<<r<<endl; delete p; }
A 程序错误 B 内存为20地址的大小 C 20 D 4
查看答案 D. 4
19 单选题 19 / 49
下面程序错误的语句是 #include "iostream.h" ① void main() ② { ③ int A = 0; ④ int & B; ⑤ B = A; ⑥ cout << B; ⑦ cout << A; ⑧ }
A ② B ③ C ④ D ⑥
查看答案 C. ④
20 单选题 20 / 49
下列程序的输出结果是 #include "iostream" using namespace std; int Max( int a, int b ) { if( a > b) return a; else return b; } void main() { int m, n; m =10,n=5; int max = Max( m, n ); cout << max << endl; }
A 10 B 程序有误 C 1 D 0
查看答案 A. 10
21 单选题 21 / 49
函数int test( int a , int b=1, int c = 0),下列调用不合法的个数是 test( 0 );test( 0, 0 );test( );test( 0, 0, 0 );
A 0 B 1 C 2 D 3
查看答案 C. 2
22 单选题 22 / 49
C++语言中类定义中默认的访问权限是
A public B protected C private D default
查看答案 C. private
23 单选题 23 / 49
C++语言中关于构造函数的说法正确的是
A 构造函数的函数名不必和类名相同 B 构造函数只能每一个 C 每个类必定有构造函数 D 构造函数必有返回值
查看答案 C. 每个类必定有构造函数
24 单选题 24 / 49
关于构造函数A()的拷贝构造函数正确的是
A A( A *B ); B A( A B ); C A( A & B ); D A( A );
查看答案 C. A( A & B );
25 单选题 25 / 49
下面程序的执行结果为 #include "iostream" using namespace std; class A { int a; public: void Seta( int x ){ a = x;} void Display_a(){ cout << a << endl; } }; class B { int b; public: void Setb( int x ){ b = x;} void Dispaly_b(){ cout << b << endl; } }; class C : public A, private B { private: int c; public: void Setc( int x, int y, int z ) { c = z; Seta( x ); Setb( y ); } void Display_c(){ cout << c << endl; } }; ① void main() ② { ③ C cc; ④ cc.Seta( 1 ); ⑤ cc.Display_a(); ⑥ cc.Setc( 2, 2, 3 ); ⑦ cc.Dispaly_b(); ⑧ cc.Display_c(); }
A 输出为223 B 有错误在第5行 C 输出为123 D 有错误在第7行
查看答案 D. 有错误在第7行
26 单选题 26 / 49
虚函数必须是类的
A 成员函数 B 友元函数 C 构造函数 D 析构函数
查看答案 A. 成员函数
27 单选题 27 / 49
多态性指的是
A 以任何方式调用一个虚函数 B 以任何方式调用一个纯虚函数 C 借助于指向对象的基类指针或引用调用一个虚函数 D 借助于指向对象的基类指针或引用调用一个纯虚函数
查看答案 C. 借助于指向对象的基类指针或引用调用一个虚函数
28 单选题 28 / 49
不能重载的运算符是
A new B sizeof C .* D ++
查看答案 C. .*
29 单选题 29 / 49
只能作为成员函数重载的是
A = B ++ C * D new
查看答案 A. =
30 单选题 30 / 49
关于模板下列说法不正确的是
A 用类模板定义一个对象时,不能省略实参 B 类模板只能有虚拟类型参数 C 类模板本身在编译中不会生成任何代码 D 类模板的成员函数都是模板函数
查看答案 B. 类模板只能有虚拟类型参数
31 单选题 31 / 49
语句cout << setprecision (2)<< 1024.4567;的输出结果为
A 1024.4567 B 1024 C 1024.45 D 1e+003
查看答案 D. 1e+003
32 单选题 32 / 49
下面程序的结果为 #include"iostream.h" void change( int a, int b ) { int temp; temp = a; a = b; b = temp; } void main() { int m, n; m = 8; n = 9; change( m, n ); cout << m << " " << n << endl; }
A 8 9 B 9 8 C 程序有错误 D 9 9
查看答案 A. 8 9
33 单选题 33 / 49
下面程序的结果是 #include "iostream.h" void main() { char *str; str = "test!"; cout << str[5]; }
A 程序错误 B ! C ′\0′ D 为空字符
查看答案 D. 为空字符
34 单选题 34 / 49
下面程序输出的结果为 #include "iostream.h" class A { public: A(){ cout << "CLASS A" << endl; } ~A(){} }; class B : public A { public: B(){ cout << "CLASS B" << endl; } ~B(){} }; void main() { A *p; p = new B; B *q; q = new B; }
A CLASS A CLASS B B CLASS A CLASS B CLASS B C CLASS A CLASS B CLASS A CLASS B D CLASS A CLASS B CLASS B CLASS B
查看答案 C. CLASS A CLASS B CLASS A CLASS B
35 单选题 35 / 49
C++语言函数中不能由系统自动生成的是
A 析构函数 B 构造函数 C 内联函数 D 拷贝构造函数
查看答案 C. 内联函数
36 填空题 36 / 49
栈和队列通常采用的存储结构是__ 。
查看答案 链式存储和顺序存储
37 填空题 37 / 49
在程序设计阶段应该采取__ 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,进而用某种程序设计语言写成程序。
查看答案 自顶而下
38 填空题 38 / 49
软件结构是以__ 为基础而组成的一种控制层次结构。
查看答案 模块
39 填空题 39 / 49
数据库系统阶段的数据具有较高独立性,数据独立性包括物理独立性和__ 两个含义。
查看答案 逻辑独立性
40 填空题 40 / 49
数据库保护分为安全性控制、__ 、并发性控制和数据的恢复。
查看答案 完整性控制
41 填空题 41 / 49
__ 是C++语言程序的入口。
查看答案 main()函数
42 填空题 42 / 49
程序 #include"iostream.h" void main() { int i = 10; int j = 5; cout << j + i++ <<endl; } 的结果为__ 。
查看答案 15
43 填空题 43 / 49
C++语言的基本控制结构为顺序结构、选择结构和__ 。
查看答案 循环结构
44 填空题 44 / 49
语句int *i; i = new int[10]; ,释放指针i的语句是__ 。
查看答案 delete[]i;
45 填空题 45 / 49
函数重载要求重载的函数必须有和原函数一样的__ 。
查看答案 函数名
46 填空题 46 / 49
在C++语言中每个类都有一个__ 指针,该指针指向正在调用成员函数的对象。
查看答案 this
47 填空题 47 / 49
设置虚基类的目的是__ ,通过__ 表示虚基类。
查看答案 48 填空题 48 / 49
程序的结果为__ 。 #include "iostream.h" template<typename T> T total( T *data ) { T s = 0; while( *data ) { s += *data++; } return s; } int main() { int x[] = { 2,4,6,8,0,12,14,16,18 }; cout << total(x); return 0; cout<<endl;}
查看答案 20
49 填空题 49 / 49
语句cout << ′\n′ 还可表示为__ 。
查看答案 cout << endl;