[计算机类试卷]国家二级(C++)笔试模拟试卷197及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷197及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷197及答案与解析.doc(22页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 197及答案与解析 1 下列叙述中正确的是 A) 算法的效率只与问题的规模有关,而与数据的存储结构无关 B) 算法的时间复杂度是指执行算法所需要的计算工作量 C) 数据的逻辑结构与存储结构是一一对应的 D) 算法的时间复杂度与空间复杂度一定相关 2 在结构化程序设计中,模块划分的原则是 A) 各模块应包括尽量多的功能 B) 各模块的规模应尽量大 C) 各模块之间的联系应尽量紧密 D) 模块内具有高内聚度,模块间具有低耦合度 3 下列叙述中正确的是 A) 软件测试的 主要目的是发现程序中的错误 B) 软件测试的主要目的是确定程序中错误的位置 C) 为了提高软件测试
2、的效率,最好由程序编制者自己来完成软件测试的工作 D) 软件测试是证明软件没有错误 4 下列选项中,不属于面向对象程序设计特征的是 A) 继承性 B) 多态性 C) 类比性 D) 封装性 5 下列对列的叙述中,正确的是 A) 队列属于非线性表 B) 队列按 “先进后出 ”的原则组织数据 C) 队列在队尾删除数据 D) 队列按 “先进先出 ”原则组织数据 6 某二叉树中有 n个度为 2的结点,则该二叉树中的 叶子结点数为 A) n+1 B) n-1 C) 2n D) n/2 7 在下列关系运算中,不改变关系表中的属性个数,但能减少元组个数的是 A) 并 B) 交 C) 投影 D) 笛卡儿乘积 8
3、 在 E-R图中,用来表示实体之间是联系的图形是 A) 矩形 B) 椭圆形 C) 菱形 D) 平行四边形 9 下列叙述中错误的是 A) 在数据库系统中,数据的物理结构必须与逻辑结构一致 B) 数据库技术的根本目标是要解决数据的共享问题 C) 数据库设计是指在已有数据库管理系统的基础上建立数据库 D) 数据 库系统需要操作系统的支持 10 要定义数组 A,使得其中每个元素的数据依次为 3、 9、 4、 8、 0、 0、 0,错误的定义语句是 A) int A =3, 9, 4, 8, 0, 0, 0; B) int A7=3, 9, 4, 8, 0, 0, 0; C) int A =3, 9,
4、4, 8; D) int A7=3, 9, 4, 8; 11 在 C+中,实现封装性需借助于 A) 枚举 B) 类 C) 数组 D) 函数 12 下列关于虚函数的描述中,正确的是 A) 虚函数是一个 static类型的成员函 数 B) 虚函数是一个非成员函数 C) 基类中采用 virtual说明一个虚函数后,派生类中定义相同类型的函数时可不必加 virtual D) 派生类中的虚函数与基类中相同原型的虚函数具有不同的参数个数或类型 13 下列关于运算符重载的描述中,正确的是 A) 运算符重载可以改变操作数的个数 B) 运算符重载可以改变运算符的优先级 C) 运算符重载可以改变运算符的结合性 D
5、) 运算符重载可以使运算符实现特殊功能 14 有如下函数模板声明: template typename T T Max(T a, T B) return(a=B) ?a: b; 下列对函数模板 Max的调用中错误的是 A) Max(3.5, 4.5) B) Max(3.5, 4); C) Max double (3.5, 4.5) D) Max double (3.5, 4) 15 若语句: cout setfill( ) setw(5) 3141512 setw(5) “OK!“; 是程序中第一个输出语句,则输出结果是 A) 3141512 0K! B) 3141512 OK! C) 314
6、150K! D) 31415 OK 1 16 有如下语句序列: int k=0: d0k+=5; cout $; wbile(k 19); while(k- 0)cout *; 执行上面的语句后,序列输出字符 $和 *的个数分别是 A) 4和 20 B) 5和 20 C) 4和 21 D) 5和 21 17 针对数组定义 int data10;,下列叙述中错误的是 A) 用 *data可访问到数组的首元素 B) 用 data9可访 问到数组的末元素 C) 用 data10访问数组元素会超出数组的边界 D) data共有 10个元素,其首元素是 data1 18 已知 n是一个 int型变量,下
7、列语句中错误的是 A) long*p=new longn; B) long pn; C) long*p=new long(n); D) long p10; 19 下列函数中对调用它的函数没有起到任何作用的是 A) void f1(double x)-x; B) double f2(double x)return x-1.5; C) void f3(double x)-x; D) double f4(double *x)-*x; return*x; 20 有如下函数定义: void func(int a, int B) a+; b+; 若执行代码段: intx=0, y=1; func(x, y
8、); 则变量 x和 y值分别是 A) 0和 1 B) 1和 1 C) 0和 2 D) 1和 2 21 有如下程序: #include iostream using namespace std; class A public: static int a; void init( )a=l; A(int a=2)init( ); a+; ; int A:a=0; A obj; int main( ) cout obj.a; return 0; 程序的输出结果是 A) 0 B) 1 C) 2 D) 3 22 下列有关继承和派生的叙述中 ,正确的是 A) 派生类不能访问基类的保护成员 B) 作为虚基类的
9、类不能被实例化 C) 派生类应当向基类的构造函数传递参数 D) 虚函数必须在派生类中重新实现 23 下列运算符中,不能被重载的是 A) B) != C) D) + 24 下列函数模板的定义中,合法的是 A) template typename T T abs(T x)retllrn x 0? -x: X; B) template class T T abs(T x)return x 0? -x; x; C) template T class T abs(T x)return x 0? -X; x; D) template T abs(T x)return x 0? -x; x; 25 在语句
10、cin data;中, cin是 A) C+的关键字 B) 类名 C) 对象名 D) 函数名 26 有如下程序: #include iostream using namespace std; class test private: int a; public: test( )cout “constructor“ endl; test(int A) cout a endl; test(const test _test) a=_test a; cout “copy constructor“ endl; test()cout “destructor“ endl; ; int main( ) test
11、 A(3) return 0; 程序的输出结果是 A) 3 destructor B) constructor destructor C) copy constructor destructor D) 3 27 若有类声明: class MyClass public: MyClass( )cout 1; ; 执行下列语句 MyClass a, b2, *P2; 以后,程序的输出结果是 A) 11 B) 111 C) 1111 D) 11111 28 有如下程序: #include iostream using namespaee std; class Point public: static
12、int number; Point( )number+; Point( )number-; ; int Point:number=0; void main( ) Point*ptr; Point A, B; Point*ptr_point=new Point3; ptr=ptr_point; Point C; cout Point:number endl; delete ptr; 程序的输出结果是 A) 3 B) 4 C) 6 D) 7 29 如果不使用多态机制,那么通过基类的指针虽然可以指向派生类对象,但是只能访问从基类继承的成员。有如下程序,没有使用多态机制: #include iostr
13、eam using namespace std; class Base int a, b; public: Base(int x, inty)a=x; b=y; void show( )cout a , b endl; ; class Derived: public Base int C, d; public: Derived(int x, int y, int z, intm): Base(x, y)c=z; d=m; void show( )cout c , d endl; int main( ) Base BI(50, 50), *pb; Derived D1(10, 20, 30, 4
14、0); pb=D1; pb- show( ); return 0; 程序的输出结果是 A) 10, 20 B) 30, 40 C) 20, 30 D) 50, 50 30 有如下程序: #include iostream using namespace std; class A public: A(int i)X=i; void dispa( )cout x , ; private: int x; ; class B: public A public: B(int i): A(i+10)x=i; void dispb( )dispa( ); cout x endl; private: int
15、x; ; int main( ) B b(2); b.dispb( ); return 0; 程序的输出结果是 A) 10, 2 B) 12, 10 C) 12, 2 D) 2, 2 31 虚函数支持多态调用,一个基类的指针可以指向派生类的对象,而且通过这样的指针调用虚函数时,被调用的是指针所指的实际对象的虚函数,而非虚函数不支持多态调用。有如下程序: #include iostream using namespaee std; class Base public: virtual void f( )cout “f0+“; void g( )cout “gO+“; ; class Derive
16、d: public Base public: void f( )cout “f+“; void g( )cout “g+“; ; int main( ) Derived d; Base*P= d: p- f( ); p- g( ); return 0; 程序的输出结果是 A) f+g+ B) f0+g+ C) f+g0+ D) f0+g0+ 32 下面程序对一维坐标点类 Point进行了运算符重载: #include iostream using namespace std; class Point public: Point(int val)x=val; Point operator+( )
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 197 答案 解析 DOC
