[计算机类试卷]国家二级(C++)笔试模拟试卷134及答案与解析.doc
《[计算机类试卷]国家二级(C++)笔试模拟试卷134及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]国家二级(C++)笔试模拟试卷134及答案与解析.doc(26页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级( C+)笔试模拟试卷 134及答案与解析 1 下列叙述中正确的是 ( A)程序设计就是编制程序 ( B)程序的测试必须由程序员自己去完成 ( C)程序经调试改错后还应进行再测试 ( D)程序经调试改错后不必进行再测试 2 下列关于队列的叙述中正确的是 ( A)在队列中只能插入数据 ( B)在队列中只能删除数据 ( C)队列是先进先出的线性表 ( D)队列是先进后出的线性表 3 对于长度为 n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是 ( A)冒泡排序为 n/2 ( B)冒 泡排序为 n ( C)快速排序为 n ( D)快速排序为 n(n1)/2 4 下列叙述中正确
2、的是 ( A)线性链表中的各元素在存储空间中的位置必须是连续的 ( B)线性链表中的表头元素一定存储在其他元素的前面 ( C)线性链表中的各元素在存储空间中的位置不一定是连续的,但表头元素一定存储在其他元素的前面 ( D)线性链表中的各元素在存储空间中的位置不一定是连续的,且各元素的存储顺序也是任意的 5 下面对对象概念描述错误的是 ( A)任何对象都必须有继承性 ( B)对象是属性和方法的封装体 ( C)对象间 的通讯靠消息传递 ( D)操作是对象的动态属性 6 在结构化方法中,用数据流程图 (DFD) 作为描述工具的软件开发阶段是 ( A)可行性分析 ( B)需求分析 ( C)详细设计 (
3、 D)程序编码 7 软件需求分析阶段的工作,可以分为四个方面:需求获取,需求分析,编写需求规格说明书,以及 ( A)阶段性报告 ( B)需求评审 ( C)总结 ( D)都不正确 8 数据库系统的核心是 ( A)数据模型 ( B)数据库管理系统 ( C)软件工具 ( D)数据库 9 下列关系运算中,能使经运算后得到的 新关系中属性个数多于原来关系中属性个数的是 ( A)选择 ( B)连接 ( C)投影 ( D)并 10 将 E-R图转换到关系模式时,实体与联系都可以表示成 ( A)属性 ( B)关系 ( C)键 ( D)域 11 若有以下定义: int a = 1,2,3,4,5,6,7; ch
4、ar c1 = b,c2 = 2; 则数值不为 2的表达式是 ( A) a1 ( B) d-c1 ( C) a3-c2 ( D) c2-0 12 面向对象程序设计思想的主要特征中不 包括 ( A)继承性 ( B)功能分解,逐步求精 ( C)封装性和信息隐藏 ( D)多态性 13 下面关于虚函数的描述中正确的是 ( A)虚函数是一个静态成员函数 ( B)虚函数是一个非成员函数 ( C)虚函数既可以在函数说明时定义,也可以在函数实现时定义 ( D)派生类的虚函数与基类中对应的虚函数具有相同的参数个数和类型 14 以下程序的输出结果是 #include iostream.h void main ()
5、 int a=0, i; for (i=1; i 5; i+) switch (i) case 0 : case 3 : a+=2; case 1 : case 2 : a+=3; default : a+=5; cout a endl; return; ( A) 31 ( B) 13 ( C) 10 ( D) 20 15 有以下程序: #include iostream using namespace std; int main () int x=15; while (x 10 if (x/3) x+; break; cout x endl; return 0; 执行后的输出结果是 ( A)
6、 15 ( B) 16 ( C) 17 ( D) 18 16 已知: int m=10;在下列定义引用的语句中,正确的是 ( A) int ,下列表述中错误的是 ( A)用 *data可访问到数组的首元素 ( B)用 data9可访问到数组的末元素 ( C)用 data10访问数组元素会超出数组边界 ( D) data共有 10个元素,其首元素是 data1 19 若有以下程序: #include iostream using namespace std; int f() static int i = 0; int s = 1; s+=i; i+; return s; int main() i
7、nt i,a = 0; for(i = 0;i 5;i+) a+=f(); cout a endl; return 0; 程序运行后,输出的结果是 ( A) 20 ( B) 24 ( C) 25 ( D) 15 20 下列函数中对调用它的函数没有起到任何作用的是 ( A) void f1(double ( B) double f1(double x)return x-1.5; ( C) void f3(double x)-x; ( D) double f4(double *x)-*x; return*x; 21 有如下程序: #include iostream void fun(intx=y;
8、y=t; int main () int a2=23,42; fun(a1,a0); std:cout a0 “,“a1 std:endl; return 0; 执行后的输出结果是 ( A) 42, 42 ( B) 23, 23 ( C) 23, 42 ( D) 42, 23 22 下列类的定义中,有 ( )处语法错误。 class Base public: Base() Base(int i) data=i; private: int data; ; class Derive : public Base public: Derive() : Base(0) Derive (int x) d=
9、x; void setvalue(int i) data=i; private: d; ; ( A) 1 ( B) 2 ( C) 3 ( D) 4 23 若类 A和类 B的定义如下: class A int i,j; public: int geti () return i; ; class B : public A int k; public: void make () k=i*j; ; 则上述定义中非法的语句是 ( A) k=i*j; ( B) int k; ( C) return i; ( D) void make() 24 下面的函数模板定义中错误的是 ( A) template cl
10、ass Q q F(Q x) return Q+x; ( B) template class Q Q F(Q x)return x+x; ( C) template class T T F(Tx)return x*x; ( D) template class T bool F(Tx)return x 1; 25 下列打开文件的表达式中,错误的是 ( A) ofstream ofile;ofile.open(“C:vcabc.txt“,ios:binary); ( B) fstream iofile;iofile.open(“abc.txt“,ios:ate); ( C) ifstream if
11、ile(“C:vcXXabc.txt“); ( D) cout.open(“C:vcabc.txt“,ios:binary); 26 有如下的程序: #include cstring.h #include iostream.h using namespace std; class MyString public: MyString(const char*s); MyString () delete data; protected: unsigned len; char*data; ; MyString:MyString(const char *s) len=strlen (s); data=n
12、ew charlen+1; strcpy (data,s); int main () MyString a(“C+ Programing“); MyString b(a); return 0; 在运行上面的程序时出错,出错的原因是 ( A)构造函数的实参不允许是本类的对象 ( B)没有定义实现深层复制 (深拷贝 )的复制构造函数 ( C)构造对象 a时实参与形参类型不符 ( D)系统不能生成默认的复制构造函数 27 一个类可以同时继承多个类,称为多继承。下列关于多个继承和虚基类的表述中,错误的是 ( A)每个派生类的构造函数都要为虚基类构造函数提供实参 ( B)多继承时有可能出现对基类成员访问
13、的二义性问题 ( C)使用虚基类可以解决二义性问题并实现运行时的多态性 ( D)建立最派生类对象时,虚基类的构造函数会首先被调用 28 下列关于 this指针的叙述中,正确的是 ( A)任何与类相关的函数都有 this指针 ( B)类的成员函数都有 this指针 ( C)类的友元函数都有 this指针 ( D)类的非静态成员函数才有 this指针 29 有如下程序: #include iostream.h using namespace std; class Base public: Base() cout “BB“; f(); voidf()cout “Bf“; ; class Derive
14、d: public Base public: Derived ()cout “DD“; void f()cout“Df“; ; int main()Derived d; return 0; 执行上面的程序将输出 ( A) BBBfDD ( B) BBDfDDDf ( C) DD ( D) DDBBBf 30 下列说法中错误的是 ( A)公有继承时基类中的 public成员在派生类中仍是 public成员 ( B)私有继承时基类中的 protected成员在派生类中仍是 protected成员 ( C)私有继承时基类中的 public成员在派生类中仍是 private成员 ( D)保护继承时基类
15、中的 public成员在派生类中仍是 protected成员 31 有以下程序: #include iostream using namespace std; class A private: int a; public: A (int i) a=i; void disp() cout a “,“; ; class B private: int b; public: B(int j) b=j; void disp() cout b “,“; ; class C : public B,public A private: int c; public: C(int k) :A(k-2),B(k+2)
16、 c=k; void disp () A:disp (); B:disp (); cout c endl; ; int main () C obi (10); obj.disp (); return 0; 程序执行后的输出结果是 ( A) 10,10,10 ( B) 10,12,14 ( C) 8,10,12 ( D) 8,12,10 32 有如下程序: #include iostream using namespace std; class BASE public: BASE()cout “BASE“; ; class DERIVED:public BASE public: DERIVED(
17、)cout “DERIVED“; ; int main()DERIVED x;return 0; 执行后的输出结果是 ( A) BASE ( B) DERIVED ( C) BASEDERIVED ( D) DERIVEDBASE 33 关于类模板,下列表述不正确的是 ( A)用类模板定义一个对象时,不能省略实参 ( B)类模板只能有虚拟类型参数 ( C)类模板本身在编 译中不会生成任何代码 ( D)类模板的成员函数都是模板函数 34 有如下程序: #include iostream.h #include iomanip.h using namespace std; class CSum in
18、t x,y; public: CSum (int x0,int y0):x(x0),y(y0) friend ostream return os; ; int main () CSum y(3,5); cout setfill (*) 8; cout y; return 0; 执行上面程序的输出是 ( A) 88 ( B) *88 ( C) *8*8 ( D) 8*8 35 有以下程序 #include iostream #include string using namespace std; class base private: char baseName10; public: base
19、() strcpy(baseName,“Base“); virtual char *myName() return baseName; char *className() return baseName; ; class Derived : public base private: char derivedName10; public: Derived() strcpy(derivedName,“Derived“); char *myName() return derivedName; char *className() return derivedName; ; void showPtr(b
20、ase int main () base bb; Derived dd; showPtr(dd); return 0; 运行后的输出结果为 ( A) Derived Base ( B) Base Base ( C) Derived Derived ( D) Base Derived 36 算法的复杂度主要包括时间复杂度和 _复杂度。 37 按照逻辑结构分类,结构可以分为线性结构和非线性结构,栈属于 _。 38 树中度为零的结点称为 _。 39 在面向对象方法中,类之间共享属性和方法的机制称为 _。 40 软件是程序、数据和 _的集合。 41 纯虚函数的声明总是以 _结束。 42 下列程序的输出
21、结果为 Objectid=O Obiectid=1 请将程序补充完整。 #include iostream using namespace std; class Point public: Point(int xx=0,int yy=0)X=xx;Y=yy;countP+; Point()countP-; int GetX()return X; int GetY()return Y; static void GetC()cout “Object id=“ countP end1; private: int X,Y; static int countP; ; _/静态数据成员的初始化 int m
22、ain() Point:GetC(); Point A(4,5); A.GetC(); return 0; 43 下列程序的输出结果是 _。 #include iostream using namespace std; Class Test public: Test()cnt+; Test()cnt-; static int Count()return cnt; private: static int cnt; ; int Test:cnt=0; int main() cout Test:Count() “; Test t1,t2; Test*pT3=new Test; Test*pT4=ne
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 国家 二级 笔试 模拟 134 答案 解析 DOC
