[计算机类试卷]2012年9月国家二级(C++)笔试真题试卷及答案与解析.doc
《[计算机类试卷]2012年9月国家二级(C++)笔试真题试卷及答案与解析.doc》由会员分享,可在线阅读,更多相关《[计算机类试卷]2012年9月国家二级(C++)笔试真题试卷及答案与解析.doc(25页珍藏版)》请在麦多课文档分享上搜索。
1、2012年 9月国家二级( C+)笔试真题试卷及答案与解析 1 下列链表中,其逻辑结构属于非线性结构的是 ( A)双向链表 ( B)带链的栈 ( C)二叉链表 ( D)循环链表 2 设循环队列的存储空间为 Q(1: 35),初始状态为 front=rear=35。现经过一系列入队与退队运算后, front=1 5, rear=15,则循环队列中的元素个数为 ( A) 20 ( B) 0或 35 ( C) 15 ( D) 16 3 下列关于栈的叙述中,正确的是 ( A)栈底元素一定是最后入栈的元素 ( B)栈操作遵循先 进后出的原则 ( C)栈顶元素一定是最先入栈的元素 ( D)以上三种说法都不
2、对 4 在关系数据库中,用来表示实体间联系的是 ( A)网状结构 ( B)树状结构 ( C)属性 ( D)二维表 5 公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是 ( A) 1: m联系 ( B) m: n联系 ( C) 1: 1联系 ( D) m: 1联系 6 有两个关系 R和 S如下: 则由关系 R得到关系 S的操作是 ( A)自然连接 ( B)并列 ( C)选择 ( D)投影 7 数据字典 (D-D)所定义的对象都包含于 ( A)软件结构图 ( B)方框图 ( C)数据流图 (DFD图 ) ( D)程序流程图 8 软件需求规格说
3、明书的作用不包括 ( A)软件设计的依据 ( B)软件可行性研究的依据 ( C)软件验收的依据 ( D)用户与开发人员对软件要做什么的共同理解 9 下面属于黑盒测试方法的是 ( A)边界值分析 ( B)路径覆盖 ( C)语句覆盖 ( D)逻辑覆盖 10 下面不属于软件设计阶段任务的是 ( A)制定软件确认测试计划 ( B)数据库设计 ( C)软件总体 设计 ( D)算法设计 11 下列关于函数重载的叙述中,错误的是 ( A)重载函数的参数个数可以不同 ( B)重载函数的参数类型可以不同 ( C)重载函数的返回值类型必须不同 ( D)重载函数的参数个数或参数类型必须有所不同 12 下列关于类成员
4、对象构造函数调用顺序的叙述中,正确的是 ( A)与它们在初始化列表中的顺序相同 ( B)与它们在类中声明的顺序相同 ( C)与析构函数的调用顺序相同 ( D)顺序不确定 13 下列关于派生类的叙述中,错误的是 ( A)派生类至少要有一个基类 ( B)派生 类中包括了从基类继承的成员 ( C)一个派生类可以作为另一个派生类的基类 ( D)基类成员被派生类继承以后访问权限保持不变 14 下列关于运算符重载的叙述中,正确的是 ( A)通过运算符重载机制可以为 C+语言扩充新的运算符 ( B)运算符重载的作用是使已有的运算符作用于类的对象 ( C)重载运算符的操作数类型可以全部为基本类型 ( D)所有
5、运算符都可以被重载 15 下列关于模板的叙述中,错误的是 ( A)调用模板函数时,有时可以省略模板实参 ( B)函数模板的每个实例就是一个函数定义 ( C)类模 板的每个实例就是一个类定义 ( D)类模板的实例是一个类对象 16 下列关于输入输出流的叙述中,正确的是 ( A)一个文件流可以与一个数据文件相联系 ( B) cin是专门从键盘输入数据的输入流类 ( C)流运算符 using namespace std; int main() char a: cina; if(a=*) coutn; int an: ( D) const int size=10; int asize; 21 假设函数
6、 fun已经定义,其原型为 “void fun(int a, int b=7, char*p=*); ”下列函数调用中错误的是 ( A) fun(5) ( B) fun(5, 8) ( C) fun(6#) ( D) fun(0, 0, “=”) 22 已知函数 print()没有返回值,如果在类中将 之声明为常成员函数,正确的是 ( A) void print(1 const; ( B) const void print(); ( C) 1void const print(); ( D) void print(const); 23 已知基类 Employee只有一个构造函数,其定义如下: E
7、mployee:Employee(int n): id(n)Manager是 Employee的派生类,则 F列对 Manager的构造函数的定义中,正确的是 ( A) Manager: Manager(int n): id(n) ( B) Manager: Manager(int n)id=n; ( C) Manager: Manager(int n): Employee(n) ( D) Manager: Manager(int n)Employee(n); 24 已知将运算符 “+”和 “*”作为类 Complex的成员函数重载,设 c1和 c2是类Complex的对象,则表达式 cl+c
8、2*c1等价于 ( A) c1 operator*(c2 operator+(c1) ( B) c1 operator+(c2 operator*(c1) ( C) c1 operator*(c 1 operator+(c2) ( D) c2 operator+(c1operator*(c 1) 25 下列类模板的定义中语法格式错误的是 ( A) templateclass Buffer * ; ( B) templateclass Buffer * ; ( C) templateclass Buffer * ( D) templateclass Buffer * ; 26 在 C+中既可以用
9、于文件输入又可以用于文件输出的流类是 ( A) fstream ( B) ifstream ( C) ofstream ( D) iostream 27 有如下类定义: class MyClass int b: char a; double c; public: MyClass0: c(0 0), b(0), a(, ) ; 创建这个类的对象时,数据成员的初始化顺序是 ( A) a,b, c ( B) c,b, a ( C) b, a, c ( D) c, a, b 28 有如下类定义: class MyClass int x: public: MyClass0: x(0), y(0) int
10、 GetX0return x; void SetX(int xx)x=xx; int y; : 已知 obj是类 MyClass的对象,下列语句中违反类成员访问控制权限的 ( A) obj X ( B) obj y ( C) obj Getx() ( D) obj Setx(0) 29 有如下类定义: class Test char a: const char b: public: Test(char c)a=c; b=c; 第 1行 void f(char a)constthis a=a; 第 2行 void g(char b)this一 b=b; 第 3行 char h()constret
11、urn a; 第 4行 ; 编译时没有错误的行是 ( A)第 1行 ( B)第 2行 ( C)第 3行 ( D)第 4行 30 有如下程序: #include using namespace std; class A public: A()coutA; -A()coutC; ; class B: public A public: B()coutT; ; int main() B obj; return 0: 运行这个程序的输出结果是 ( A) GATC ( B) AGTC ( C) GACT ( D) AGCT 31 有如下程序: #include using namespace std; c
12、lass Base public: void fun()coutfun(); 32 有如下程序: #include using namespace std; class B public: virtual void f()coutf0; p一 g(); int main() D obj; h(&0bj); return 0: 运行这个程序的输出结果是 ( A) DD ( B) BB ( C) BD ( D) DB 33 有如下程序: #include #include using namespace std; class MyString public: char str80; MyStrin
13、g(const char*s)strcpy(str, s); MyString&operator+=(MyString a) strcat(str, a str); return*this; : ostream&operator【 1】 。 37 设栈的存储空间为 S(1: 40),初始状态为 bottom=0, top=0,现经过一系列入栈与出栈运算后, top=20,则当前栈中有 【 2】 个元素。 38 数据独立性分为逻辑独立性和物理独立性。当总体逻辑结构改变时,其局部逻辑结构可以不变,从而根据局 部逻辑结构编写的应用程序不必修改,称为 【 3】 。 39 关系数据库中能实现的专门关系运
14、算包括 【 4】 、连接和投影。 40 软件按功能通常可以分为应用软件、系统软件和支撑软件 (或工具软件 )。 Unix操作系统属于 【 5】 软件。 41 若有定义语句 “int x=10; ”,则表达式 “x【 6】 42 下列语句的作用是计算正整数 n的各位数字之和,例如: n=123, sum=1+2+3。请将下列语句补充完整。 Do Sum+=【 7】 : n=n 10; )while(n!=0) 43 有如下程序: #include using namespace std; void fun(int&x, int y) Y=y+x; x=y 4; X+: 111t maim): i
15、nt x=4 y=5: fun(x, y): cout【 8】 。 44 有如下程序 #inchMe using namespace std: class A: public: A()eout【 9】 。 45 若下列程序的输出结果是 20,请将横线处缺失部分补充完整。 #include using namespace std; class MyCIaSS public: MyClass(int x=10): value(x) old SetValue(int x)value=x; cout【 10】 通过对象指针 plr调用 SetValue函数 delete ptr: reltlrn 0:
16、 46 下列程序的输出结果是 2334,请将横线处缺失部分补充完整 #include【 12】 实现的。 48 有些运算符既可以作为成员函数重载,也可以作为非成员函数重载。若在一个重载的运算符函数的定义中成功地使用了 this指针,说明它是作为 【 13】 重载的 49 有如下程序: using namespace std; template T Add(T vl, T v2)retum vl+v2; ) int main() cout【 14】 。 50 有如下程序: using namespace std; class Point double x, y; Point(double xx=
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
2000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 试卷 2012 国家 二级 笔试 答案 解析 DOC
