“程序员 2019年 下半年 上午”的版本间的差异

来自姬鸿昌的知识库
跳到导航 跳到搜索
 
(未显示同一用户的22个中间版本)
第1,290行: 第1,290行:
 
数据库是按照一定的数据模型组织、存储和应用的()的集合。
 
数据库是按照一定的数据模型组织、存储和应用的()的集合。
  
A、一个视图
+
A、命令
  
B、一个或若干个索引文件
+
B、程序
  
C、一个或若干个视图
+
C、数据  √
  
D、一个或若干个基本表
+
D、文件  
  
  
第1,312行: 第1,312行:
  
 
D、一个或若干个基本表  √
 
D、一个或若干个基本表  √
 +
 +
 +
 +
=== 第57题 ===
 +
某银行信用卡额度关系C(信用卡号,用户名,身份证号,最高消费额度,累计消费额)中,信用卡号唯一标识关系C的每一个元组。
 +
 +
一个身份证只允许办理一张信用卡。关系C有()。
 +
 +
A、1个候选键,即信用卡号
 +
 +
B、2个候选键,即信用卡号、身份证号  √
 +
 +
C、1个候选键,即身份证号
 +
 +
D、1个候选键,即信用卡号、用户名
 +
 +
 +
 +
=== 第58题 ===
 +
给出关系R(A,B,C)和S(A,B,C),R和S的函数依赖集F={A→B,B→C}。
 +
 +
若R和S进行自然连接运算,则结果集有()个属性。
 +
 +
A、3  √
 +
 +
B、4
 +
 +
C、5
 +
 +
D、6
 +
 +
关系R和S()。
 +
 +
A、不存在依赖传递
 +
 +
B、存在传递依赖A→B
 +
 +
C、存在传递依赖A→C  √
 +
 +
D、存在传递依赖B→C 
 +
 +
【解析】
 +
 +
本题考查关系数据库和关系代数运算方面的基础知识。
 +
 +
当R和S进行自然连接运算时,结果集需要去掉所有重复属性列,所以结果集有3个属性。
 +
 +
根据题干“R和S的函数依赖集F={A→B,B→C}”以及Armstrong公理系统的传递规则(传递律:若X→Y和Y→Z在R上成立,则X→Z在R上成立。)
 +
 +
可知,函数依赖“A→C”为F所蕴含。
 +
 +
 +
 +
 +
=== 第59题 ===
 +
设r是在(0,1)内均匀分布的随机数,则随机变量()在(3,5)内均匀分布。
 +
 +
A、2+3R
 +
 +
B、2+5R
 +
 +
C、3+2R  √
 +
 +
D、3+5R
 +
 +
【解析】
 +
 +
本题考查应用数学基础知识。
 +
 +
因为:0<r<1,则0<2r<2,同时+3后,则有3<2r+3<5.
 +
 +
线性的2r+3仍能保证在区间(3,5)内均匀分布。
 +
 +
 +
 +
 +
=== 第60题 ===
 +
某系统的可用性达到99.99%,这意味着其每年的停机时间不能超过()。
 +
 +
A、5.3分钟
 +
 +
B、53分钟  √
 +
 +
C、8.8小时
 +
 +
D、4天
 +
 +
【解析】
 +
 +
365*24=8760小时
 +
 +
百分之一是87.6小时
 +
 +
万分之一是0.876小时
 +
 +
60*0.876=52.56分钟
 +
 +
 +
 +
=== 第61题 ===
 +
某工厂要分配A、B、C、D、E五个工人做编号1、2、3、4、5的五项工作,每个人只能做一项工作,每项工作只能由一人做。
 +
 +
下表说明了每个工人会做哪些工作(用“√”表示)、不会做哪些工作(用“×”表示)。
 +
 +
根据此表,可知共有()种分配方案。
 +
{| class="wikitable"
 +
!工人
 +
!1
 +
!2
 +
!3
 +
!4
 +
!5
 +
|-
 +
!A
 +
|√
 +
 +
 +
|√
 +
 +
|-
 +
!B
 +
|√
 +
 +
 +
 +
|√
 +
|-
 +
!C
 +
 +
|√
 +
 +
|√
 +
|√
 +
|-
 +
!D
 +
|√
 +
 +
|√
 +
 +
|√
 +
|-
 +
!E
 +
 +
 +
|√
 +
|√
 +
|√
 +
|}
 +
A、3
 +
 +
B、4  √
 +
 +
C、5
 +
 +
D、6
 +
 +
【解析】
 +
{| class="wikitable"
 +
!
 +
! colspan="7" |开始
 +
|-
 +
!A(1,4)
 +
! colspan="2" |1
 +
! colspan="5" |4
 +
|-
 +
!B(1,5)
 +
! colspan="2" |5
 +
! colspan="3" |1
 +
! colspan="2" |5
 +
|-
 +
!C(2,4,5)
 +
!2
 +
!4
 +
! colspan="2" |2
 +
!5
 +
! colspan="2" |2
 +
|-
 +
!D(1,3,5)
 +
!3
 +
!3
 +
!3
 +
!5
 +
!3
 +
!1
 +
!3
 +
|-
 +
!E(3,4,5)
 +
!4
 +
 +
!5
 +
!3
 +
 +
!3
 +
 +
|-
 +
!成立
 +
!√
 +
!
 +
!√
 +
!√
 +
!
 +
!√
 +
!
 +
|}
 +
 +
 +
 +
=== 第62题 ===
 +
HTML中使用()标记对来标记一个超链接元素。
 +
 +
A、<a></a>  √
 +
 +
B、<nowiki><b></b></nowiki>
 +
 +
C、<nowiki><q></q></nowiki>
 +
 +
D、<nowiki><i></i></nowiki>
 +
 +
 +
 +
=== 第63题 ===
 +
ICMP协议是TCP/IP网络中的()协议,
 +
 +
A、数据链路层
 +
 +
B、网络层  √
 +
 +
C、传输层
 +
 +
D、会话层
 +
 +
其报文封装在()协议数据报中传送。
 +
 +
A、IP  √
 +
 +
B、TCP
 +
 +
C、UDP
 +
 +
D、PPP
 +
 +
【解析】
 +
 +
本题考查ICMP协议相关知识。
 +
 +
ICMP协议是控制报文协议,它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。
 +
 +
ICMP协议属于网络层协议,其报文封装在IP协议数据单元中传送。
 +
 +
 +
 +
 +
=== 第64题 ===
 +
启动IE浏览器,在URL地址栏输入<syntaxhighlight lang="console">
 +
ftp://fpt.tsinghua.edu.cn
 +
</syntaxhighlight>,进行连接时浏览器使用的协议是()。
 +
 +
A、HTTP
 +
 +
B、HTTPS
 +
 +
C、FTP  √
 +
 +
D、TFTP
 +
 +
 +
 +
=== 第65题 ===
 +
电子邮件发送多媒体文件附件时采用()协议来支持邮件传输。
 +
 +
A、MIME  √
 +
 +
B、SMTP
 +
 +
C、POP3
 +
 +
D、IMAP4
 +
 +
【解析】
 +
 +
本题考查电子邮件方面的基础知识。
 +
 +
常用的电子邮件协议有SMTP、POP3、IMAP4,它们都隶属于TCP/IP协议簇,默认状态下,分别通过TCP端口25,110和143建立连接。
 +
 +
MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展类型)是设定某种扩展名的文件用一种应用程序来打开的方式类型,当扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。
 +
 +
它是一个互联网标准,扩展了电子邮件标准,使其能够支持:非ASCⅡ字符文本;非文本格式附件(二进制、声音、图像等);由多部分组成的消息体;包含非ASCⅡ字符的头信息。
 +
 +
 +
 +
=== 第66题 ===
 +
If the stack is full and does not contain enough space to accept an entity to be pushed, the stack is then considered to be in a stack () state.
 +
 +
A、empty
 +
 +
B、overflow  √
 +
 +
C、underflow
 +
 +
D、synchronized
 +
 +
 +
 +
=== 第67题 ===
 +
Good coding ()makes reading the code easier.
 +
 +
A、test
 +
 +
B、style  √
 +
 +
C、compiler
 +
 +
D、debug
 +
 +
 +
 +
=== 第68题 ===
 +
Software ()is defined as an activity to check whether the actual results match the expected results and to ensure that the software system is defect free.
 +
 +
A、development
 +
 +
B、design
 +
 +
C、testing  √
 +
 +
D、maintenance
 +
 +
 +
 +
=== 第69题 ===
 +
A system ()is a kind of system failure in which the computer stops responding its control devices and all running programs are lost.
 +
 +
A、crash  √
 +
 +
B、unloading
 +
 +
C、uninstall
 +
 +
D、deployment
 +
 +
 +
 +
=== 第70题 ===
 +
()variable is composed of a series of members,each representing one property of the object.
 +
 +
A、An array
 +
 +
B、A boolean
 +
 +
C、A String
 +
 +
D、A struct  √

2022年10月12日 (三) 09:25的最新版本

第1题

以下关于信息的描述,错误的是()。

A、信息具有时效性和可共享性

B、信息必须依附于某种载体进行传输

C、信息可反映客观事物的运动状态和方式

D、无法从数据中抽象出信息 √


第2题

通常,不做全体调查只做抽样调查的原因不包括()。

A、全体调查成本太高

B、可能会破坏被调查的个体 √

C、样本太多难以统计

D、总量太大不可能逐一调查

【解析】

本题考查信息处理技术基础知识。

抽样调查是按照随机原则从总体中抽取一部分单位作为样本来进行观察研究,所以不会破坏被调查的个体。


第3题

在Excel中,“工作表”是由行和列组成的表格,列和行分别用()标识。

A、字母和数字 √

B、数字和字母

C、数字和数字

D、字母和字母


第4题

在Excel的A1单元格中输入公式"=MIN(SUM(5,4), AVERAGE(5,11,8))",按回车键后,A1单元格中显示的值为()。

A、4

B、5

C、8 √

D、9


第5题

()服务器的主要作用是提供文件的上传和下载服务。

A、Gopher

B、FTP √

C、Telnet

D、E-mail


第6题

虚拟存储技术使()密切配合来构成虚拟存储器。

A、寄存器和内存

B、主存和辅存 √

C、寄存器和Cache

D、硬盘和Cache

【解析】

本题考查计算机系统基础知识。

虚拟存储器(虚拟内存)是计算机系统内存管理的一种技术,能从逻辑上对内存容量加以扩充,它使得应用程序认为它拥有连续的可用的内存(一个连续完整的地址空间),

而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。


第7题

若计算机字长为32,则采用补码表示的整数范围为()。

A、[-231,231) √

B、(-231,231)

C、[-232,231)

D、[-231,232)


第8题

CPU执行指令时,先要根据程序计数器将指令从内存读取出并送入(),然后译码并执行。

A、数据寄存器

B、累加寄存器

C、地址寄存器

D、指令寄存器 √

【解析】

本题考查计算机系统基础知识。

指令寄存器是控制器中的一个暂存部件,控制器从内存中取出指令,将取出的指令送入指令寄存器,并指出下一条指令在内存中的位置,启动指令译码器对指令进行分析,

最后发出相应的控制信号和定时信息,控制和协调计算机的各个部件有条不紊地工作,以完成指令所规定的操作。


第9题

以下关于CPU与I/O设备交换数据所用控制方式的叙述中,正确的是()。

A、中断方式下,CPU与外设是串行工作的

B、中断方式下,CPU需要主动查询和等待外设

C、DMA方式下,CPU与外设可并行工作 √

D、DMA方式下,CPU需要执行程序来传送数据

【解析】

本题考查计算机系统基础知识。

当I/O接口准备好接收数据或传送数据时,就发出中断信号通知CPU。对中断信号进行确认后,CPU保存正在执行的程序的现场,转而执行提前设置好的I/O中断服务程序,完成一次数据传送的处理。

这样,CPU就不需要主动查询外设的状态,在等待数据期间可以执行其他程序,从而提高了CPU的利用率。采用中断方式管理I/O设备,CPU和外设可以并行地工作。

直接存储器存取(Direct Memory Access, DMA)方式的基本思想是:通过硬件控制实现主存与I/O设备间的直接数据传送,数据的传送过程由DMA控制器(DMAC)进行控制,不需要CPU的干预。

在DMA方式下,由CPU启动传送过程,即向设备发出“传送一块数据”的命令,在传送过程结束时,DMAC通过中断方式通知CPU进行一些后续处理工作。

DMA方式简化了CPU对数据传送的控制,提高了主机与外设并行工作的程度,实现了快速外设和主存之间成批的数据传送,使系统的效率明显提高。


第10题

衡量系统可靠性的指标是()。

A、周转时间和故障率A

B、周转时间和吞吐量

C、平均无故障时间MTBF和故障率λ √

D、平均无故障时间MTBF和吞吐量


第11题

某计算机的主存储器以字节为单位进行编址,其主存储器的容量为1TB,也就是()。

A、230B

B、210KB

C、210MB

D、210GB √

【解析】

1KB=1024B=210B

1MB=1024KB=210KB=220B

1G=1024MB=210MB=220KB=230B

1TB=1024G=210G=220MB=230KB=240B


第12题

()是音频文件的扩展名。

A、XLS

B、AVI

C、WAV √

D、GIF


第13题

声音信号的数字化过程就是在时间和幅度两个维度上的离散化过程,其中时间的离散化称为()。

A、分时 √

B、采样

C、量化

D、调频


第14题

()是构成我国保护计算机软件著作权的两个基本法律文件。

A、《中华人民共和国著作权法》和《计算机软件保护条例》

B、《中华人民共和国著作权法》和《中华人民共和国版权法》

C、《计算机软件保护条例》和《中华人民共和国软件法》

D、《中华人民共和国软件法》和《中华人民共和国著作权法》 √


第15题

软件著作权的客体不包括()。

A、源程序

B、目标程序

C、软件文档

D、软件开发思想 √


第16题

下列与电子邮件安全无关的是()。

A、用户身份认证

B、传输加密

C、存储加密

D、邮箱地址加密 √


第17题

常用作网络边界防范的是()。

A、防火墙 √

B、入侵检测

C、防毒墙

D、漏洞扫描


第18题

甲怀疑乙发给他的信息已遭人篡改,同时怀疑乙的公钥也是被人冒充的。

为了消除甲的疑虑,甲、乙需要找一个双方都信任的第三方,即()来签发数字证书。

A、注册中心RA

B、国家信息安全测评中心

C、认证中心CA √

D、国际电信联盟ITU


第19题

将二进制序列0011011表示为八进制形式,为()。

A、033 √

B、27

C、66

D、154

【解析】

0 011 011

=033


第20题

计算机启动时CPU从()读取硬件配置的重要参数。

A、SRAM

B、CMOS √

C、DRAM

D、CD-ROM

【解析】

本题考查计算机系统基础知识。

SRAM(Static Random Access Memory,静态随机存取存储器)是指这种存储器只要保持通电,里面存储的数据就可以恒常保持。

DRAM(Dynamic Random Access Memory,动态随机存取存储器)隔一段时间要刷新充电一次,否则内部的数据会消失。

CMOS(Complementary Metal Oxide Semiconductor,互补金属氧化物半导体)是指制造大规模集成电路芯片用的一种技术或用这种技术制造出来的芯片,

是计算机主板上的一块可读写的RAM芯片,用来保存BIOS设置完计算机硬件参数后的数据,这个芯片仅用来存放数据。


第21题

设X、Y、Z为逻辑变量,当且仅当X和Y同时为1时,Z为0,其他情况下Z为1,则对应的逻辑表达式为()。

A、Z=X·Y

B、Z=X+Y

C、Z=X⊕Y √

D、
软考 程序员 2019 下 上 21 1.png

【解析】

X 1 1 0 0
Y 1 0 1 0
Z 0 1 1 1
X·Y(且) 1 0 0 0
X+Y(或) 1 1 1 0
X⊕Y(异或) 0 1 1 0
软考 程序员 2019 下 上 21 1.png
0 1 1 1


第22题

以下关于海明码的叙述中,正确的是()。

A、校验位与数据信息位混淆且随机分布

B、数据信息与校验位需要满足一定的位置关系 √

C、需将所有校验位设置在所有数据信息位之后

D、校验位的长度必须与数据信息位的长度相同

【解析】

本题考查计算机系统数据校验基础知识。

海明码是利用奇偶性来检错和纠错的校验方法。

海明码的构成方法是:在数据位之间插入k个校验位,通过扩大码距来实现检错和纠错。

海明码中数据信息位与校验位需要满足一定的位置关系。


第23题

以下描述中,属于通用操作系统基本功能的是()。

A、对计算机系统中各种软、硬件资源进行管理 √

B、对信息系统的运行状态进行监控

C、对数据库中的各种数据进行汇总和检索

D、对所播放的视频文件内容进行分析


第24题

某计算机系统页面大小为4K,进程P的页面变换表如下表所示。

页号 物理块号
0 2
1 4
2 5
3 8

若P中某块数据的逻辑地址为十六进制2C18H,则该地址的页号和页内地址分别为();

A、2和518H

B、2和C18H

C、5和518H

D、5和C18H

经过地址变换后,其物理地址应为十六进制()。

A、2C18H

B、4C18H

C、5C18H √

D、8C18H

【解析】

根据题意页面大小为4K,逻辑地址为十六进制2C18H,其页号为2,页内地址为C18H;

查页表后可知物理块号为5,该地址经过变换后,其物理地址应为物理块号5C18H。


第25题

假设系统有n(n≥5)个并发进程,它们竞争互斥资源R。若采用PV操作,当有3个进程同时申请资源R,而系统只能满足其中1个进程的申请时,资源R对应的信号量S的值应为()。

A、-1

B、-2 √

C、-3

D、0

【解析】

本题考查操作系统基本概念方面的基础知识。

根据题目叙述“若采用PV操作,当有3个进程分别申请1个资源R,系统只能满足1个进程的申请”,意味着有2个进程等待资源R。

按照信号量的物理意义“S≤0时,其绝对值等于等待该资源的进程数”,故S=-2。


第26题

若系统中有4个互斥资源R,当系统中有2个进程竞争R,且每个进程都需要i个R(i≤3)时,该系统可能发生死锁的最小i值是()。

A、1

B、2

C、3 √

D、4

【解析】

本题考查操作系统基础知识。

假设每个进程都需要1个资源R,系统为1个进程各分配1个资源R,进程都能得到所需资源,故不会发生死锁。

假设每个进程都需要2个资源R,系统为2个进程各分配2个资源R,进程都能得到所需资源,故不会发生死锁。

假设每个进程都需要3个资源R,系统为2个进程各分配2个资源R,系统可用资源数为0,进程再申请1个资源R得不到满足,故发生死锁。


第27题

以下关于汇编语言的叙述中,正确的是()。

A、汇编语言源程序只能由伪指令语句构成

B、汇编语言源程序都是通过对某高级语言源程序进行编译而得到的

C、汇编语言的每条指令语句可以没有操作字段,但必须具有操作数字段

D、汇编语言的每条指令语句可以没有操作数字段,但必须具有操作码字段 √

【解析】

本题考查程序语言基础知识。

汇编器将汇编指令翻译为机器语言字节,并且在运行时由CPU加载和执行。

一条指令语句可以有四个组成部分:标号(可选),指令助记符(操作码,必需),操作数(通常是必需的),注释(可选)。


第28题

编译和解释是实现高级程序设计语言的两种基本方式,()是这两种方式的主要区别。

A、是否进行代码优化

B、是否进行语法分析

C、是否生成中间代码

D、是否生成目标代码 √

【解析】

本题考查程序语言基础知识。

解释程序是另一种语言处理程序,在词法、语法和语义分析方面与编译程序的工作原理基本相同,但是在运行用户程序时,它直接执行源程序或源程序的内部形式。

因此,解释程序不产生源程序的目标程序,这是它和编译程序的主要区别。


第29题

某个不确定有限自动机(S0为初态,S3为终态)如下图所示,()是该自动机可识别的字符串(即从初态到终态的路径中,所有边上标记的字符构成的序列)。

软考 程序员 2019 下 上 29 1.png

A、baabb √

B、bbaab

C、aabab

D、ababa

【解析】

可以从终态开始向后倒退回溯,最后一个一定是b,排除掉选项D;

倒数第二个一定是b,排除掉选项B和C,所以答案是A。


第30题

C语言规定程序中的变量必须先定义(或声明)再引用,若违反此规定,则对程序进行()时报错。

A、汇编

B、编译 √

C、链接

D、运行

【解析】

本题考查程序语言基础知识。

概括来看,将C语言源程序翻译为可执行程序的过程为:首先进行预处理,之后进行编译形成目标代码(若目标代码为汇编语言形式,则需要进一步汇编),

最后进行链接以生成可执行程序代码。如果没有对变量进行声明(定义)就使用,则在编译时会报错。

只有不存在语法错误及静态语义错误的程序才能编译为目标代码。


第31题

在C程序中,()是合法的用户定义变量名。

①_123

②form-7

③short

④form_7

A、①③

B、②③④

C、②④

D、①④

【解析】

short是关键字,所以有③一定是错的,排除掉A和B;

-号是算术运算符,所以有②一定是错的,再排除掉C;

所以答案是D。

本题考查程序语言基础知识。

C语言规定用户定义的标识符(变量名、函数名等)必须以字母或下划线开头且由字母、数字和下划线构成,

同时不能使用语言的保留字(关键字)。short是表示短整型数据的关键字,form-7中包含的“-”不符合规定。

_123和form_7是合法的用户定义标识符。

#include<stdio.h>

int main() {
	int _123 = 123;
	printf("%d", _123);
	return 0;
}

正常运行。

public class Test4 {

    public static void main(String[] args) {
        int _123=123;
        System.out.printf("%d", _123);
    }
}

正常运行。


第32题

在C程序中,设有“int a=3, b=2, c=1;”,则表达式a>b>c的值是()。

A、0 √

B、1

C、2

D、不确定

【解析】

从左到右,所以最后判断的是?>c,?是a>b的结果,不是0就是1,然后不管是0还是1,c是1:

0>1是false、0;

1>1是false、0;

所以答案是A。

本题考查程序语言基础知识。

关系运算“>”左结合,先计算“a>b”结果为1(关系成立),

然后计算“1>c”即“1>1”,结果为0(关系不成立)。


第33题

在C程序中,对于如下的两个for语句,其运行后a和b的值分别为()。

for(int a=0; a==0; a++);
for(int b=0; b=0; b++);

A、0,0

B、0,1

C、1,0 √

D、1,1

【解析】

本题考查程序语言基础知识。

对于第一个for语句,循环条件是表达式“a==0”。a的初始值为0,执行相等判断的条件“a==0”,结果为成立(循环条件为真),因此执行一次a++,将a的值递增为1;

再判断“a==0”时,结果为不成立,因此循环结束后a的值为1。

对于第二个for语句循环条件是表达式“b=0”。b的初始值为0,执行赋值表达式“b=0”,结果为0,表示循环条件为假,因此不执行b++,循环条件结束后b的值为0。


第34题

函数main()、f()的定义如下所示。调用函数f()时,第一个参数采用传值(call by value)方式,第二个参数采用传引用(call by reference)方式,main()执行后输出的值为()。

main()
int x = 2;
f(5, x);
print(x);

f(int x, int &a)
x = 2*a-1;
a = x+5;
return;

A、2

B、3

C、8 √

D、10

【解析】

本题考查程序语言基础知识。

调用函数时,传值调用时将实参的值拷贝给形参,在被调用函数中对形参的修改再与实参无关。

引用调用(或传引用)的实质是将实参的地址传给形参,在被调用函数中修改形参的实质是修改实参;

函数f()执行时,其第一个参数x得到值5,其第二个参数a是main()函数中x的引用,即在f中对a的修改就是对main中x的修改。

在函数f()中,运算“x=2*a-1”(x=2*2-1)的结果是将f的x修改为3,运算“a=x+5”即“a=3+5”将a的值修改为8,也就是将f中x的值修改为8,因此输出的值为8。


第35题

数据结构中的()常用来对函数调用和返回处理的控制进行支持。

A、栈 √

B、队列

C、有序树

D、有向图


第36题

单向循环链表如下图所示,以下关于单向循环链表的叙述中,正确的是()。

软考 程序员 2019 下 上 36 1.png

A、仅设头指针时,遍历单向循环链表的时间复杂度是O(1)

B、仅设尾指针时,遍历单向循环链表的时间复杂度是O(1)

C、仅设头指针时,在表尾插入一个新元素的时间复杂度是O(n) √

D、仅设尾指针时,在表头插入一个新元素的时间复杂度是O(n)

【解析】

本题考查数据结构基础知识。

在单链表存储结构中,不管是有头指针还是尾指针,其实现遍历(即遍访表中的所有元素)的时间复杂度都是O(n)。

在单链表任何位置插入或删除结点,首先需要找到插入位置(该算法的时间复杂度不确定),然后修改指针即可实现(该时间复杂度为O(1))。

循环链表仅设头指针时,在表尾插入一个新元素时,因为要找到表尾位置,需从头结点遍历到尾结点,因此其时间复杂度是O(n)。

循环链表仅设尾指针时,在表头插入一个新元素时,因为有尾指针且是循环链表,因此尾指针所指向结点的下一个结点就是头结点,进行在表头插入的时间复杂度是O(1)。


第37题

对关键码序列{12,15,18,23,29,34,56,71,82}进行二分查找(折半查找),若要查找关键码71,则()。

A、需依次与29、56、71进行比较

B、仅需与71进行比较

C、需依次与29、34、71进行比较

D、仅需与29进行比较

【解析】

共9个数,折半向下取整是(low+hi)/2,

下标从0开始计数就是(0+8)/2=4,是下标为4的数——29;

下标从1开始计数就是(1+9)/2=5,是第5个数,也是29。

29<71,所以再次折半,low变成5,(5+8)/2=6,

是下标从0开始计数的下标为6的数——56。

所以答案是A。


第38题

在()中,要按照确定的计算关系来找到给定关键码的存储位置。

A、顺序表

B、哈希表 √

C、单向链表

D、双向链表

【解析】

本题考查数据结构——哈希查找基础知识。

在哈希表(散列表)中,通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。

这个映射函数叫做散列函数,存放记录的数组叫做哈希表(散列表)。

哈希查找的操作步骤:

(1)用给定的哈希函数构造哈希表;

(2)根据选择的冲突处理方法解决地址冲突;

(3)在哈希表的基础上执行哈希查找。


第39题

以下关于下图所示有向图G的说法中,正确的是()。

软考 程序员 2019 下 上 38 1.png

A、G的邻接矩阵是对称矩阵

B、G的邻接矩阵是三角矩阵

C、G是强连通图 √

D、G是完全图

【解析】

G的邻接矩阵为:

顶点1 顶点2 顶点3 顶点4 顶点5
顶点1 0 0 1 0 0
顶点2 1 0 0 1 0
顶点3 0 1 0 0 1
顶点4 1 0 0 0 0
顶点5 0 0 0 1 0

本题考查数据结构——图的基础知识。

可以根据选项判断:

A、G的邻接矩阵是对称矩阵(错误,对称矩阵满足aij=aji,因此当存在i→j的有向边时,一定存在j→i的有向边,此时图示不满足)

B、G的邻接矩阵是三角矩阵(错误,三角矩阵中的非0元素一定要在矩阵对角线的一侧,而根据图示有a41=a24=1,其中a41在对角线下方,a24在对角线上方)

C、G是强连通图(正确)

D、G是完全图(错误,完全图要求任意两个顶点之间都有弧,显然G不是完全图)

强连通图的定义是:

在有向图G中,如果对于每一对顶点vi,vj∈V且vi≠vj,从顶点vi到顶点vj和从顶点vj到顶点vi都存在路径,则称图G为强连通图。


第40题

若某二叉树的先序遍历序列是ABDCE,中序遍历序列是BDACE,则该二叉树为()。

A、

软考 程序员 2019 下 上 40 1.png

B、

软考 程序员 2019 下 上 40 2.png

C、

软考 程序员 2019 下 上 40 3.png


D、 √

软考 程序员 2019 下 上 40 4.png

【解析】

先序遍历是根、左、右

中序遍历是左、根、右

A一定是这棵树的根,然后以A为线,中序遍历A左侧的在左子树,右侧在右子树;

A
B、D C、E

左子树的B、D按照先序遍历的顺序是先B后D,所以B是D的父结点,又因为中序遍历顺序是先B后D,所以D肯定是右孩子结点;

A
B C、E
D

再来看右子树C、E两个结点,先序遍历顺序是先C后E,所以C是E的父结点,又有中序遍历顺序先C后E,所以E是C的右孩子结点;

A
B C
D E

所以答案是D。


第41题

对于n个元素的关键码序列{k1,k2,...,kn},当且仅当满足关系ki≤k2i且ki≤k2i+1(i=1,2,...[n/2])时称为小根堆。

对于关键码序列{10,20,12,32,14,56,25,51,35},将()互换后该序列就成为小根堆。

A、14、12

B、14、20 √

C、12、32

D、12、25

【解析】

画出二叉树:

10
20 12
32 14 56 25
51 35


第42题

对n个关键码构成的序列采用简单选择排序法进行排序的过程是:

第一趟经过n-1次关键码之间的比较,确定出最小关键码在序列中的位置后,再将其与序列的第一个关键码进行交换,

第二趟则在其余的n-1个关键码中进行n-2次比较,确定出最小关键码的位置后,再将其与序列的第二个关键码进行交换……以此类推,直到序列的关键码从小到大有序排列。

在简单选择排序过程中,关键码之间的总比较次数为()。

A、n(n-1)/2 √

B、n2/2

C、n(n+1)/2

D、nlogn

【解析】

第一趟比n-1次;

第二趟比n-2次;

直到最后1趟比1次结束;

等差数列,首项是n-1,末项是1,项数n-1(n项,比n-1趟),

(n-1+1)(n-1)/2

n(n-1)/2


第43题

在面向对象方法中,()机制将数据和行为包装为一个单元。

A、封装 √

B、抽象

C、数据隐蔽

D、多态

一个类定义一组大体上相似的对象,有些类之间存在一般和特殊的层次关系,如()之间就是这种关系。

A、卡车和轿车

B、客机和货机

C、学生和博士 √

D、通识课和专业课


第44题

对象收到消息予以响应时,不同类型的对象收到同一消息可以进行不同的响应,从而产生不同的结果,这种现象称为()。

A、继承

B、绑定

C、聚合

D、多态 √

【解析】

本题考查面向对象基础知识。

在采用面向对象技术开发的系统中,对象之间通过发送消息进行交互,对象在收到消息时予以响应。

在继承关系的保证下,不同类型的对象收到同一消息可以进行不同的响应,产生完全不同的结果,这种现象叫做多态。

在使用多态的时候,用户可以发送一个通用的消息,实现细节由接收对象自行决定。

接收消息的对象在继承层次关系中处于较低层次,实现不同行为,有调用时,将需要执行的行为的实现和调用加以结合,即绑定,绑定不同代码也就产生对消息不同响应的结果。

聚合是对象之间整体与部分的关系。

继承是类与类之间的关系。


第45题

在UML中,()展现了运行时处理结点以及其中构件(制品)的配置,给出了体系结构的静态视图。

A、类图

B、组件图

C、包图

D、部署图 √

【解析】

本题考查统一建模语言(UML)的基本知识。

UML图,包括用例图、协作图、活动图、序列图、部署图、构件图、类图、状态图,是模型中信息的图形表达方式,可以从不同角度对系统进行可视化。

UML中的图可以归为两大类:静态视图和动态视图。

类图、组件图、包图和部署图都是展示系统静态结构的视图。

类图

展现了一组对象、接口和协作和它们之间的关系。

在面向对象系统的建模中,最常见的图就是类图。

类图给出了系统的静态设计视图,包含主动类的类图给出了系统的静态进程视图。

组件图

展现了一组构件之间的组织和依赖。

组件图专注于系统的静态实现视图。

它与类图相关,通常把构件映射为一个或多个类、接口或协作。

包图

描述类或其他UML构件如何组织成包,以及这些包之间的依赖关系。

部署图

展现了运行处理结点以及其中构件的配置。

部署图给出了体系结构的静态实施视图。

它与构件图相关,通常一个结点包含一个或多个构件。


第46题

创建型设计模式中,()模式保证一个类仅仅创建出一个实例,并提供一个能够到此实例的全局访问点。

A、原型

B、单例 √

C、生成器

D、工厂方法


第47题

右图是求数组A中最大元素的程序流程图,图中共有()条路径。

软考 程序员 2019 下 上 47 1.png

A、1

B、2

C、3 √

D、4

假设数组A有5个元素(n=5),输入序列(即数组A的元素)为()时,执行过程不能覆盖所有的语句。

A、1,2,3,4,5

B、2,1,3,4,5

C、3,1,4,2,5

D、5,4,3,2,1 √

【解析】

本题考查软件工程软件测试的基础知识。

本题的流程图中包含3条路径(循环的只计算1次),分别对应Y→N,Y→Y→N,Y→N→N,因此第一空选择C。

(没看懂啊,Y→N是什么?如果说是N,Y→Y→N,Y→N→N,我还明白)

而第二空是要满足覆盖所有的语句,前3个选项测试用例都有A[j]>A[k]的情况,此时,第二个判断为Y,会执行语句k=j,

而选项D给出的测试用例在第二个判断均为N,不会执行k=j这条语句。


第48题

以下关于数据流图基本加工的叙述中,错误的是()。

A、对数据流图中的每一个基本加工,应该对应一个加工规格说明

B、加工规格说明必须描述基本加工如何把输入数据流转换为输出数据流的加工规则

C、加工规格说明必须描述如何实现加工的细节 √

D、加工规格说明中包含的信息应是充足的、完备的和有用的

【解析】

本题考查结构化分析的基础知识。

要求考生掌握结构化分析设计的基本概念和模型。

数据流图是结构化分析的核心模型,描述数据在系统中间如何被传送或变换以及描述如何对数据流进行变换的功能(子功能),用于功能建模。

进行软件系统开发时,一般会建立分层的数据流图,不断细化对系统需求的理解。数据流图的基本要素包括外部实体、加工、数据流和数据存储。

通过对加工的分解得到分级式数据流图,知道加工变成基本加工。

此时应该对每个基本加工提供一个加工规格说明,描述基本加工如何把输入数据流转换为输出数据流的加工规则。

在说明中,信息应是充足的、完备的和有用的。

但是加工规格说明不是算法实现,因此不需要描述如何实现加工的细节。


第49题

为了避免重复,将在程序中多处出现的一组无关的语句放在一个模块中,则该模块内的内聚类型是()。

A、逻辑内聚

B、瞬时内聚

C、偶然内聚 √

D、通信内聚

【解析】

本题考查软件设计的基础知识。

模块独立是软件设计时要考虑的重要方面,指每个模块完成一个相对独立的特定子功能,并且与其他模块之间联系要简单。

衡量模块独立程序的标准有两个:耦合性和内聚性。

其中内聚是一个模块内部各个元素彼此结合的紧密程度的度量,有很多类型:

偶然内聚(巧合内聚):指一个模块内的各处理元素之间没有任何联系。

顺序内聚:指一个模块中的各个处理元素都密切相关于同一个功能且必须顺序执行,前一个功能元素的输出就是下一个功能元素的输入。


第50题

软件模块的独立性由()来衡量。

A、内聚度和耦合度 √

B、模块的规模

C、模块的复杂度

D、模块的数量


第51题

在软件开发的各个阶段,不同层次的人员参与程度并不一样。

下图大致描述了某软件开发公司高级技术人员、管理人员和初级技术人员在各个阶段参与的程度,其中曲线①、②、③分别对应()。

软考 程序员 2019 下 上 51 1.png

A、高级技术人员、管理人员、初级技术人员 √

B、管理人员、高级技术人员

C、高级技术人员、初级技术人员、管理人员

D、管理人员、初级技术人员、高级技术人员


第52题

软件从一个计算机系统或环境转移到另一个计算机系统或环境的难易程度是指软件的()。

A、兼容性

B、可移植性 √

C、可用性

D、可扩展性


第53题

在软件质量因素中,与能够得到正确或相符的结果或效果有关的软件属性为()。

A、可靠性

B、准确性 √

C、可用性

D、健壮性


第54题

高并发是互联网分布式系统架构设计中必须考虑的因素之一。影响并发性能的因素不包括()。

A、响应时间

B、吞吐量

C、并发用户数

D、注册用户总数 √

【解析】

本题考查软件工程基础知识。

注册用户总数再多,如果同时使用的并发用户数不多,也不会造成高并发。


第55题

数据库是按照一定的数据模型组织、存储和应用的()的集合。

A、命令

B、程序

C、数据 √

D、文件


第56题

关系数据库是表的集合。

对视图进行查询,本质上就是从()中查询获得的数据。

A、一个视图

B、一个或若干个索引文件

C、一个或若干个视图

D、一个或若干个基本表 √


第57题

某银行信用卡额度关系C(信用卡号,用户名,身份证号,最高消费额度,累计消费额)中,信用卡号唯一标识关系C的每一个元组。

一个身份证只允许办理一张信用卡。关系C有()。

A、1个候选键,即信用卡号

B、2个候选键,即信用卡号、身份证号 √

C、1个候选键,即身份证号

D、1个候选键,即信用卡号、用户名


第58题

给出关系R(A,B,C)和S(A,B,C),R和S的函数依赖集F={A→B,B→C}。

若R和S进行自然连接运算,则结果集有()个属性。

A、3 √

B、4

C、5

D、6

关系R和S()。

A、不存在依赖传递

B、存在传递依赖A→B

C、存在传递依赖A→C √

D、存在传递依赖B→C

【解析】

本题考查关系数据库和关系代数运算方面的基础知识。

当R和S进行自然连接运算时,结果集需要去掉所有重复属性列,所以结果集有3个属性。

根据题干“R和S的函数依赖集F={A→B,B→C}”以及Armstrong公理系统的传递规则(传递律:若X→Y和Y→Z在R上成立,则X→Z在R上成立。)

可知,函数依赖“A→C”为F所蕴含。



第59题

设r是在(0,1)内均匀分布的随机数,则随机变量()在(3,5)内均匀分布。

A、2+3R

B、2+5R

C、3+2R √

D、3+5R

【解析】

本题考查应用数学基础知识。

因为:0<r<1,则0<2r<2,同时+3后,则有3<2r+3<5.

线性的2r+3仍能保证在区间(3,5)内均匀分布。



第60题

某系统的可用性达到99.99%,这意味着其每年的停机时间不能超过()。

A、5.3分钟

B、53分钟 √

C、8.8小时

D、4天

【解析】

365*24=8760小时

百分之一是87.6小时

万分之一是0.876小时

60*0.876=52.56分钟


第61题

某工厂要分配A、B、C、D、E五个工人做编号1、2、3、4、5的五项工作,每个人只能做一项工作,每项工作只能由一人做。

下表说明了每个工人会做哪些工作(用“√”表示)、不会做哪些工作(用“×”表示)。

根据此表,可知共有()种分配方案。

工人 1 2 3 4 5
A × × ×
B × × ×
C × ×
D × ×
E × ×

A、3

B、4 √

C、5

D、6

【解析】

开始
A(1,4) 1 4
B(1,5) 5 1 5
C(2,4,5) 2 4 2 5 2
D(1,3,5) 3 3 3 5 3 1 3
E(3,4,5) 4 × 5 3 × 3 ×
成立


第62题

HTML中使用()标记对来标记一个超链接元素。

A、<a></a> √

B、<b></b>

C、<q></q>

D、<i></i>


第63题

ICMP协议是TCP/IP网络中的()协议,

A、数据链路层

B、网络层 √

C、传输层

D、会话层

其报文封装在()协议数据报中传送。

A、IP √

B、TCP

C、UDP

D、PPP

【解析】

本题考查ICMP协议相关知识。

ICMP协议是控制报文协议,它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。

ICMP协议属于网络层协议,其报文封装在IP协议数据单元中传送。



第64题

启动IE浏览器,在URL地址栏输入

ftp://fpt.tsinghua.edu.cn

,进行连接时浏览器使用的协议是()。

A、HTTP

B、HTTPS

C、FTP √

D、TFTP


第65题

电子邮件发送多媒体文件附件时采用()协议来支持邮件传输。

A、MIME √

B、SMTP

C、POP3

D、IMAP4

【解析】

本题考查电子邮件方面的基础知识。

常用的电子邮件协议有SMTP、POP3、IMAP4,它们都隶属于TCP/IP协议簇,默认状态下,分别通过TCP端口25,110和143建立连接。

MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展类型)是设定某种扩展名的文件用一种应用程序来打开的方式类型,当扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。

它是一个互联网标准,扩展了电子邮件标准,使其能够支持:非ASCⅡ字符文本;非文本格式附件(二进制、声音、图像等);由多部分组成的消息体;包含非ASCⅡ字符的头信息。


第66题

If the stack is full and does not contain enough space to accept an entity to be pushed, the stack is then considered to be in a stack () state.

A、empty

B、overflow √

C、underflow

D、synchronized


第67题

Good coding ()makes reading the code easier.

A、test

B、style √

C、compiler

D、debug


第68题

Software ()is defined as an activity to check whether the actual results match the expected results and to ensure that the software system is defect free.

A、development

B、design

C、testing √

D、maintenance


第69题

A system ()is a kind of system failure in which the computer stops responding its control devices and all running programs are lost.

A、crash √

B、unloading

C、uninstall

D、deployment


第70题

()variable is composed of a series of members,each representing one property of the object.

A、An array

B、A boolean

C、A String

D、A struct √