程序员考试程序员基础知识模拟题.docx
《程序员考试程序员基础知识模拟题.docx》由会员分享,可在线阅读,更多相关《程序员考试程序员基础知识模拟题.docx(37页珍藏版)》请在冰豆网上搜索。
![程序员考试程序员基础知识模拟题.docx](https://file1.bdocx.com/fileroot1/2022-11/25/e16ea2d7-9e3e-4bdb-906a-b16ff7ecd26c/e16ea2d7-9e3e-4bdb-906a-b16ff7ecd26c1.gif)
程序员考试程序员基础知识模拟题
2019年程序员考试程序员基础知识模拟题
(总分:
75.00,做题时间:
180分钟)
一、单项选择题(总题数:
75,分数:
75.00)
1.在CPU中,常用来为ALU执行算术逻辑运算提供数据并暂存运算结果的寄存器是( )。
(分数:
1.00)
A.程序计数器
B.状态寄存器
C.通用寄存器
D.累加寄存器 √
解析:
在运算器中,累加寄存器是专门存放算术或逻辑运算的一个操作数和运算结果的寄存器,能进行加、减、读出、移位、循环移位和求补等操作,是运算器的主要部分。
2.某机器字长为n,最高位是符号位,其定点整数的最大值为( )。
(分数:
1.00)
A.
2n-1
B.
2n-1-1
√
C.
2n
D.以上都不对
解析:
由于最高位是符号位,因此最大的定点整数是:
最高位0表示正数,值为20+21+22+...+2n-1-1
3.海明码利用奇偶性检错和纠错,通过在n个数据位之间插入k个检验位,扩大数据编码的码距。
若n=48,则k应为( )。
(分数:
1.00)
A.4
B.5
C.6 √
D.7
解析:
n和k满足关系:
2k-1≥n+k
题中n=48,k为6可满足上述关系式。
4.通常可以将计算机系统中执行一条指令的过程分为取指令,分析和执行指令3步。
若取指令时间为4Δt,分析时间为2Δt。
执行时间为3Δt,按顺序方式从头到尾执行完600条指令所需时间为(请作答此空)Δt;若按照执行第i条,分析第i+1条,读取第i+2条重叠的流水线方式执行指令,则从头到尾执行完600条指令所需时间为( )Δt。
(分数:
1.00)
A.2400
B.3000
C.3600
D.5400 √
解析:
按顺序方式需要执行完一条执行之后再执行下一条指令,执行1条执行所需的时间为4Δt+2Δt+3Δt=9Δt,执行600条指令所需的时间为9Δt×600=5400Δt。
若采用流水线方式,则处理过程如下图所示,执行完600条执行所需要的时间为4Δt×600+2Δt+3Δt=2405Δt。
5.通常可以将计算机系统中执行一条指令的过程分为取指令,分析和执行指令3步。
若取指令时间为4Δt,分析时间为2Δt。
执行时间为3Δt,按顺序方式从头到尾执行完600条指令所需时间为( )Δt;若按照执行第i条,分析第i+1条,读取第i+2条重叠的流水线方式执行指令,则从头到尾执行完600条指令所需时间为(请作答此空)Δt。
(分数:
1.00)
A.2400
B.2405 √
C.3000
D.3009
解析:
按顺序方式需要执行完一条执行之后再执行下一条指令,执行1条执行所需的时间为4Δt+2Δt+3Δt=9Δt,执行600条指令所需的时间为9Δt×600=5400Δt。
若采用流水线方式,则处理过程如下图所示,执行完600条执行所需要的时间为4Δt×600+2Δt+3Δt=2405Δt。
6.若用256K×8bit的存储器芯片,构成地址40000000H到400FFFFFH且按字节编址的内存区域,则需( )片芯片。
(分数:
1.00)
A.4 √
B.8
C.16
D.32
解析:
内存区域从40000000H到400FFFFH,占用的字节数为
400FFFFFH-40000000H+1=100000H
=100000000000000000000B=220=1024K
一片256K×8bit的存储器芯片的存储容量为256KB,需要的芯片数为1024divide256=4。
7.假设文件系统采用索引节点管理,且索引节点有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4B,iaddr[0]~iaddr[4]采用直接地址索引,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。
假设磁盘索引块和磁盘数据块大小均为1KB字节,文件File1的索引节点如下图所示。
若用户访问文件File1中逻辑块号为5和261的信息,则对应的物理块号分别为(请作答此空);101号物理块存放的是( )。
(分数:
1.00)
A.89和90
B.89和136
C.58和187 √
D.90和136
解析:
磁盘索引块为1KB,每个地址项大小为4B,故每个磁盘索引块可存放1024/4=256个物理块地址。
又因为文件索引节点中有8个地址项,其中5个地址项为直接地址索引,这意味着逻辑块号为0~4的为直接地址索引;2个地址项是一级间接地址索引,其中第一个地址项指出的物理块中是一张一级间接地址索引表,存放逻辑块号为5~260对应的物理块号,第二个地址项指出的物理块中是另一张一级间接地址索引表,存放逻辑块号为261~516对应的物理块号。
经上分析,从题图不难看出,逻辑块号为5的信息应该存放在58号物理块中,逻辑块号为261的信息应该存放在187号物理块中。
由题中可知,iaddr[7]采用二级间接地址索引,且iaddr[7]中存放的物理块号为101。
1个地址项是二级间接地址索引,这意味着该地址项指出的物理块中存放的是256个一级间接地址索引表,故101号物理块存放的是二级间接地址索引表。
8.假设文件系统采用索引节点管理,且索引节点有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4B,iaddr[0]~iaddr[4]采用直接地址索引,iaddr[5]和iaddr[6]采用一级间接地址索引,iaddr[7]采用二级间接地址索引。
假设磁盘索引块和磁盘数据块大小均为1KB字节,文件File1的索引节点如下图所示。
若用户访问文件File1中逻辑块号为5和261的信息,则对应的物理块号分别为( );101号物理块存放的是(请作答此空)。
(分数:
1.00)
A.File1的信息
B.直接地址索引表
C.一级地址索引表
D.二级地址索引表 √
解析:
磁盘索引块为1KB,每个地址项大小为4B,故每个磁盘索引块可存放1024/4=256个物理块地址。
又因为文件索引节点中有8个地址项,其中5个地址项为直接地址索引,这意味着逻辑块号为0~4的为直接地址索引;2个地址项是一级间接地址索引,其中第一个地址项指出的物理块中是一张一级间接地址索引表,存放逻辑块号为5~260对应的物理块号,第二个地址项指出的物理块中是另一张一级间接地址索引表,存放逻辑块号为261~516对应的物理块号。
经上分析,从题图不难看出,逻辑块号为5的信息应该存放在58号物理块中,逻辑块号为261的信息应该存放在187号物理块中。
由题中可知,iaddr[7]采用二级间接地址索引,且iaddr[7]中存放的物理块号为101。
1个地址项是二级间接地址索引,这意味着该地址项指出的物理块中存放的是256个一级间接地址索引表,故101号物理块存放的是二级间接地址索引表。
9.在数据库设计的需求分析阶段应当形成(请作答此空),这些文档可以作为( )阶段的设计依据。
(分数:
1.00)
A.程序文档、数据字典和数据流图
B.需求说明文档、程序文档和数据流图
C.需求说明文档、数据字典和数据流图 √
D.需求说明文档、数据字典和程序文档
解析:
数据库设计主要分为用户需求分析、概念结构、逻辑结构和物理结构设计四个阶段。
其中,在用户需求分析阶段中,数据库设计人员采用一定的辅助工具对应用对象的功能、性能、限制等要求所进行的科学分析,并形成需求说明文档、数据字典和数据流程图。
用户需求分析阶段形成的相关文档用以作为概念结构设计的设计依据。
10.在数据库设计的需求分析阶段应当形成( ),这些文档可以作为(请作答此空)阶段的设计依据。
(分数:
1.00)
A.逻辑结构设计
B.概念结构设计 √
C.物理结构设计
D.数据库运行和维护
解析:
数据库设计主要分为用户需求分析、概念结构、逻辑结构和物理结构设计四个阶段。
其中,在用户需求分析阶段中,数据库设计人员采用一定的辅助工具对应用对象的功能、性能、限制等要求所进行的科学分析,并形成需求说明文档、数据字典和数据流程图。
用户需求分析阶段形成的相关文档用以作为概念结构设计的设计依据。
11.甲、乙两软件公司于2012年7月12日就其财务软件产品分别申请"用友"和"用有"商标注册。
两财务软件相似,甲第一次使用时间为2009年7月,乙第一次使用时间为2009年5月。
此情形下,( )能获准注册。
(分数:
1.00)
A."用友"
B."用友"与"用有"都
C."用有" √
D.由甲、乙抽签结果确定
解析:
《中华人民共和国商标法实施条例》第十九条规定"两个或者两个以上的申请人,在同一种商品或者类似商品上,分别以相同或者近似的商标在同一天申请注册的,各申请人应当自收到商标局通知之日起30日内提交其申请注册前在先使用该商标的证据。
同日使用或者均未使用的,各申请人可以自收到商标局通知之日起30日内自行协商,并将书面协议报送商标局;不愿协商或者协商不成的,商标局通知各申请人以抽签的方式确定一个申请人,驳回其他人的注册申请。
商标局已经通知但申请人未参加抽签的,视为放弃申请,商标局应当书面通知未参加抽签的申请人。
"
12.某商场商品数据库的商品关系模式P(商品代码,商品名称,供应商,联系方式,库存量),函数依赖集F={商品代码→商品名称,(商品代码,供应商)→库存量,供应商→联系方式}。
商品关系模式P达到(请作答此空);该关系模式分解成( )后,具有无损连接的特性,并能够保持函数依赖。
(分数:
1.00)
A.1NF √
B.2NF
C.3NF
D.BCNF
解析:
根据题意,零件P关系中的(商品代码,供应商)可决定的零件P关系的所有属性,所以零件P关系的主键为(商品代码,供应商);又因为,根据题意(商品代码,供应商)→商品名称,而商品代码→商品名称,存在部分依赖关系不满足2NF,因此该关系模式属于1NF。
由于关系模式P属于1NF,1NF存在冗余度大、修改操作的不一致性、插入异常和删除异常四个问题。
所以需要对模式分解,其中选项A、选项B和选项C分解后的P1∩P2=?
,是有损连接,并且分解后的关系式丢失了函数依赖,如选项A中的P1(商品代码,联系方式)与原F关系式中的"商品代码→商品"不相符,即不保持函数依赖。
13.某商场商品数据库的商品关系模式P(商品代码,商品名称,供应商,联系方式,库存量),函数依赖集F={商品代码→商品名称,(商品代码,供应商)→库存量,供应商→联系方式}。
商品关系模式P达到( );该关系模式分解成(请作答此空)后,具有无损连接的特性,并能够保持函数依赖。
(分数:
1.00)
A.P1(商品代码,联系方式),P2(商品名称,供应商,库存量)
B.P1(商品名称,联系方式),P2(商品代码,供应商,库存量)
C.P1(商品代码,商品名称,联系方式),P2(供应商,库存量)
D.P1(商品代码,商品名称),P2(商品代码,供应商,库存量),P3(供应商,联系方式) √
解析:
根据题意,零件P关系中的(商品代码,供应商)可决定的零件P关系的所有属性,所以零件P关系的主键为(商品代码,供应商);又因为,根据题意(商品代码,供应商)→商品名称,而商品代码→商品名称,存在部分依赖关系不满足2NF,因此该关系模式属于1NF。
由于关系模式P属于1NF,1NF存在冗余度大、修改操作的不一致性、插入异常和删除异常四个问题。
所以需要对模式分解,其中选项A、选项B和选项C分解后的P1∩P2=?
,是有损连接,并且分解后的关系式丢失了函数依赖,如选项A中的P1(商品代码,联系方式)与原F关系式中的"商品代码→商品"不相符,即不保持函数依赖。
14.以下关于软件中间件的叙述,错误的是( )。
(分数:
1.00)
A.中间件通过标准接口实现与应用程序的关联,提供特定功能的服务
B.使用中间件可以提高应用软件可移植性
C.使用中间件将增加应用软件设计的复杂度 √
D.使用中间件有助于提高开发效率
解析:
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。
软件中间件的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户开发和集成应用软件。
它不仅仅要实现互连,还要实现应用之间的互操作。
15.以下关于结构化开发方法的叙述中,不正确的是( )。
(分数:
1.00)
A.将数据流映射为软件系统的模块结构
B.一般情况下,数据流类型包括变换流型和事务流型
C.不同类型的数据流有不同的映射方法
D.一个软件系统只有一种数据流类型 √
解析:
结构化分析与设计方法是一种面向数据流的开发方法,它以数据流为中心构建软件的分析模型和设计模型。
结构化设计是将结构化分析的结构(数据流图)映射成软件的体系结构(结构图)。
根据信息流的特点,可将数据流图分为变换型数据流图和事务型数据流图,其对应的映射分别称为变换分析和事务分析。
在规模较大的实际系统中,其数据流图往往是变换型和事务型的混合结构,此时可以把变换分析与事务分析应用在同一数据流图的不同部分。
16.模块A提供某个班级某门课程的成绩给模块B,模块B计算平均成绩、最高分和最低分,将计算结果返回给模块A,则模块B在软件结构图中属于( )模块。
(分数:
1.00)
A.传入
B.传出
C.变换 √
D.协调
解析:
模块结构图中的模块类型如下:
①传入模块:
从下属模块取得数据,经过某些处理,再将其结果传给上级模块。
②传出模块:
从上级模块取得数据,经过某些处理,再将其结果传给下属模块。
③变换模块:
也叫加工模块。
它从上级模块取得数据,进行特定的处理,转换成其他形式,再传回上级模块。
它加工的数据流称作变换数据流。
④协调模块:
对所有下属模块进行协调和管理的模块。
在系统的输入输出部分或数据加工部分可以找到这样的模块。
在一个好的模块结构图中,协调模块应在较高层出现。
17.( )软件成本估算模型是一种静态单变量模型,用于对整个软件系统进行估算。
(分数:
1.00)
A.Putnam
B.基本COCOMO √
C.中级COCOMO
D.详细COCOMO
解析:
COCOMO用3个不同层次的模型来反映不同程度的复杂性,它们分别为:
基本模型(BasicModel):
是一个静态单变量模型,它用一个已估算出来的源代码行数(LOC)为自变量的函数来计算软件开发工作量,与本题内容符合。
中级模型(IntermediateModel):
则在用LOC为自变量的函数计算软件开发工作量的基础上,再用涉及产品、硬件、人员、项目等方面属性的影响因素来调整工作量的估算。
详细模型(DetailedModel):
包括中级COCOMO型的所有特性。
但用上述各种影响因素调整工作量估算时,还要考虑对软件工程过程中分析、设计等各步骤的影响。
18.以下关于进度管理工具Gantt图的叙述中,不正确的是( )。
(分数:
1.00)
A.能清晰地表达每个任务的开始时间、结束时间和持续时间
B.能清晰地表达任务之间的并行关系
C.不能清晰地确定任务之间的依赖关系
D.能清晰地确定影响进度的关键任务 √
解析:
甘特图(Gantt图)内在思想简单,即以图示的方式通过活动列表和时间刻度形象地表示出任何特定项目的活动顺序与持续时间。
基本是一条线条图,横轴表示时间,纵轴表示活动(项目),线条表示在整个期间上计划和实际的活动完成情况。
它直观地表明任务计划在什么时候进行,及实际进展与计划要求的对比。
管理者由此可便利地弄清一项任务(项目)还剩下哪些工作要做,并可评估工作进度。
优点:
能清晰地描述每个任务从何时开始,到何时结束,以及各个任务之间的并行性。
缺点:
不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。
19.项目复杂性、规模和结构的不确定性属于( )风险。
(分数:
1.00)
A.项目 √
B.技术
C.经济
D.商业
解析:
项目风险是指可能导致项目损失的不确定性,美国项目管理大师马克思·怀德曼将其定义为某一事件发生给项目目标带来不利影响的可能性。
20.以下程序设计语言中,( )更适合用来进行动态网页处理。
(分数:
1.00)
A.HTML
B.LISP
C.PHP √
D.Java/C++
解析:
HTML用于处理静态网页,LISP是一种基于λ演算的函数式编程语言。
PHP是一种通用开源脚本语言。
语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。
它可以比CGI或者Perl更快速地执行动态网页。
用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。
Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网。
C++是一个接近系统底层的综合的,支持面向对象和编程的程序设计语言,适用于开发要求很高效率的程序,例如大型游戏、大型企业应用、系统应用等。
21.在引用调用方式下进行函数调用是将( )。
(分数:
1.00)
A.实参的值传递给形参
B.实参的地址传递给形参 √
C.形参的值传递给实参
D.形参的地址传递给实参
解析:
引用调用是把实参(如'inta)的地址(&a)赋给形参(指针变量,比如*b,这时b=&a,即b指向变量a),如果*b(也即a对应的内存空间)发生变化,也就是变量a的值发生了变化。
22.编译程序对高级语言源程序进行编译的过程中,要不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入( )中。
(分数:
1.00)
A.符号表 √
B.哈希表
C.动态查找表
D.栈和队列
解析:
在编译过程中,编译程序不断汇集和反复查证出现在源程序中的各种名字的属性和特征等有关信息。
这些信息通常记录在一张或几张符号表中。
符号表的每一项有两部分:
一部分是名字(标识符);一部分是名字属性(标识符的有关信息)。
编译过程中,每当扫描器(词法分析器)识别出一个名字后,编译程序就查阅符号表,看其是否在符号表中。
符号表在编译全过程的地位和作用非常重要,是进行上下文合法性检查和语义处理及代码生成的依据。
符号表总体结构的设计和实现与源语言的复杂性(包括词法结构、语法结构的复杂性)有关,还与对于编译系统在时间效率和空间效率方面的要求有关。
23.设计操作系统时不需要考虑的问题是( )。
(分数:
1.00)
A.计算机系统中硬件资源的管理
B.计算机系统中软件资源的管理
C.用户与计算机之间的接口
D.语言编译器的设计实现 √
解析:
操作系统有两个重要作用:
①通过资源管理提高计算机系统的效率,操作系统是计算机系统的资源管理者,它含有对系统软/硬件资源实施管理的一组程序。
②改善人机界面,向用户提供友好的工作环境。
明白操作系统的作用,就不难选出结果。
24.假设某计算机系统中资源R的可用数为6,系统中有3个进程竞争R,且每个进程都需要i个R,该系统可能会发生死锁的最小i值是(请作答此空)。
若信号量S的当前值为-2,则R的可用数和等待R的进程数分别为( )。
(分数:
1.00)
A.1
B.2
C.3 √
D.4
解析:
如果i=1,即每个进程都需要1个R,3个进程同时运行需要3个R,还剩3个R,不会发生死锁。
如果i=2,即每个进程都需要2个R,3个进程同时运行需要6个R,而R的可用数正好为6,不会发生死锁。
如果i=3,即每个进程都需要2个R,当3个进程分别占有2个R时,都需要再申请一个R资源才能正常运行,但此时已经没有R资源了,进程之间便出现了相互等待的状况,发生死锁。
信号量的值小于0,表示没有可用的资源,其绝对值表示阻塞队列中等待该资源的进程数。
25.假设某计算机系统中资源R的可用数为6,系统中有3个进程竞争R,且每个进程都需要i个R,该系统可能会发生死锁的最小i值是( )。
若信号量S的当前值为-2,则R的可用数和等待R的进程数分别为(请作答此空)。
(分数:
1.00)
A.0、0
B.0.1
C.1、0
D.0、2 √
解析:
如果i=1,即每个进程都需要1个R,3个进程同时运行需要3个R,还剩3个R,不会发生死锁。
如果i=2,即每个进程都需要2个R,3个进程同时运行需要6个R,而R的可用数正好为6,不会发生死锁。
如果i=3,即每个进程都需要2个R,当3个进程分别占有2个R时,都需要再申请一个R资源才能正常运行,但此时已经没有R资源了,进程之间便出现了相互等待的状况,发生死锁。
信号量的值小于0,表示没有可用的资源,其绝对值表示阻塞队列中等待该资源的进程数。
26.某计算机系统页面大小为4K,若进程的页面变换表如下所示,逻辑地址为十六进制1D16H。
该地址经过变换后,其物理地址应为十六进制( )。
页号
物理块号
1
1
2
2
3
3
4
4
(分数:
1.00)
A.1024H
B.3D16H √
C.4D16H
D.6D16H
解析:
页面大小为4K,而4K=212,因此逻辑地址的低12位对应页内地址,高位对应页号。
题目中逻辑地址为十六进制1D16H,一位十六进制数对应4位二进制数,3位十六进制数则对应12位二进制数,因此D16H为页内地址,页号为1。
查页面变换表,页号1对应的物理块号为3,将物理块号与页内地址D16H拼接起来即可得到物理地址3D16H。
27.若某文件系统的目录结构如下图所示,假设用户要访问文件fault.swf,且当前工作目录为swshare,则该文件的全文件名为(请作答此空),相对路径和绝对路径分别为( )。
(分数:
1.00)
A.fault.swf
B.flash\fault.swf
C.swshare\flash\fault.swf
D.\swshare\flash\fault.swf √
解析:
全文件名应该从根目录开始,因此为\swshare\flash\fault.swf。
相对路径是从当前路径开始的路径,fault.swf在当前工作目录swshare下的flash文件夹中,因此相对路径为flash\。
绝对路径是指从根目录开始的路径,即\swshare\flash\。
28.若某文件系统的目录结构如下图所示,假设用户要访问文件fault.swf,且当前工作目录为swshare,则该文件的全文件名为( ),相对路径和绝对路径分别为(请作答此空)。
(分数:
1.00)
A.swshare\flash\和\flash\
B.flash\和\swshare\flash\ √
C.\swshare\flash\和flash\
D.\flash\和\swshare\flash\
解析:
全文件名应该从根