[计算机类试卷]国家二级(C++)笔试模拟试卷127及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷127及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷127及答案与解析.doc(24页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 127及答案与解析 1 若需要利用形参直接访问实参,则应把形参变量说明为 ( )参数。 ( A)指针 ( B)引用 ( C)传值 ( D)常值 2 用单链表表示的链式队列的队头在链表的 ( )位置。 ( A)链头 ( B)链尾 ( C)链中 ( D)链表尾部前一个位置 3 如果只想得到 1024个元素组成的序列中第 5个最小元素之前的部分排序的序列,用 ( )方法最快。 ( A)冒泡排序 ( B)快速排序 ( C)简单选择排序 ( D)堆排序 4 以下选项中不属于 软件工程的目标是 ( )。 ( A)有效性 ( B)独立性 ( C)可移植性 ( D)可重用性 5
2、 线性表是一个具有 n个 ( )的有限序列。 ( A)表元素 ( B)数据元素 ( C)字符 ( D)数据项 6 设有 50行 60列的二维数组 A5060,其元素长度为 4字节,按行优先顺序存储,基地址为 200,则元素 A1825的存储地址为 ( )。 ( A) 3700 ( B) 4376 ( C) 3900 ( D) 4620 7 数据之间的相互关系和数据运算是指 ( )。 ( A)数据 ( B) 数据元素 ( C)数据项 ( D)数据结构 8 集簇属于 ( )。 ( A)模式 ( B)内模式 ( C)外模式 ( D)概念模式 9 设单链表中结点的结构为 (data, link)。已知
3、指针 q所指结点是指针 p所指结点的直接前驱,若在 *q与 *p之间插入结点 *s,则应执行下列哪一个操作 ?( )。 ( A) s - link=p- link; p- link=s ( B) q- link=s; s- link=p ( C) p- link=s- link; s- link=p ( D) p- link=s; s- link=q 10 以下不是数据库系统组成部分的是 ( )。 ( A)数据库 ( B)操作系统管理员 ( C)数据库管理系统 ( D)用户 11 标有 /*/的语句的执行次数是 ( )。 int y=5, x=2; do y=x*x; /* */ while(
4、+y 5); ( A) 5 ( B) 4 ( C) 2 ( D) 1 12 对下面的程序,正确的说法是 ( )。 main() int a,b=1, c=2; a=b+c, a+b, c+3; c=(c)? a+: b-; cout a+b, c; ( A)无错误 ( B)第三行有错误 ( C)第四行有错误 ( D)第五行有错误 13 假定 x和 y为 double型,则表达式 x=2, y=x+3/2的值是 ( )。 ( A) 3.5 ( B) 3 ( C) 2 ( D) 3 14 设 x, y, t均为 int 型变量,执行语句: x y=3; t=+x|+y;,完成后, y的值为 ( )
5、。 ( A)不确定 ( B) 4 ( C) 3 ( D) 1 15 以下程序的输出结果是 ( )。 main() int i; for(i=0; i 8; i+) switch(i) case 0: case 3: i+=2; case 1: case 2: i+=3; default: i+=5; cout i; ( A) 11 ( B) 35 ( C) 10 ( D) 45 16 关于类和对象不正确的说法是 ( )。 ( A)类是一种类型,它封装了 数据和操作 ( B)对象是类的实例 ( C)一个类的对象只有一个 ( D)一个对象必属于某个类 17 关于 this指针的说法错误的是 ( )
6、。 ( A) this指针必须显示说明 ( B)当创建一个对象后, this指针就指向该对象 ( C)成员函数拥有 this指针 ( D)静态成员函数不拥有 this指针 18 对于下面程序,对 p调用正确的是 ( )。 class A public:fun(int i)cout i endl; ; main() A a; int k=0; void(A: *p)(int); p=A: fun; ( A) a.p(k); ( B) *a p(k) ( C) a *p(k) ( D) a: *p(k) 19 下面关于子类型的描述中,错误的是 ( )。 ( A)子类型关系是可逆的 ( B)公有派生
7、类的对象可以初始化基类的引用 ( C)只有在公有继承下,派生类是基类的子类型 ( D)子类型关系可以传递 20 下面程序的运行结果为 ( )。 class A static int n; public: A()n=1; A(int num)n=num; void print()coutn; A: n=0; void main() A a, b(2); a.print(); b.pint(); ( A) 12 ( B) 11 ( C) 22 ( D) 21 21 下列程序的输出结 果为 ( )。 int fun(int n) if(n=0)return 1; else return n*fun(
8、n-1): return 0; void main() eout func(4) endl; ( A) 1 ( B) 10 ( C) 24 ( D) 11 22 在 C+语言中,数据封装要解决的问题是 ( )。 ( A)数据的规范化 ( B)便于数据转换 ( C)避免数据丢失 ( D)防止不同模块之间数据的非法访问 23 private访问属性限制对象的成员,可以在 ( )中访问。 ( A)本类的成员函数 ( B) main函数 ( C)父类的成员函数 ( D)子类的成员函数 24 如果定义了一个类 myclass,则为 myclass类对象以成员函数形式重载后 +运算符的声明应该为 ( )。
9、 ( A) myclass operator +(); ( B) myelass for (int i=0; strli=str2i; i+) 后,数组 str1中的字符是 XYZxyz,数组 str2中的字符串是【 】。 42 下列程序的执行结果是【 】。 include iostream. h int a; int sum_a(void) a=a+5; return a; void main(void) a = a+sum_a(); cout a endl; 43 根据输出结果填空完成下面程序。 # include iostream. h class Test private: stati
10、c int val; int a; public: static int func( ); void sfunc(Test ; 【 】 /初始化静态变量 val int Test:func() return val+; void Test:sfunc(Test cout “Result3=“ r.a; void main( ) cout “Resultl=“ Test:func( ) endl; Test a; cout “Result2=“ a. func( ); a. sfunc(a) 44 下列程序的运行结果是【 】。 # include iostream. h class test p
11、rivate: int num; public: test() int TEST() return num+100; test() ; test:test()num=0; test: test()cout “Destructor is active“ endl; void main() test x3 cout x1. TEST() endl; 45 下列程序是一个函数模板,用于把数组 a的每个元素按照逆序放入数组 b中。请填空完成该函数模板的定义 template class Type void Func(Type a, Type b,【 】 ) for(int i=0;i n;i+) bn
12、-i-1=ai; 46 下列程序的运行结果是【 】。 # include iostream. h # include string. h void main() char * a5=“stuent“,“worker“,“teacher“,“soldier“,“ peasant“; char * p1, * p2; p1=p2=a0 for(int i=0;i 5;i+) if(strcmp(ai,p1) 0) p1=ai; if(strcmp(ai,p2) 0) p2=ai; cout p1 “,“ p2 endl; 47 下列程序编译时发现 pb- f(10);语句出现错误,其原因是【 】。
13、 # include iostream. h class Base public: void f(int x)cout “Base:“ x endl; ; class Derived: public Base public: void f(char * str)cout “Derivcd:“ str endl; ; void main(void) Derived * pd=new Derived; pd- f(10) 48 下列程序的运行结果是【 】。 # include iostream. h class SomeClass public: SomeClass(int value) some
14、_value=value; void show_data(void) cout data “ some_value endl; ; static void set_data(int value) data=value; private: static int data; int some_value ; int SomeClass:data void main(void) SomeClass my_class(1001),your_class(2002); your_class. set_data(4004); my_elass. show_data() 49 下列程序用于打印出 ASC 字符
15、,其析构函数内的语句应为【 】。 # include iostream. h # inelude iomanip, h template class T class Array T * elems; int size; public: Array(int.s); Array() T template class T Array T :Array(int s) size=s; elems=new Tsize for(int i=0;i size;i+) elemsi=0 template celass T Array T : Array() _ template class T T templa
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 127 答案 解析 DOC
