【计算机类职业资格】国家二级(C++)机试模拟试卷174及答案解析.doc
《【计算机类职业资格】国家二级(C++)机试模拟试卷174及答案解析.doc》由会员分享,可在线阅读,更多相关《【计算机类职业资格】国家二级(C++)机试模拟试卷174及答案解析.doc(17页珍藏版)》请在麦多课文档分享上搜索。
1、国家二级(C+)机试模拟试卷 174 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.下列叙述中错误的是( )。(分数:2.00)A.算法的时间复杂度与问题规模无关B.算法的时间复杂度与计算机系统无关C.算法的时间复杂度与空间复杂度没有必然的联系D.算法的空间复杂度与算法运行输出结果的数据量无关2.设表的长度为 20。则在最坏情况下,冒泡排序的比较次数为( )。(分数:2.00)A.190B.20C.19D.903.下列叙述中正确的是( )。(分数:2.00)A.带链栈的栈底指针是随栈的操作而动态变化的B.若带链队列的队头指针与队尾指针相同,
2、则队列为空C.若带链队列的队头指针与队尾指针相同,则队列中至少有一个元素D.带链栈的栈底指针是固定的4.设一棵树的度为 3,共有 27 个结点,其中度为 3,2,0 的结点数分别为 4,1,10。该树中度为 1 的结点数为( )。(分数:2.00)A.12B.13C.11D.不可能有这样的树5.下面描述中正确的是( )。(分数:2.00)A.好的软件设计应是高内聚低耦合B.内聚性和耦合性无关C.内聚性是指多个模块间相互连接的紧密程度D.耦合性是指一个模块内部各部分彼此结合的紧密程度6.某系统总体结构如下图所示 (分数:2.00)A.5B.7C.4D.87.下面属于应用软件的是( )。(分数:2
3、.00)A.人事管理系统B.Oracle 数据库管理系统C.C+编译系统D.ios 操作系统8.下面选项中不是关系数据库基本特征的是( )。(分数:2.00)A.不同的列应有不同的数据类型B.不同的列应有不同的列名C.与行的次序无关D.与列的次序无关9.工厂生产中所需的零件可以存放在多个仓库中,而每一仓库中可存放多种零件。则实体仓库和零件间的联系是( )。(分数:2.00)A.多对多B.一对多C.多对一D.一对一10.学生和课程的关系模式定义为 S(S#,Sn,Sd,Dc,SA)(其属性分别为学号、姓名、所在系、所在系的系主任、年龄); C(C#,Cn,P#)(其属性分别为课程号、课程名、先选
4、课); SC(S#,C#,G)(其属性分别学号、课程号和成绩)。 关系中包含对主属性传递依赖的是( )。(分数:2.00)A.S#Sd,SdDcB.S#SdC.S#Sd,(S#,C#)GD.C#P#,(S#,C#)G11.下列选项中,不属于 C+关键字的是( )。(分数:2.00)A.forB.thenC.inlineD.while12.下列选项中,错误的 C+表达式是( )。(分数:2.00)A.a+1B.b=65C.int(x)D.x+=3313.有如下程序段 int k=10; do coutb?(b?c 1:0):0; 等价的是( )。(分数:2.00)A.if(ab)&(bc) te
5、mp=1; else temp=0;B.if(ab)|(bc) temp=1; else temp=0;C.if(ab) temp=1; else if(bc) temp=1; else22.下列有关指针的操作中,正确的是( )。(分数:2.00)A.int a=10;void*ptr=&a;coutD.输出流的插入运算符y) return x; return y; int main() int a(9),b(8),c(7); coutb?(b?c 1:0):0; 等价的是( )。(分数:2.00)A.if(ab)&(bc) temp=1; else temp=0; B.if(ab)|(bc)
6、 temp=1; else temp=0;C.if(ab) temp=1; else if(bc) temp=1; else解析:解析:题意中,表达式 temp=ab?(bc?1:0):0 是条件运算表达式,首先执行 bc?1:0当 bc时,值为 1;当 bb?(x):0,其中 x 的值为 1 或 0,当 ab 时,temp 的值为x,否则 temp 的值为 0;所以当 ab 且 bc 时,temp=1,否则 temp=0,答案 A 满足,本题答案为 A。22.下列有关指针的操作中,正确的是( )。(分数:2.00)A.int a=10;void*ptr=&a;coutD.输出流的插入运算符y
7、) return x; return y; int main() int a(9),b(8),c(7); coutb,所以 fun(a,b)返回值为 a,bc,fun(b,c)返回值为 b,所以 fun(fun(a,b),fun(b,c)等价于 fun(a,b),也就等价于 a 的值,所以程序输出 9,本题答案为B。35.计算数列第 n 项的函数定义如下: int fa(int n) if(n=0)return 0: else if(n=1)return 1; else return fa(n-1)+fa(n-2); 若执行函数调用表达式 fa(3)时,返回的函数值为( )。(分数:2.00)
8、A.0B.1C.2 D.3解析:解析:fa()函数是一个递归函数,当参数 n 的值大于 1 时,函数会递归调用自身,返回值为fa(n1)+fa(n 一 2),所以当调用 fa(3)时,等价于:fa(2)+fa(1),也就等价于 fa(1)+fa(0)+fa(1),即1+0+1=2,本题答案为 c。36.有如下程序; #include using namespace std; void hey(_,int&b) int c;c=a;a=b;b=c; int main() int m=14,n=20; hey(m,n); coutmA.int*aB.int&aC.int a D.a解析:解析:题意
9、 hey()函数体中是将 a 和 b 的值进行交换,可知 a 是。hey()函数的第一个参数,main()函数中,m 初值为 14,n 初值为 20,经过 hey()函数的调用,将 m 传给参数 a,n 传给参数 b 后,输出 m 的值 14,n 的值也是 14,可知在 hey()函数中,交换 a、b 值的同时修改了实参 n,而 m 未被修改,所以形参 a 只是实参 m 的一个拷贝变量,选项 A、B 错误;另外在定义形参 a 时,需要指定数据类型,所以选项D 错误;本题答案为 C。37.有如下程序: #include using namespace std; void f(int i)cout
10、i; void f(double d)coutd*2; int main() f(30); f(3); return 0; 运行后的输出结果是( )。(分数:2.00)A.6 3 B.60 3C.3 6D.3 60解析:解析:题意两个 f()函数是重载函数,main()函数中调用 f(30),。由于参数 d=30 是实型,所以调用参数为 double 类型的函数,输出 d*2,由于 C+在输出时,默认不显示小数点后的 0,所以输出6,接下来调用 f(3),调用参数为 int 类型的函数,输出 3,所以本题答案为 A。38.有如下程序: #includeiostream using namesp
11、ace std; class Goods货物类 double unit_price;单价 int quantity;数量 public: Goods(double u=00,int q=0):unit_price(u),quantity(q) double getPrice()constreturn unit_price;返回单价 int getQuantity()constreturn quantity;返回数量 增加数量 Goods operator+(int q)constreturn Goods(unit_price,quantity+q); ; 增加数量 Goods operator
12、+(_)return g+q; 输出货物信息 ostream&operator(ostream& os,Goods g) cout“单价:“ggetPrice(),”数量:“ggetQuantity()endl; return os; ; int main() Goods g(356,100); coutgg+3325+g; return 0; 若运行后的输出结果是:单价:356,数量:100 单价:356,数量:133 单价:356,数量:125 则程序中下划线处缺失部分应该是( )。(分数:2.00)A.Goods q,Goods gB.Goods g,Goods qC.int q,Goo
13、ds g D.Goods g,int q解析:解析:程序中,语句 Goods g(356,100);定义了 Goods 类的对象 g,通过构造函数可知单价unit_price 赋值为 356,数量 quantity 赋值为 100,所以 coutg 使用重载的输出运算符39.下列关于类的静态成员的叙述中,错误的是( )。(分数:2.00)A.静态成员函数可以直接访问类中的所有成员,无需对象名 B.静态成员属于类,为该类所有对象共享C.静态数据成员必须在类外进行初始化D.即使没有定义任何对象,也可以使用该类的公有静态成员解析:解析:静态成员不属于任何一个对象,它由该类所有对象所共享,静态成员函数
14、只能够访问类中的静态数据成员,选项 A 错误,选项 B 正确;静态数据成员只能在类的定义体外进行初始化,选项 C 正确;即使没有定义任何对象,也可以通过作用域运算符使用该类的公有静态成员,使用方法是类名:静态成员名,选项 D 正确,本题答案为 A。40.有如下类定义: class MyClass int k; public: MyClass(int n):k(n) ; 则下列数组定义中,错误的是( )。(分数:2.00)A.MyClass m414=MyClass(1),MyClass(2),MyClass(3),MyClass(4);B.MyClass m4=MyClass(1),MyCla
15、ss(2),MyClass(3);C.MyClass m44=1,2,3; D.MyClass m4=1,2,3;解析:解析:MyClass 提供一个参数为整型变量的构造函数,构造对象时,使用参数初始化成员 k 的值;选项 A 定义一个包含 4 个元素的数组,数组元素的类型是 MyClass 类型,并且对该数组的 4 个元素分别显示调用构造函数完成初始化,选项 A 正确;同理,选项 B 定义数组 m4,由于初始化值个数为 3 个,所以系统默认该数组长度为 3,选项 B 正确;选项 D 定义数组 m4,使用 3 个整数初始化数组元素,此时系统调用构造函数将整数隐式转换成 MyClass 类型,并
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
5000 积分 0人已下载
下载 | 加入VIP,交流精品资源 |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 职业资格 国家 二级 模拟 试卷 174 答案 解析 DOC
