[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc

上传人:wealthynice100 文档编号:502748 上传时间:2018-11-29 格式:DOC 页数:14 大小:47KB
下载 相关 举报
[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc_第1页
第1页 / 共14页
[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc_第2页
第2页 / 共14页
[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc_第3页
第3页 / 共14页
[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc_第4页
第4页 / 共14页
[计算机类试卷]国家二级(C++)笔试模拟试卷43及答案与解析.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、国家二级( C+)笔试模拟试卷 43及答案与解析 1 下列叙述中正确的是 _ 。 ( A)程序设计就是编制程序 ( B)程序的测试必须由程序员自己去完成 ( C)程序经调试改错后还应进行再测试 ( D)程序经调试改错后不必进行再测试 2 下列数据结构中,能用二分法进行查找的是 _ 。 ( A)顺序存储的有序线性表 ( B)线性链表 ( C)二叉链表 ( D)有序线性链表 3 下列关于栈的描述正确的是 _ 。 ( A)在栈中只能插入元素而不能删除元素 ( B)在栈中只能删除元 素而不能插入元素 ( C)栈是特殊的线性表,只能在一端插入或删除元素 ( D)栈是特殊的线性表,只能在一端插入元素,而在

2、另一端删除元素 4 下列叙述中正确的是 _ 。 ( A)一个逻辑数据结构只能有一种存储结构 ( B)数据的逻辑结构属于线性结构,存储结构属于非线性结构 ( C)一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 ( D)一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率 5 下列描述中正确的是 _ 。 ( A)软件工程只是解决软 件项目的管理问题 ( B)软件工程主要解决软件产品的生产率问题 ( C)软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 ( D)软件工程只是解决软件开发中的技术问题 6 在软件设计中,不属于过程设计工具的是 _ 。 (

3、 A) PDL(过程设计语言 ) ( B) PAD图 ( C) N-S图 ( D) DFD图 7 下列叙述中正确的是 _ 。 ( A)软件交付使用后还需要进行维护 ( B)软件一旦交付使用就不需要再进行维护 ( C)软件交付使用后其生命周期就结束 ( D)软件维护是指 修复程序中被破坏的指令 8 数据库设计的根本目标是要解决 _ 。 ( A)数据共享问题 ( B)数据安全问题 ( C)大量数据存储问题 ( D)简化数据维护 9 设有如下关系表: RST _ _ _ A B C A B C A B C 1 1 2 3 1 3 1 1 2 2 2 3 2 2 3 3 1 3 则下列操作中正确的是

4、_ 。 ( A) T=RS ( B) T=R S ( C) T=RS ( D) T=R/S 10 数据库系统的核心是 _ 。 ( A)数据模型 ( B)数据库管理系统 ( C)数据库 ( D)数据库管理员 11 要定义数组 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,8; ( D) int A7=3, 9, 4, 8; 12 在 C+中,实现封装性需借助于 _ 。 ( A)枚举 ( B)

5、类 ( C)数组 ( D)函数 13 下列关于虚函数的描述中,正确的是 _ 。 ( A)虚函数是一个 static 类型的成员函数 ( B)虚函数是一个非成员函数 ( C)基类中采用 virtual 说明一个虚函数后,派生类中定义相同原型的函数时可不必加 virtual 说明 ( D)派生类中的虚函数与基类中相同原型的虚函数具有不同的参数个数或类型 14 下列关于运算符重载的描述中,正确的是 _ 。 ( A)运算符重载可以改变操作数的个数 ( B)运算符重载可以改变运算符的 优先级 ( C)运算符重载可以改变运算符的结合性 ( D)运算符重载可以使运算符实现特殊功能 15 有如下函数模板声明:

6、 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) 16 若语句 cout setfill( ) setw (5) 3141512 setw (5) ”OK!”;是程序中第一个输出语句,则输出结果是 _ 。 ( A) 3141512 OK! ( B) 31415120K! ( C) 314150K! ( D) 31415 OK

7、! 17 有如下语句序列: int k=0; do k+=5; cout ; while (k 19); while(k- 0)cout *;执行上面的语句序列输出字符和 *的个数分别是 _ 。 ( A) 4和 20 ( B) 5和 20 ( C) 4和 21 ( D) 5和 21 18 针对数组定义 int data10;,下列表述中错误的是 _ 。 ( A)用 *data 可访问到数组的首元素 ( B)用 data9可访问到数组的末元素 ( C)用 data10访问数组元素会超出数组边界 ( D) data共有 10 个元素,其首元素是 data1 19 已知 n是一个 int 型变量,下

8、列语句中错误的是 _ 。 ( A) long *p=new longn; ( B) long pn; ( C) long *p=new long (n); ( D) long p10 20 下列函数中对调用它的函数没有起到任何作用的是 _ 。 ( A) void fl(double void setData(double d) data=d; static int count; private: double data; ; _count=0;/表态数据成员的定义 ( A) int ( B) static int ( C) int Fred: ( D) static int Fred: 22

9、有如下程序 : #include iostream using namespace std; class Base protected: int i; public: int j; ; class Derived:public Base int m; public: int n; ; int main() Derived d; d.i=0;/1d.j=0;/2d.m=0;/3d.n=0;/4return 0; 其中主函数中有两个赋值语句有错,这两个错误的赋值语句是 _ 。 ( A) 1和 2 ( B) 1和 3 ( C) 2和 3 ( D) 2和 4) 23 在表达式 x-y中, “-”是作为

10、非成员函数重载的运算符。若使用显式的函数调用代替直接使用运算符 “-”,这个表达式还可表示为 _ 。 ( A) x opemtor-(y) ( B) opemtor-(y, x) ( C) y operator-(x) ( D) operator-(x, y) 24 下面的函数模板定义中错误的是 _ 。 ( A) template class Q QF (Q x)return Q +x; ( B) template class Q QF (Q x)returnx/x; ( C) template class T T F(T x) return x*x; ( D) template class

11、T bool F (T x) return x 1; 25 已知 outfile 是一个输出流对象,要想将 outfile 的文件指针定位到当前位置之前 321 字节处,正确的函数调用语句是 _ 。 ( A) outfile.seekp (321, ios_ base: cur); ( B) outfile.seekp (321,ios_ base: beg); ( C) outfile.seekp (-321,ios_ base: beg); ( D) outfile.seekp (-321,ios_ base: cur); 26 有如下的程序; #include ctring #inclu

12、de iostream using namespace std; class MyString public: MyString(const char *s); MyString() deletedata; protected: unsigned len; char *data; ; MyString: MyString (const char *s) len=strlen(s); data=new charlen+1; strcpy(data,s); int main() MyString a(“C+ Programing“); MyString b(a); return 0; 在运行上面的

13、程序时出错,出错的原因是 _ 。 ( A)构造函数的实参不允许是本类的对象 ( B)没有定义实现深 层复制 (深拷贝 )的拷贝构造函数 ( C)构造对象 a时实参与形参类型不符 ( D)系统不能生成缺省的拷贝构造函数 27 有如下程序: #include iostream using namespace std; class Demo public: Demo () cout “default constructorn“; Demo (const Demo ; Demo userCode(Demo b) Demo c(b);return c; int main() Demo a,d; cout

14、 “calling userCode()n“; d=aserCode(a); return 0; 执行上面程序的过程中,构造函数 Demo()和 Demo(const Demo class Base public: Base() cout “BB“;f(); void f() cout “Bf“; ; class Derived:public Base public: Derived() cout “DD“; void f() cout“Df“; ; int main() Derived d; return 0;执行上面的程序将输出 _ 。 ( A) BBBfDD ( B) BBDfDDDf

15、( C) DD ( D) DDBBBf 30 下列说法中错误的是 _ 。 ( A)公有继承时基类中的 public 成员在派生类中仍 是 public成员 ( B)私有继承时基类中的 protected 成员在派生类中仍是 protected 成员 ( C)私有继承时基类中的 public 成员在派生类中是 private成员 ( D)保护继承时基类中的 public成员在派生类中是 protected成员 31 下面是关于派生类声明的开始部分,其中正确的是 _ 。 ( A) class virtual B: public A ( B) virtual class B: public A (

16、C) class B: public A virtual ( D) class B: virtual public A 32 在重载一个运算符为成员函数时,其参数表中没有任何参数,这说明该运算符是 _ 。 ( A)后缀一元运算符 ( B)前缀一元运算符 ( C)元操作数的运算符 ( D)二元运算符 33 关于关键字 class 和 typename,下列表述正确的是 _ 。 ( A)程序中所有的 typename都可以替换为 class ( B)程序中所有的 class都可以替换为 typename ( C) A)和 B)都正确 ( D) A)和 B)都不正确 34 有如下程序: #inclu

17、de iostream #include iomanip using namespace std; class CSum int 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 using namespace std; cla

18、ss Stack public: Stack(unsigned n= 10):size(n) rep_=ew intsize; top=0; Stack(Stack for(int i=0;i size;i+) rep_i=s.rep_i; top=s.top; Stack() deleterep_; void push(int a) rep_top=a; top+; int pop() -top;return rep_top; bool isEmpty() const return top=0; private: int *rep_; unsigned size,top; ; int mai

19、n() Stack s1; for(int i= 1;i 5 ;i+) s1. push(i); Stack s2(s1); for(i= 1 ;i3;i+) cout s2.pop() ,; s2.push(6); si.push(7); while(!s2.isEmpty() cout s2.pop() ,; return 0; 执行上面程序的输出是 _ 。 ( A) 4,3,2,1, ( B) 4,3,6,7,2,1, ( C) 4,3,6,2,1, ( D) 1, 2, 3, 4, 36 数据模型按不同应用层次分为 3种类型,它们是概念数据模型,【 】和物理数据模型。 37 面向对象的

20、模型中,最基本的概念是对象和【 】。 38 问题处理方案的正确而完整的描述称为【 】。 39 某二叉树中度为 2的节点有 18个,则该二叉树中有【 】个叶子节点。 40 诊断和改正程序中错误的工作通常称为【 】。 41 在 C+的面向对象程序设计框架中,【 】是程序的基本组成单元。 42 在 C+语言中 ,唯一的一个三目运算符是【 】。 43 有一种只在循环语句或 switch语句中使用的流程控制语句,表示该语句的关键字是【 】。 44 下列程序的输出结果是【 】。 #include iostream using namespace std; int main() int i=3; int r

21、=5; cout i endl; return 0; 45 函数 f()的功能是将形参 x的值转换为 二进制数,所得二进制数的每一位数放在一维数组 y中返回。二进制的最低位放在下标为 0的元素中,请将程序补充完整。 void f(int x, int y) int m=0, n; do n=x 【 】; ym+ =n; x/=2; while(x); 46 在 C+中,类的成员有 3种访问权限,它们分别是公有、【 】和私有。 47 在 C+中,设置虚基类的目的是【 】。 48 以下程序执行后输出的结果是【 】。 #include iostream #include fstream using

22、namespace std; int main() ofstream ofile(“D:temp.txt“); if(!ofile) cout “temp.txt cannot open“ endl; return 0; ofile “This is a book“ “ “ 54321 endl; ofile.close(); ifstream ifile(“D:temp.txt“); if(!ifile) cout “temp.txt cannot open“ endl; return 0; charstr40; ifile str; ifile.close(); cout Str endl; return 1; 49 下列程序在构造函数和析构函数中申请和释放类的私有成员,请完成该程序。 class Myclas int *x; public: MyClas(int n); MyClas(); ; MyClas: MyClas(intn) 【 】; MyClas: MyClas() 【 】; 国家二级( C+)笔试模拟试卷 43答案与解析

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1