国家二级(Python)机试模拟试卷76
单项选择题
1.关于计算机内带符号的定点数,下面描述中正确的是( )。(D)
A. 原码的各位取反即是反码
B. 反码的最后一位上加1后即是补码
C. 整数的偏移码与补码相同
D. 补码的符号位取反即是偏移码
解析:带符号的定点数中,正数的原码、反码、补码均相同;负数的反码是对该数的原码除符号位外各位取反,补码是在该数的反码的最后(即最右边)一位上加1;不管是正数还是负数,其补码的符号位取反即是偏移码。本题答案为D选项。
2.常用的连续存储管理技术有固定分区存储管理和( )。(A)
A. 可变分区存储管理
B. 分页式存储管理
C. 分段式存储管理
D. 段页式存储管理
解析:连续存储管理也称为界地址存储管理,基本特点是内存空间被划分成一个个分区,一个作业占一个分区,即系统和用户作业都以分区为单位享用内存。在分区分配方式中,分区的大小可以是固定的(称为固定分区),也可以是可变的(称为可变分区或动态分区)。本题答案为A选项。
3.下列叙述中错误的是( )。(B)
A. 若二叉树没有叶子结点,则为空二叉树
B. 循环队列空的条件是队头指针与队尾指针相同
C. 带链栈的栈底指针是随栈的操作而动态变化的
D. 若带链队列中只有一个元素,则队头指针与队尾指针必定相同
解析:在循环队列中,队头指针与队尾指针相同,即front=rear,队列可能为空也可能为满。本题答案为B选项。
4.设循环队列的存储空间为Q(1:50),初始状态为front=rear=50。经过一系列正常的操作后,front-1=rear,为了在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为( )。(C)
A. 0
B. 1
C. 48
D. 49
解析:在循环队列运转起来后,如果front<rear,则队列中的元素个数为rear-front个;如果front>rear,则队列中的元素个数为rear-front+m。本题中,front>rear,则元素个数为rear-front+50=front-1-front+50=49。在长度为n的线性表中寻找值最大的元素,最坏情况下需要比较的次数为n-1。因此,在该队列中寻找值最大的元素,在最坏情况下需要的比较次数为49-1=48。本题答案为C选项。
5.某二叉树有49个度为2的结点,4个度为1的结点,则( )。(A)
A. 该二叉树共有103个结点
B. 该二叉树的结点数不确定
C. 该二叉树共有101个结点
D. 不可能有这样的二叉树
解析:对任何一棵二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个。本题中,度为2的结点个数为49,则度为0的结点个数为49+1=50。二叉树的总结点数等于度为2的结点数+度为1的结点数+度为0的结点数,则该二叉树的总结点数为49+4+50=103。本题答案为A选项。
6.下面属于良好程序设计风格的是( )。(B)
A. 程序效率第一
B. 源程序文档化
C. 随意使用无条件转移语句
D. 程序输入输出的随意性
解析:“清晰第一,效率第二”的论点已成为当今主导的程序设计风格。良好的程序设计风格可以使程序结构清晰合理,程序代码便于维护,要应注意和考虑的因素有:
①源程序要文档化;
②注意数据说明的风格,以便使程序中的数据说明更易于理解和维护;
③语句构造应简单直接,不应该为提高效率而把语句复杂化,避免不必要的转移;
④对所有的输入数据都要检验数据的合法性、合理性。
本题答案为B选项。
7.下面可以作为软件需求分析工具的是( )。(D)
A. 程序流程图
B. PAD图
C. N-S图
D. 数据流程图(DFD图)
解析:需求分析方法可以分为结构化分析方法和面向对象分析方法两大类。结构化分析方法的常用工具:数据流图(DFD图)、数据字典(DD)、判定表、判定树。本题答案为D选项。
8.数据库应用系统中的核心问题是( )。(C)
A. 数据库维护
B. 数据库系统设计
C. 数据库设计
D. 数据库管理员培训
解析:数据库应用系统包括数据库、数据库管理系统、人员(数据库管理员和用户)、硬件平台、软件平台、应用软件、应用界面7个部分。数据库设计是数据应用的核心。本题答案为C选项。
9.在数据库系统中,数据模型包括概念模型、逻辑模型和( )。(A)
A. 物理模型
B. 空间模型
C. 时间模型
D. 对象模型
解析:数据模型按照不同的应用层次分为3种类型:概念数据模型(概念模型)、逻辑数据模型(逻辑模型)、物理数据模型(物理模型)。本题答案为A选项。
10.有两个关系R和S如下图所示,则由关系R得到关系S的运算是( )。
(B)
A. 投影
B. 选择
C. 自然连接
D. 并
解析:从关系中找出满足给定条件的元组的操作称为选择。本题中,关系S为关系R中的部分元组,故为选择运算。本题答案为B选项。
11.关于Python代码编写原则的描述,错误的选项是( )。(D)
A. 保持代码的可读性、减少嵌套
B. 保持代码的简洁
C. 变量的定义和引用范围要清晰
D. 尽量使用函数和类封装代码
解析:Python代码为保持代码可读性应减少嵌套,变量的定义和应用都应尽可能的清晰,尽量少用函数和类将代码封装,所以本题选择D选项。
12.关于Python赋值语句的描述,错误的选项是( )。(A)
A. 赋值语句要求赋值两侧的数据类型一致
B. 使用符号“=”表达赋值关系
C. a,b=b,a可以交换a和b的值
D. 对于a=100语句,无论变量a是什么类型,该赋值语句运行一定正确
解析:在Python语言中,赋值不需要两侧数据类型一致,在赋值操作之后,左侧变量将会自动变成右侧对应的数据类型,所以A选项错误,选项B、C、D均正确。本题选择A选项。
13.函数名称定义错误的选项是( )。(C)
A. turtle()
B. max()
C. fun*1()
D. _func()
解析:在Python中,函数名称要符合变量名的命名规则:以字母或下划线开头,后面跟字母、下划线和数字;不能以数字开头。C选项含有特殊字符,所以本题选择C选项。
14.将下列表达数作为eval()函数的参数,执行结果错误的选项是( )。(B)
A. \\
B. 1+2
C. \\
D. \\
解析:eval()函数的参数必须是字符串类型,观察四个选项只有B选项不是字符串类型,所以选择B选项。
15.关于类型转换的描述,错误的选项是( )。
本文档预览:3600字符,共16962字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载