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

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

1、国家二级( C+)笔试模拟试卷 76及答案与解析 1 下列叙述中错误的是 ( A)一种数据的逻辑结构可以有多种存储结构 ( B)数据的存储结构与数据处理的效率无关 ( C)数据的存储结构与数据处理的效率密切相关 ( D)数据的存储结构在计算机中所占的空间不一定是连续的 2 下列关于栈的叙述正确的是 ( A)在栈中只能插入数据 ( B)在栈中只能删除数据 ( C)栈是先进先出的线性表 ( D)栈是先进后出的线性表 3 一棵二叉树中共有 70个叶子结点与 80个度为 1的结点,则该二叉树中的总结点数 ( A) 221 ( B) 219 ( C) 231 ( D) 229 4 下列叙述中正确的是 (

2、 A)线性链表中的各元素在存储空间中的位置必须是连续的 ( B)线性链表中的表头元素一定存储在其他元素的前面 ( C)线性链表中的各元素在存储空间中位置不一定的连续的,但表头元素 定存储 ( D)线性链表中的各元素在存储空间的位置不一定是连续的,且各元素的存储顺序也是任意的 5 下面对对象概念描述错误的是 ( A)任何对象都必须有继承性 ( B)对象是属性和方法的封装体 ( C)对象间的通讯靠消息传递 ( D)操作是 对象的动态属性 6 在结构化设计方法中生成的结构图 (SC) 中,带有箭头的连线表示 ( A)模块之间的调用关系 ( B)程序的组成成份 ( C)控制程序的执行顺序 ( D)数据

3、的流向 7 下列叙述中正确的是 ( A)接口复杂的模块,其耦合程度一定低 ( B)耦合程度弱的模块,其内聚程度一定低 ( C)耦合程度弱的模块,其内聚程度一定高 ( D)上述三种说法都不对 8 在关系模型中, ( A)为了建立一个关系,首先要构造数据的逻辑关系 ( B)表示关系的二维表中各元组的每一个分量还可以分成若干数据 项 ( C)一个关系的属性名表称为关系模式 ( D)一个关系可以包括多个二维表 9 下列关系运算中,能使经运算后得到的新关系中属性个数多于原来关系中属性个数的是 ( A)选择 ( B)连接 ( C)投影 ( D)并 10 下列关于 E-R图的描述中正确的是 ( A) E-R

4、图只能表示实体之间的联系 ( B) E-R图只能表示实体和实体之间的联系 ( C) E-R图只能表示实体和属性 ( D) E-R图能表示实体、属性和实体之间的联系 11 以下选项中, ( )是合法的用户标识符。 ( A) long ( B) _2Test ( C) 3Dmax ( D) A.dat 12 下列各循环语句中,不是死循环的是 ( )。 ( A) int i=100; while(1) i=i%100+1; if(i=20) break; ( B) int i,sum=0; for(i=1; i+) sum=sum+1; ( C) int k=0; do +k; while(k=0)

5、; ( D) int s=3379; while(s+%2+3%2) s+; 13 设有以下说明语句: typedef struct int n; char ch8; PER; 则下面叙述中,正确的是 ( )。 ( A) PER是结构体变量名 ( B) PER是结构体类型名 ( C) typedef struct是结构体类型 ( D) struct是结构类型名 14 下列语句段将输出字符 *的个数为 ( )。 int i=100; while(1) i-; if(i=0) break; cout *; ( A) 98个 ( B) 99个 ( C) 100个 ( D) 101个 15 以下程序段

6、的输出结果是 ( )。 char str = “BCDE“, *ptr=str; cout*(p+4) end1; ( A)字符 E的地址 ( B) 0 ( C) 69 ( D)不确定 16 下列对字符数组进行初始化的语句中,正确的是 ( )。 ( A) char a=“Hello“; ( B) chara=H,e,1,1,0; ( C) char a5=“Hello“; ( D) char a25=“Hello“,“World“; 17 函数定义为 Fun(int &i),变量定义 n=100,则下面调用正确的是 ( )。 ( A) Fun(20); ( B) Fun(20+n); ( C)

7、 Fun(n); ( D) Fun(&n); 18 若类 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() 19 下列有关析构函数的说法中,错误的是 ( )。 ( A)一个类中析构函数有且只有一个 ( B)析构函数无任何函数类型 ( C)析构函数和构造函数一样可以有形参

8、( D)析构函数的作用是在对象被撤销时收回先前分配的内存空间 20 下面的程序段中,有 ( )处错误。 template class T1, T2 T2 func(T1 a,b) return (a b) ?(a) : (b) ; ( A) 1 ( B) 2 ( C) 3 ( D) 4 21 有以下程序: #include iostream using namespace std; int f(int x); int sum(int n) int x, s=0; for(x = 0; x =n; x+) s+=f(x); return s; int f(int x) return (x*x+1

9、); int main() int a, b; cout “Enter a integer number: “; cin a; b=sum(a) ; cout a “,“ b end1; return 0; 如果输入数字 3,其输出结果是 ( )。 ( A) 3, 12 ( B) 3, 16 ( C) 3, 18 ( D) 4, 20 22 有以下程序: #include iostream using namespace std; int main() int y=18, i=0, j, a8; do ai=y%2; i+; y=y/2; while(y =1); for(j=i-1; i =

10、0; j-) cout aj; coutshow(); ”是调用基类的成员函数 show(),输出 a的值 2。 29 【正确答案】 A 【试题解析】 本题通过将 “+”运算符重载为类 date的成员函数实现简单的对象加法。类 date中的 “+”运算符重载函数中,将传入的实参值 day,加到类 date的私有成员变量 day上,并实现变量 month和 year的相应变化,从而达到日期对象相加的目的。 30 【正确答案】 A 【试题解析】 本题考核文件的打开。 C+中,可以在定义文件流对象的同时打开文件,也可以在定义文件流对象 以后用 open()函数打开文件。可以通过构造函数或 open函

11、数的第 2个参数,确定文件的打开模式。打开模式用下列常量表示: ios_base:app 为添加数据而打开 (总是在文件尾部写 ); ios_ase:binary 作为二进制文件打开: ios_ase:in 为输入而打开: ios_ase:out 为输出而打开; ios_base:tmnc 若文件存在,截为空文件; ios_base:ate 打开时定位于文件尾。 题 中成员函数 open()的第 2个实参不符合 C+的打开模式,所以产生调用错误。 31 【正确答案】 352 【试题解析】 行优先: Loc=100+(6*(19+1)+6)*2=352。 若列优先: Loc=100+(6*(9+

12、1)*6)*2=232 32 【正确答案】 软件危机 【试题解析】 所谓软件危机是泛指在计算机软件的开发和维护过程中所遇到的一系列严重问题。由于 “软件危机 ”的存在,软件已成为计算机科学发展的 “瓶颈 ”。为了改变之一状况,提出了软件工程概念。 33 【正确答案 】 变换型 【试题解析】 典型的数据流图有两种,即变换型和事务型。 34 【正确答案】 班级号 【试题解析】 本题考查外关键词的概念。如果一个关系中的属性或属性组,它不是本关系的关键词,但是另一个关系的关键词则称之为本关系的外关键词。 35 【正确答案】 详细设计 【试题解析】 本题属于记忆题,从工程管理的角度来看,软件设计分两步来

13、完成。首先是概要设计,然后是详细设计。概要设计,即总体设计。将软件需求转化为数据结构和软件的系统结构。详细设计,即过程设计。通过对结构表示进行细化,得到 软件的详细的数据结构和算法。 36 【正确答案】 3 【试题解析】 此程序中, for循环用来统计符合条件的数的总和,在循环执行完后才输出 s的值。 s、 i的初始值分别为 0和 1。首先判断条件 “1 3”成立,执行“s+=i; ”和 “i+”后, i和 s的值分别变为 2和 1。第 2次循环时, s、 i的初始值为 2和 1,判断条件 “2 3”成立,进入循环体,执行 “s+=i; ”和 “i+”后, i和 s的值分别变为 3和 3。这是

14、最后一次循环。 37 【正确答案】 10 【试题解析】 函数 strle()的功能是求出两字符串 长度的总和。 38 【正确答案】 10 10 20 【试题解析】 本题考核函数的引用传递。 “引用 ”实际上是给一个已知变量起个别名,对引用的操作也就是对被它引用的变量的操作。函数 funA()的第 1个形参为引用形参,那么在函数内部形参 a的改变将引起实参的相应改变。同理 funB()中引用参数 V的改变也会引起相应实参的改变。 39 【正确答案】 内联函数 【试题解析】 C+规定,在类定义体内定义和实现的函数都是内联函数。在类定义体外实现的函数可以通过在函数说明和定义上分别加上 inline来

15、表示 该函数是内联函数,否则就不是内联函数。 40 【正确答案】 流 【试题解析】 本题考核文件流的概念。 C+中的流类库不仅提供了简单的键盘输入和屏幕输出,也提供了对文件的有关操作。对文件的操作是由文件流完成的。文件流类在流与文件之间建立连接。文件的打开即是在流与文件之间建立一个连接。关闭一个文件,就是取消这种关联。 41 【正确答案】 97 【试题解析】 本题考核对象数组的应用。主函数 for循环中利用数组对象的 setx()函数给各个对象的私有数据成员赋值。然后通过 fun函数返回最大值。 42 【正确答案】 81210 【试题解析】 本题考核类继承中的构造函数。当函数中定义了类 C的对

16、象。obj,那么就要调用到类 A、 B、 C的构造函数,并且分别被赋值为 8、 12和 10。所以程序最后输出为 81210。 43 【正确答案】 !file eof() 【试题解析】 文件流对象的成员函数 eof的功能是在进行输入操作时,若达到文件尾,则返回 true,否则返回 false。程序的 while循环中调用 getline()成员函数进行输入操作,循环结束的条件是操作到文件尾部。 44 【正确答案】 row arowcolum 【试题解析】 通过对题意的分析不难看出:在 select()函数中,变量 row的作用是用来标记最大元素的行下标值, colum的作用是用来记下最大元素的列下标:函数 select()通过循环求得数组的最大值的行下标、列下标并分别存放在变量 row和colum中。根据题意,应把行下标赋值给形参指针变量 n,这样就通过地址传递的方式改变了主调函数中的实参,即把最大值的行下标传回到主调函数中。然后把最大值 arowcolum作为函数返回值。

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

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

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