2023年上半年 软件设计师答案解析

news2024/9/30 15:25:02

 前言:2023年上半年软考已经落幕了,学长整理了一下软件设计师的题目以及个人理解的答案(仅供参考)希望能够帮助参加软考的各个小伙伴能够清晰的估分,希望大家都能通过考试~

目录

                   2023年上半年 软件设计师 上午试卷

                   2023年上半年 软件设计师 下午试卷


                               全国计算机技术与软件专业技术资格(水平)考试

                   2023年上半年 软件设计师 上午试卷

(考试时间9:00~11:30共150分钟)

请按下述要求正确填写答题卡

1.在答题卡的指定位置上正确填写你的姓名和准考证号,并粘贴考生条形码。

2.本试卷的试题中共有75个空格,需要全部解答,每个空格1分,满分75分。

3.每个空格对应一个序号,有A、B、C、D四个选项,请选择一个最恰当的选项作为解答,在答题卡相应序号下填涂该选项。

4.解答前务必阅读例题和答题卡上的例题填涂样式及填涂注意事项。解答时用正规2B铅笔正确填涂选项,如需修改,请用橡皮擦干净,否则会导致不能正确评分。

(例题)

2023年上半年全国计算机技术与软件专业技术资格(水平)考试日期是(88)(89)日。

(88)A. 3 B. 4 C. 5 D. 6

(89)A. 25 B. 26 C. 27 D. 28

因为考试日期是“5月27日”,故(88)选C,(89)选C,应在答题卡序号88下对C填涂,在序号89下对C填涂(参看答题卡)

计算机中,系统总线用于 (1) 连接。

(1)  A. 接口和外设 B. 运算器、控制器和寄存器

C. CPU、主存及外设部件 D. DMA控制器和中断控制器

在由高速缓存、主存和硬盘构成的三级存储体系中,CPU执行指令时需要读取数据,那么DMA控制器和CPU发出的数据地址是 (2) 

(2)  A. 高速缓存地址 B. 主存物理地址

C. 硬盘的扇区地址 D. 虚拟地址

设信息位是8位,用海明码来发现并纠正1位出错的情况,则校验位的位数至少为 (3) 

(3)  A. 1 B. 2 C. 4 D. 8

中断向量提供的是 (4) 

(4)  A. 中断源的设备地址 B. 中断服务程序的入口地址

C. 传递数据的起始地址 D. 主程序的断点地址

计算机系统中,定点数常采用补码表示,以下关于补码表示的叙述中,错误的是 (5) 

(5)  A. 补码零的表示是唯一的 B. 可以将减法运算转化为加法运算

C. 符号位可以与数值位一起参加运算 D. 与真值的对应关系简单且直观

设指令流水线将一条指令的执行分为取指、分析、执行三段,已知取指时间是2ns,分析时间是2ns,执行时间是1ns,则执行完1000条指令所需的时间为 (6) 

(6) A. 1004ns B. 1998ns C. 2003ns D. 2008ns

在OSI参考模型中,负责对应用层消息进行压缩、加密功能的层次为 (7) 

(7) A. 传输层 B. 会话层 C. 表示层 D. 应用层

在PKI体系中,由SSL / TSL实现HTTPS应用。浏览器和服务器之间用于加密HTTP消息的方式是 (8) ,如果服务器证书被撤销那么所产生的后果是 (9) 

(8)  A. 对方公钥 + 公钥加密 B. 本方公钥 + 公钥加密

C. 会话密钥 + 公钥加密 D. 会话密钥 + 对称加密

(9)  A. 服务器不能执行加解密 B. 服务器不能执行签名

C. 客户端无法再信任服务器 D. 客户端无法发送加密信息给服务器

以下关于入侵防御系统功能的描述中,不正确的是 (10) 

(10) A. 监测并分析用户和系统的网络活动

B. 匹配特征库识别已知的网络攻击行为

C. 联动入侵检测系统使其阻断网络攻击行为

D. 检测僵尸网络,木马控制等僵尸主机行为

Web应用防火墙无法有效保护 (11) 

(11) A. 登录口令暴力破解 B. 恶意注册

C. 抢票机器人 D. 流氓软件

著作权中 (12) ,的保护期不受限制。

(12) A. 发表权 B. 发行权 C. 展览权 D署名权

国际上为保护计算机软件知识产权不受侵犯所采用的主要方式是实施 (13) 

(13) A. 合同法 B. 物权法 C. 版权法 D. 刑法

以下关于计算机软件著作权的叙述中,不正确的是 (14) 

(14) A. 软件著作权人可以许可他人行使其软件著作权,并有权获得报酬

B. 软件著作权人可以全部或者部分转让其软件著作权,并有权获得报酬

C. 软件著作权属于自然人的,该自然人死亡后,在软件著作权的保护期内,继承人

能继承软件著作权的所有权利

D. 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软

件等使用软件的,可以不经软件著作权人许可,不向其支付报酬

以下关于数据流图基本加工的叙述中,不正确的是 (15) 

(15) A. 对每一个基本加工,必须有一个加工规格说明

B. 加工规格说明必须描述把输入数据流变换为输出数据流的加工规则

C. 加工规格说明需要给出实现加工的细节

D. 决策树、决策表可以用来表示加工规格说明

以下关于好的软件设计原则的叙述中,不正确的是 (16) 

(16) A. 模块化 B. 提高模块独立性

C. 集中化 D. 提高抽象层次

下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则里程碑 (17) 在关键路径上,关键路径长度为 (18) 

(17) A. B B. E C. G D. I

(18) A. 15 B. 17 C. 19 D. 23

由8位成员组成的开发团队中,一共有 (19) 条沟通路径。

(19) A. 64 B. 56 C. 32 D28

对布尔表达式“a or ((b < c) and d)”求值时,当 (20) 时可进行短路计算。

(20) A. a为true B. b为true C. c为true D. d为true

设有正规式s = (0 | 10)*,则其所描述正规集中字符体的特点是 (21) 

(21) A. 长度必须是偶数 B. 长度必须是奇数

C. 0不能连续出现 D. 1不能连续出现

设函数foo和hoo的定义如下图所示,在函数foo中调用函数hoo,hoo的第一个参数采用传引用方式(call by reerence),第二个参数传值方式(call by value),那么函数foo中的print(a, b)将输出 (22) 

(22) A. 8, 5 B. 39, 5 C. 8, 40 D. 39, 40

某文件管理系统采用位示图(bitmap)来记录磁盘的使用情况,若计算机系统的字长为64位,磁盘容量为512GB,物理块的大小为4MB,那么位示图的大小为 (23) 个字。

(23) A. 1024 B. 2048 C. 4096 D. 9600

磁盘调度分为移臂调度和旋转调度两类,在移臂调度的算法中, (24) 算法可能会随时改变移动臂的运行方向。

(24) A. 单向扫描和先来先服务 B. 电梯调度和最短寻道时间优先

C. 电梯调度和最短寻道时间优先 D. 先来先服务和最短寻道时间优先

在支持多线程的操作系统中,假设进程P创建了T1、T2、T3线程,那么 (25) 

(25) A. 该进程的代码段不能被T1、T2、T3共享

B. 该进程的全局变量只能被T1共享

C. 该进程中T1、T2、T3的栈指针不能被共享

D. 该进程中T1的栈指针可以被T2、T3共享

进程P1、P2、P3、P4、P5和P6的前趋图如下所示。

若用PV操作控制进程P1、P2、P3、P4、P5和P6并发执行的过程,需要设置信号量S1、S2、S3、S4、S5、S6、S7和S8,且信号量S1~S8的初值都等于零。下面P1~P6的进程执行过程中,空①和空②处应分别为 26 ,空③和空④应分别为 27 ,空⑤和空⑥应分别为 28 。

(26) A. P(S1)P(S2)和V(S3)V(S4) B. P(S1)P(S2)和V(S1)V(S2)

C. V(S3)V(S4)和P(S1)P(S2) D. V(S3)V(S4)和P(S2)P(S3

(27) A. V(S5)和P(S4)P(S5 B. V(S3)和P(S4)V(S5)

C. P(S5)和V(S4)V(S5) D. P(S3)和P(S4)P(S5)

(28) A. V(S6)和V(S8) B. P(S6)和P(S7)

C. P(S6)和V(S8 D. P(S8)和P(S8)

以下关于增量模型优点的叙述中,不正确的是 (29) 

(29) A. 能够在较短的时间提交一个可用的产品系统

B. 可以尽早让用户熟悉系统

C. 优先级高的功能首先交付,这些功能将接受更多的测试

D. 系统的设计更加容易

以下敏捷开发方法中, (30) 使用迭代的方法,把一段短的时间(如30天)的迭代称为一个冲刺,并按照需求优先级来实现产品。

(30) A. 极限编程(XP) B. 水晶法(Crystal)

C. 并列争求法(Scrum) D. 自适应软件开发(ASD)

若模块A通过控制参数来传递信息给模块B,从而确定执行模块B中的那部分语句。则这两个模块的耦合类型是 (31) 耦合。

(31) A. 数据 B. 标记 C. 控制 D. 公共

在设计中实现可移植性设计的规则不包括 (32) 

(32) A. 将设备相关程序和设备无关程序分开设计

B. 可使用特定环境的专用功能

C. 采用平台无关的程序设计语言

D. 不使用依赖于某一平台的类库

以下关于管道—过滤器软件体系结构风格优点的叙述中,不正确的是 (33) 

(33) A. 构件具有良好的高内聚、低耦合的特点

B. 支持软件复用

C. 支持并行执行

D. 适合交互处理应用

以下流程图中,至少需要 (34) 个测试用例才能覆盖所有路径。采用McCabe方法计算程序复杂度为 (35) 

(34) A. 3 B. 4 C. 5 D. 6

(35) A. 2 B. 3 C. 4 D. 5

在软件系统交付给用户使用后,为了使用户界面更友好,对系统的图形输出进行改进,该行为属于 (36) 耦维护。

(36) A. 改正性 B. 适应性 C. 改善性 D. 预防性

采用面向对象方法开发学生成绩管理系统,学生的姓名、性别、出生日期、期末考试成绩、查看成绩操作均被 (37) 在学生对象中。系统中定义不同类,不同类的对象之间通过 (38) 进行通信。

(37) A. 封装 B. 继承 C. 多态 D. 信息

(38) A. 继承 B. 多态 C. 消息 D. 重载

对采用面向对象方法开发的系统进行测试时,通常从不同层次进行测试。测试类中定义的每个方法属于 (39) 层。

(39) A. 算法 B. 类 C. 模板 D. 系统

在面向对象系统设计中,如果重用了一个包中的某个类,那么就要重用该包中的所有类,这属于 (40) 原则。

(40) A. 共同封闭 B. 共同重用 C. 开放—封闭 D. 接口分离

以下关于UML序列图的描述是 (41) ,下图所示UML图中消息可能执行的顺序是 (42) 

(41) A. 系统在它的周边环境的语境中所提供的外部可见服务

B. 某一时刻一组对象以及它们之间的关系

C. 系统内从一个活动到另一个活动的流程

D. 以时间顺序组织的对象之间的交互活动

(42) A. a→b→c→a→b B. c

C. a→b→a→b→c D. a→b→c→a→b→c

UML包图展现由模型本身分解而成的组织单元及其依赖关系,以下关于包图的叙述中,不正确的是 (43) 

(43) A. 可以拥有类、接口构件、节点 B. 一个元素可以被多个包拥有

C. 一个包可以嵌套其他包 D. 一个包内元素不能重名

在某招聘系统中,要求实现求职简历自动生成功能。简历的基本内容包括求职者的姓名、性别、年龄及工作经历等。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。针对此需求,设计如下所示的类图。该设计采用了 (44) 模式,由xx示例指定创建对象的种类,声明一个复制自身的接口,并且通过复制这些Resume xx WorkExperience 的对象来创建新的对象。该模式属于 (45) 模式。

(44) A. 单例(Singleton) B. 抽象工厂(Abstract Factory)

C. 生成器(Builder) D. 原型(Prototype)

(45) A. 混合型 B. 行为型

C. 结构型 D. 创建型

某旅游公司欲开发一套软件系统,要求能根据季节,节假日等推出不同的旅行定价包,如淡季打折、一口价等。实现该要求适合采用 (46) 模式,该模式的主要意图是 (47) 

(46) A. 策略模式(Strategy) B. 状态(State)

C. 观察者(Observer) D. 命令(Command)

(47) A. 将一个请求封装为对象,从而可以用不同的请求对客户进行参数化

B. 当一个对象的状态发生改变时,依赖于它的对象都得到通知并被自动更新

C. 允许一个对象在其内部状态改变时改变它的行为

D. 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换

Python中采用于 (48) 原方法来获取一个对象的类型。

(48) A. str() B. type() C. id() D. object()

在Python语言中,语句x =  (49) 不能定义一个元组。

(49) A. (1, 2, 1, 2) B. 1, 2, 1, 2

C. tuple() D. (1)

关于Python语言的叙述中,不正确的是 (50) 

(50) A. for语句可以用在序列(如列表、元组和字符串)上进行迭代访问

B. 循环结构如for和while后可以加else语句

C. 可以用if...else和switch...case语句表示选择结构

D. 支持嵌套循环

在数据库应用系统的开发过程中,开发人员需要通过视图层、逻辑层次上的抽象来对用户屏蔽系统的复杂性,简化用户与系统的交互过程。错误的是 (51) 

(51) A. 视图层是最高层次的抽象

B. 逻辑层是比视图层更低一层的抽象

C. 物理层是最低层次的抽象

D. 物理层是比逻辑层更高一层的抽象

给定关系模式R(U, F),其中U为属性集,F是U上的一组函数,属于自反律的是 (52) 

(52) A. 若Y∈X∈U,则X→Y为F所蕴含

B. 若X→Y,Y→Z,则X→Y为F所蕴含

C. 若X→Y,Z∈Y,则X→Z为F所蕴含

D. 若X→Y,X→Z,则X→YZ为F所蕴含

给定关系模式R(U, F),U = { A, B, C, D },函数依赖集F = { AB→C, CD→B }。关系模式R (53) ,主属性和非主属性个数分别为 (54) 

(53) A. 只有1个候选关键字ACB B. 只有一个候选关键字BCD

C. 有2两个候选关键字ABD和ACD D. 有2两个候选关键字ACB和BCD

(54) A. 和 0 B. 3 和 1 C. 2 和 2 D. 1 和 3

如果将Students表的插入权限赋予用户User1,并允许其将该权限授予他人,那么正确的SQL语句如下:GRANT 55) TABLE Students TO User1 56) 。

(55) A. INSERT B. INSERT ON C. UPDATE D. UPDATE ON

(56) A. FOR ALL B. PUBLIC

C. WITH GRANT OPTION D. WITH CHECK OPTION

利用栈对算术表达式10 * (40 – 30 / 5) + 20求值时,存放操作数的栈(初始为空)的容量至少为 (57) ,才能满足暂存该表达式中的运算数或运算结果的要求。

(57) A. 2 B. 3 C. 4 D. 5

设有5个字符,根据其使用频率为其构造哈夫曼编码。以下编码方案中 (58) 是不可能的。

(58) A. { 111, 110, 101, 100, 0 } B. { 0000, 0001, 001, 01, 1 }

C. { 11, 10, 01, 001, 000 } D. { 11, 10, 011, 010, 000 }

设有向图G具有n个顶点、e条弧,采用邻接表存储,则完成广度优先遍历的时间复杂度为 (59) 

(59) A. O(n + e B. O(n^2) C. O(e^2) D. O(n * e)

对某有序顺序表进行折半查找(二分查找)时,进行比较的关键字序列不可能是 (60) 

(60) A. 42, 61, 90, 85, 77 B. 42, 90, 85, 61, 77

C. 90, 85, 61, 77, 42 D. 90, 85, 77, 61, 42

设由三棵树构成的森林中,第一棵树、第二棵树和第三棵树的结点总数分别为n1、n2和n3。将该森林转换为一颗二叉树,那么该二叉树的右子树包含 (61) 个结点。

(61) A. n1 B. n1 + n2 C. n3 D. n2 + n3

对一组数据进行排序,要求排序算法的时间复杂度为O(nlgn),且要求排序是稳定的,则可采用(62) 。算法。若要求排序算法的时间复杂度为O(nlgn),且在原数据上进行,即空间复杂度为O(1),则可以采用(63) 。算法。

(62) A. 直接插入排序 B. 堆排序

C. 快速排序 D归并排序

(63) A. 直接插入排序 B. 堆排序

C. 快速排序 D. 归并排序

采用Kruskal算法求解下图的最小生成树,采用的算法设计策略是 (64) 。该最小生成树的权值是 (65) 

(64) A. 分治法 B. 动态规划 C. 贪心法 D. 回溯法

(65) A. 14 B. 16 C. 20 D. 32

www的控制协议是 (66) 

(66) A. FTP B. HTTP C. SSL D. DNS

在Linux操作系统中通常使用 (67) 。作为Web服务器,其默认的Web目录为 (68) 

(67) A. IIS B. Apache C. NFS D. MYSQL

(68) A. /etc/httpd B. /var/log/httpd C. /etc/home D. /home/httpd

SNMP的传输层协议是 (69) 

(69) A. UDP B. TCP C. IP D. ICM

某电脑无法打开任意网页,但是互联网即时聊天软件使用正常。造成该故障的原因可能是 (70) 

(70) A. IP地址配置错误 B. DNS配置错误 C. 网卡故障 D. 链路故障

Low-code and no code software development solutions have emerged as viable and convenient alternatives to the traditional development process.

Low-code is a rapid application development (RAD) approach that enables automated code generation through 71) building blocks like drag-and-drop and pull-down menu interfaces. This 72) allows low-code users to focus on the differentiator rather than the common denominator of programming. Low-code is a balanced middle ground between manual coding and no-code as its users can still add code over auto-generated code.

No-code is also a RAD approach and is often treated as a subset of the modular plug-and-play, low-code development approach. While in low-code there is some handholding done by developers in the form of scripting or manual coding, no-code has a completely 73) approach, with 100% dependence on visual tools.

A low-code application platform (LCAP) — also called a low-code development platform (LCDP) — contains an integrated development environment (IDE) with 74) features like APIs, code templates, reusable plug-in modules and graphical connectors to automate a significant percentage of the application development process. LCAPs are typically available as cloud-based Platform-as-a-Service (PaaS) solutions.

A low-code platform works on the principle of lowering complexity by using visual tools and techniques like process modeling, where users employ visual tools to define workflows, business rules, user interfaces and the like. Behind the scenes, the complete workflow is automatically converted into code. LCAPs are used predominantly by professional developers to automate the generic aspects of coding to redirect effort on the last mile of 75).

(71) A. visual B. component-based C. object-oriented D. structural

(72) A. block B. automation C. function D. method

(73) A. medern B. hands-off C. generic D. labor-free

(74) A. reusable B. built-in C. existed D. well-konwn

(75) A. delivery B. automation C. development D. success

全国计算机技术与软件专业技术资格(水平)考试

2023年上半年 软件设计师 下午试卷

(考试时间14:00~16:30共150分钟)

请按下述要求正确填写答题卡

1. 在答题纸的指定位置填写你所在的省、自治区、直辖市、计划单列市的名称。

2. 在答题纸的指定位置填写准考证号、出生年月日和姓名。

3. 答题纸上除填写上述内容外只能写解答。

4. 本试卷共6道题,试题一至试题四是必答题,试题五至试题六选答1道。每题15分,满分75分。

5. 解答时字迹务必清楚,字迹不清时,将不评分。

6. 仿照下面的例题,将解答写在答题纸的对应栏内。

(例题)

2023年上半年全国计算机技术与软件专业技术资格(水平)考试日期是12日。

因为正确的解答是“5月27日”,故在答题纸的对应栏内写上“5”和“27”(参看下表)。

例题

解答栏

(1)

5

(2)

27

试题一(共15分)

阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应框内。

【说明】

随着农业领域科学种植的发展,需要对农业基地及农事进行的信息化管理,为租户和农户等人员提供种植相关服务.现欲开发农事管理服务平台.其主要功能是:

(1)人员管理,平台管理员管理租户;租户管理农户并为其分配负责的地块,租户和农户以人员类型区分

(2)基地管理,租户填写基地名称、地域等描述信息..在显示的地图上绘制地块

(3)种植管理,租户设定作物及其从种植到采收的整个农事过程,包括农事活动及其实施计划,农户根据相应农事过程提醒进行农事活动并记录。系统会在设定时间向农户进行农事提醒,对逾期未实施活动向租户发出逾期告警

(4)投入品管理.租户统一维护化肥,杀虫剂等投入品信息,农户在农事活动中设定投入品的实际消耗

(5)信息服务:用户按查询条件发起农事信息请求,对相关地块农事活动实施情况(如与农事过程比对)等农事信息进行第选、对比和统计等处理.并将响应信息进行展示.系统也给其他第三方软件提供APP接口,通过接口访问的方式,提供账号,密码和查询条件发起农事信息请求,返回特定格式的农事信息,无查询条件时默返回账号下所有信息,多查询条件时返回满足全部条件的信息

现采用结构化方法对农事管理服务平台进行分析与设计,获得如图所示的上下文数据流图和图1-2所示的0层数据流图。

【问题1】(4分)

使用说明中的词语,给出图1-1中的实体E1-E4的名称

【问题2】(4分)

使用说明中的词语,给出图1-2中的数据存储D1-D4的名称

【问题3】(4分)

根据说明和图中术语,补充1-2中缺失的数据流及其起点和终点。

【问题4】(3分)

根据说明,给出“农事信息请求”数据流的组成。

试题二(共15分)

阅读下列说明,回答问题1至问题4,将解答填入答题纸的对应栏内。

【说明】

某新能源汽车公司为了提升效率。需开发一个汽车零件采购系统。请完成系统的数据库设计。【概念结构设计】

(1)记录供应商的信息,包括供应商的名称,地址和一个电话。

(2)记录零件的信息,包括零件的编码,名称和价格。

(3)纪录车型信息,包括车型的编号,名称和规格。

(4)记录零件采购信息,某个车型的某种零件可以从多家供应商采购,某种零件也可以被多个车型采用,某家供应商也可以供应多种零件,还包括采购数量和采购日期。

【逻辑结构设计】

根据概念结构设计阶段完成的实体联系图,得出如下关系模式(不完整):

供应商(名称,地址,电话)

零件(编码,各称,价格)

车型(编号.各称,规格)

采购(车型编号供应商名称,(a),(b),采购日期)

【问题1】(5分)

根据描述,补充图2-1的实体联系图(不增加新的实体)

【问题2】(3分)

补充结构设计结果中的(a),(b)两处空缺,并标注主键和外键完整性约束。

【问题3】(7分)

该汽车公司现新增如下需求:记录车型在全国门店的销售情况,门店信息包括门店的编号,地址和电话,销售包括销售数量和销售日期等

对原有设计进行以下修改以实现该需求:

(1)在图2-1中体现门店信息及其车型销售情况、并标明新增的实体和联系,及其主要属性.

(2)给出新增加的关系模式,并标注主键和外键完整性约束

试题三(共15分)

某高校图书馆购买了若干学术资源的镜像数据库(MinorDBMino)资源,现要求开发一套数字图书馆(Digitallibrary)系统,面向校内用户(User)提供学术资源(Resoure)浏览,检索和下载服务系统的主要要求描述如下:

(1)系统中存储了每个镜像数据库的基本信息,包括:数据库名称,访问地址,数据库属性以及数据库简介等信息,用户进入某个镜像数据降后,可以浏览检索以及下载其中的学术资源。

(2)学术资源包括会议论文(ConferencePaper)、期刑论文(JounalArticle)以及学位(Thesis)等:系统中存储了每个学术资源的题名、作者、发表时间、来源(哪个镜像数据库)、被引次数、下载次数等信息。对于会议论文,还需记录会议名称,召开时间以及召开地点;同一次会议的论文被收录在会议集(Proceeding)中。对于期刊论文,还需记录期刊名称,出版月份,期号以及主办单位;同一期号的论文被收录在一本期刊(Edition)中。对于学位论文,记录了学位类别(博士/硕士):毕业学校,专业及指导教师。会议集包含发表在该会议(在某个特定时间段,特定地点召开)上的所有文章。期刊的每一期在特定时间发行,其中包含若干篇文章。

(3)系统用户(User)包括在校学生(Student),教师(Teacher)以及其他在职人员(Staff)。用户使用学校的统一身份认证登录系统后,使用系统提供的各项服务。

(4)系统提供多种资源检索的方式,主要包括:按照资源的题名检索(SearchbyTite),按照作者名称检票(SearchByAathor),按照来源检索(SearchBySource)等。

(5)用户可以下载资源,系统记录每个资源被下载的次数。现采用面向对象分析与设计方法开发该系统,得到如图3-1所示的用例图以及图3-2所示的初始类图。

【问题1】(8分)

根据说明中的描述,给出图2中C1-C8对应项类名。

【问题2】(4分)

根据说明中的描述,给出图2的类C1-C4的关键属性

【问题3】(3分)

在该系统的开发过程中遇到了新的要求;用户能够在系统中对其所关注的数字资源注册他引通知,若该资源的他引次数发生变化,系候可以及时通知该用户,为了实现这个新的要求,可以在图3-2所示的类图中增加哪种设计模式?用150字以内文字解释选择该模式的原因。

试题五(共15分)

阅读下列说明和Java码,将应填入  (n)  处的字句写在答题纸的对应栏内。

【说明】

在某系统中,类interval代表由下界(lower bound)和上界(upper bound)定义的区间。要求采用不同的格式显示区间范围。如[lower bound,upper bound];[lower bound...upper bound];[lower bound-upper bound]等。现采用策略(strategy)模式实现该要求,得到如图5-1所示的类图。

图5-1略

【Java代码】

import Java.util.enum

TYPE{COMMA, Dots, LINE}

interface PrintStrategy{

public __(1)__;

(1):void doPrint(interval val)

}

class Intervals{

//两个类成员变量=上下边界值

public void Intervals(double lower, double upper){

//初始化上下边界值

}

public double getLower {return lower...}

public double getUpper {return upper...}

public void printInterval (PrintStrategy pr){

__(2)__;

}

}

class PrintIntervalsComma implements PrintStrategy{

public void doPrint (interval Val){

system.out.printin("["+val.getLower()+","+val.getUpper()+"]"}

}

class PrintIntervalsDots implements PrintStrategy{

public void do print (interval val){

system.out.printin("["+val(.getLower()+"..."+val.getUpper()+"]";}

}

class PrintIntervalsLine implements PrintStrategy{

public void do print (interval val){

system.out.print("["+val.getLower()+"-"+val.getUpper()+"]";}

}

public static PrintStrategy getStrategy (TYPE){

type

PrintStrategy st=null;

switch (type){

case COMMA:

__(3)__;

break;

case DOTS:

__(4)__;

break;

case LINE:

__(5)__;

break;

}

return st

}

public static void main(String[] args){

Intervals a = new Intervals(1.7, 2.1);

a.printInterval (getStrategy(TYPE.COMMA));

a.printInterval (getStrategy(TYPE.Dots));

a.printInterval (getStrategy(TYPE.LINE));

}

下午题答案​:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/585597.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C Primer Plus第十二章编程练习答案

学完C语言之后&#xff0c;我就去阅读《C Primer Plus》这本经典的C语言书籍&#xff0c;对每一章的编程练习题都做了相关的解答&#xff0c;仅仅代表着我个人的解答思路&#xff0c;如有错误&#xff0c;请各位大佬帮忙点出&#xff01; 1.不使用全局变量&#xff0c;重写程序…

网络连接中的舔狗协议

舔狗网络协议 &#xff08;discard protocol) 最近互联网上&#xff0c;“舔狗” 这个词语很火&#xff0c;也衍生出来很多梗&#xff08;快速说出互联网 4 大舔狗&#xff01;&#xff01;&#xff01;&#xff09;。然后今天偶然间看到了一个 RFC 文档&#xff0c; 发现了一…

用户需求分析工具:Y模型

用户需求分析工具&#xff1a;Y模型 《人人都是产品经理》作者苏杰提出 阿里巴巴产品经理多年 趣讲大白话&#xff1a;有个框框好同频 【趣讲信息科技180期】 **************************** 很多交流就是鸡同鸭讲 沟通的背景、动机、目的、方式、高度等严重不同 如果有一个模型…

服务器端安装jupyter notebook并在本地使用与环境配置一条龙服务【服务器上跑ipynb】

linux服务器端安装jupyter notebook并在本地使用 1.生成配置文件:2.配置Jupyter notebook密码3,修改配置文件~/.jupyter/jupyter_notebook_config.py4. 本地访问远端的服务器的jupyter1.首先在Linux服务器上启动Jupyter notebook2.然后在本地转发端口 为jupyter notebook配置co…

【云原生|探索 Kubernetes 系列 6】从 0 到 1,轻松搭建完整的 Kubernetes 集群

前言 大家好&#xff0c;我是秋意零。 前面一篇中&#xff0c;我们介绍了 kubeadm 的工作流程。那么今天我们就实际操作一下&#xff0c;探索如何快速、高效地从 0 开始搭建一个完整的 Kubernetes 集群&#xff0c;让你轻松驾驭容器化技术的力量&#xff01;&#xff01; &am…

json和pickle模块

目录 ❤ json和pickle模块 序列化 json pickle python从小白到总裁完整教程目录:https://blog.csdn.net/weixin_67859959/article/details/129328397?spm1001.2014.3001.5502 ❤ json和pickle模块 序列化 把对象(变量)从内存中变成可存储或传输的过程称之为序列化&am…

3D EXPERIENCE“热知识” | 如何使用3D EXPERIENCE平台上的问题管理?

3D EXPERIENCE 平台上的问题管理对任何组织都是有用的工具&#xff0c;无论其规模大小。无论是使用它来标记和分发PDF还是在车间和工程部门之间分享想法&#xff0c;问题管理都可以简化日常活动。简而言之&#xff0c;它会根据权限列出现有问题&#xff0c;并让用户创建新问题&…

软件测试----软件测试四大测试过程

1、测试分析 &#xff08;1&#xff09;要点 1&#xff09;软件需求分析 2&#xff09;测试需求项的提取 3&#xff09;用户使用场景分析 4&#xff09;测试工具的调研和选取 5&#xff09;测试缺陷分析 &#xff08;2&#xff09;分工 1&#xff09;测试人员&#xff1a;提…

09:mysql---事务

目录 1:事务简介 2:事务操作 3:事务四大特性 4:并发事务问题 5:事务隔离级别 1:事务简介 事务 是一组操作的集合&#xff0c;它是一个不可分割的工作单位&#xff0c;事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求&#xff0c;即这些操作要么同时成功&…

周赛347(模拟、思维题、动态规划+优化)

文章目录 周赛347[2710. 移除字符串中的尾随零](https://leetcode.cn/problems/remove-trailing-zeros-from-a-string/)模拟 [2711. 对角线上不同值的数量差](https://leetcode.cn/problems/difference-of-number-of-distinct-values-on-diagonals/)模拟 [2712. 使所有字符相等…

索引下推(Index Condition Pushdown)

使用一张用户表t_user&#xff0c;表里创建联合索引&#xff08;name, age&#xff09;。 如果现在有一个需求&#xff1a;检索出表中名字第一个字是张&#xff0c;而且年龄是10岁的所有用户。那么&#xff0c;SQL语句是这么写的&#xff1a; 复制代码 select * from tuser w…

【教学类-35-01】带笔画步骤图的描字(姓氏)(A4整张)

作品展示&#xff1a; 1、图片一行&#xff08;0-6&#xff09;&#xff1a;文字简单&#xff0c;写3*412个字 2、图片2行&#xff08;6-12&#xff09;&#xff1a;笔画适中&#xff0c;写3*39个字 3、图片3行&#xff08;12-18&#xff09;&#xff1a;笔画适中&#xff0c;…

LeetCode刷题(ACM模式)-03哈希表

参考引用&#xff1a;代码随想录 注&#xff1a;每道 LeetCode 题目都使用 ACM 代码模式&#xff0c;可直接在本地运行&#xff0c;蓝色字体为题目超链接 0. 哈希表理论基础 0.1 哈希表 哈希表&#xff08;Hash table&#xff0c;也称散列表&#xff09;是根据关键码的值而直…

Redis(六)主从模式与哨兵机制

文章目录 一、主从模式配置一主二从集群 二、哨兵机制哨兵模式演示&#xff1a;哨兵如何监控节点「主观下线」与[客观下线]哨兵如何选新主节点由哪个哨兵进行转移如何通知客户端新主节点的信息? 一、主从模式 配置一主二从集群 开启三个linux&#xff0c;并安装redis info …

【k8s】【Prometheus】【待写】

环境 k8s v1.18.0 192.168.79.31 master 192.168.79.32 node-1 192.168.79.33 node-2一、Prometheus 对 kubernetes 的监控 1.1 node-exporter 组件安装和配置 node-exporter 可以采集机器&#xff08;物理机、虚拟机、云主机等&#xff09;的监控指标数据&#xff0c;能够采…

C++11:可变参数模板、lambda表达式和包装器

目录 一. 可变参数模板 1.1 什么是可变模板参数 1.2 参数包具体值的获取 1.3 emplace/emplace_back接口函数 二. lambda表达式 2.1 lambda表达式的概念和定义方法 2.2 捕捉列表说明 2.3 lambda表达式的底层实现原理 三. 包装器 3.1 function包装 3.2 bind绑定 3.2.…

重估老板电器:加速增长飞轮,迸发品类红利

#王一博同款洗碗机&#xff0c;5月28日&#xff0c;这个话题登上微博热搜&#xff0c;并获得不小关注。数据显示&#xff0c;截至5月29日9:00&#xff0c;该话题一天内引发了166.1万人讨论&#xff0c;阅读量破2.7亿。同时&#xff0c;抖音上&#xff0c;官宣王一博为代言人的话…

Java on Azure 开发工具路线图新发布!

大家好&#xff0c;欢迎来到Java on Azure工具产品的4月更新。让我们首先来谈谈我们对未来几个月的Java on Azure开发工具的投资。在这次更新中&#xff0c;我们还将介绍Azure Service Bus支持和Azure Spring Apps入门模板增强功能。要使用这些新功能&#xff0c;请下载并安装用…

ASEMI单向可控硅BT151参数,BT151封装,BT151体积

编辑-Z 单向可控硅BT151参数&#xff1a; 型号&#xff1a;BT151 存储接点温度范围Tstg&#xff1a;-40~150℃ 工作接点温度范围Tj&#xff1a;-40~125℃ 断态重复峰值电压VDRM&#xff1a;650V 重复峰值反向电压VRRM&#xff1a;650V RMS导通电流IT(RMS)&#xff1a;12…

【P42】JMeter 运行时间控制器(Runtime Controller)

文章目录 一、运行时间控制器&#xff08;Runtime Controller&#xff09;参数说明二、测试计划设计 一、运行时间控制器&#xff08;Runtime Controller&#xff09;参数说明 可以通过时间来确定其后代元素运行多长时间&#xff0c;在时间范围内&#xff0c;后代元素会一直运…