2024年上半年软件设计师上午真题及答案解析

1.在计算机网络协议五层体系结构中,( )工作在数据链路层。
A.路由器        B.以太网交换机         C.防火墙        D.集线器

网络层:路由器、防火墙

数据链路层:交换机、网桥

物理层:中继器、集线器

2.软件交付之后,由于软硬件环境发生变化而对软件进行修改的行为属于( B )维护。
A.改善性           B.适应性           C.预防性        D.改正性

软件维护:

  • 适应性维护:指使应用软件适应信息技术变化和管理需求变化而进行的修改。企业的外部市场环境和管理需求的不断变化也使得各级管理人员不断提出新的信息需求
  • 改正性维护:指为了识别和纠正软件错误、改正软件性能上的缺陷、排除实施中的错误,应当进行的诊断和改正错读的过程。
  • 预防性维护:系统维护工作不应总是被动地等待用户提出要求后才进行,应进行主动的预防性维护,通过预防性维护为未来的修改与调整奠定更好的基础。
  • 完善性维护:扩充功能和改善性能而进行的修改。对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。

3.以下不属于函数依赖的Armstrong公理系统的是( C )。
A.自反规则      B.传递规则        C.合并规则        D.增广规律

考查数据库基础知识:

函数依赖的 Armstrong 公理及其引理。设关系模式R(U,F),其中U为属性集,F是U上的一组函数依赖,那么有以下推理规则。

  • 公理-自反律:若 Y⊆X⊆U,则 X→Y 被 F 逻辑蕴含。
  • 公理-增广律:若 X→Y为F所蕴涵,且 Z⊆U,则 XZ→YZ 被 F 逻辑蕴含。
  • 公理-传递律:若 X→Y, Y→Z为F所蕴涵,则 X→Z被 F 逻辑蕴含。

根据上述3条推理规则又可推出下述3条推理规则:

  • 引理-合并律:若 X→Y 且 X→Z,则 X→YZ为F所蕴涵。 (证明:根据增广律可以得到 X→XY, XY→YZ,再根据传递律得到,X→YZ。)
  • 引理-伪传递律:若 X→Y 且 WY→Z,则 XW→Z为F所蕴涵。 (证明:证明方法依然是 增广律 和 传递律。)
  • 引理-分解律:若 X→Y 且 Z⊆Y,则 X→Z为F所蕴涵。( 证明:根据自反律可以得到 Y→Z,再根据传递律,得证 X→Z。)

4.结构化分析方法的基本思想是( B )。
A.自底向上逐步分解   B.自顶向下逐步分解   C.自底向上逐步抽象  D.自顶向下逐步抽象

考查软件工程开发方法:
结构化开发方法主要特征包含:自顶向下、逐步分解求精、严格区分阶段、阶段产生标准化。

5.执行以下Python语句之后,列表y为( B )。
x=[1,2,3]
y=x+[4,5,6]
A.出错        B.[1,2,3,4,5,6]        C.[5,7,9]        D.[1,2,3,[4,5,6]]

在python语言中,两数组相加,+ 属于拼接。

6.对于一棵树,每个结点的孩子结点个数称为结点的度,结点度数的最大值称为树的度。某树T的度为4,其中有5个度为4的结点,8个度为3的结点,6个度为2的结点,10个度为1的结点,则T中的叶子结点个数为( A )。
A.38        B.29        C.66        D.57 

总结点数  =  (度数1 * 该度数结点 +...+ 度数n * 该度数结点) + 1  = 边总数 + 1

                 = 5 * 4 + 8 * 3 + 6 * 2 + 10*1 +1 = 67

叶子结点 = 总结点数 - 所有度数的结点数

               = 70 -  (5 + 8 + 6 + 10)  = 38

7.8.下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,则一共有( B )条关键路径,关键路径长度为( B)。


A.2        B.4        C.3        D.1
A.48       B.55       C.30        D.46 

考察项目管理关键路径。

如上图可以发现,关键路径为最长的一条路线。关键路径有4条,分别为:ABEHJK、ABEFIJK、ACEHJK、ACEFIJK,总长度为55。

9.对于定点纯小数的数据编码,下述说法正确的是(  D )。
A.仅原码能表示-1        B.仅反码能表示-1        C.原码和反码均能表示-1        D.仅补码能表示-1

考察计算机基础码制相关内容。

10.软件测试过程中的系统测试主要是为了发现(  D )阶段的问题。  
A.软件实现        B.概要设计        C.详细设计        D.需求分析

考察软件测试内容。

系统测试和验收测试都是针对于需求分析阶段进行测试的。

系统测试是针对整个产品系统进行的测试,目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案。


11.WWW服务器与客户机之间主要采用( B )安全协议进行网页的发送和接收。  
A.HTTP        B.HTTPS        C.HTML        D.SMTP
 
12.瀑布模型的主要特点是( C )。    
A.用户容易参与到开发活动中        B.易于处理可变需求            
C.缺乏灵活性                                 D.用户与开发者沟通容易

瀑布模型的缺点:
(1)各个阶段之间产生大量的文档,极大地增加了工作量。
(2)由于开发模型是线性的,用户只有等到整个过程的末期才能见到开发成果,从而增加了开发风险。
(3)不适应用户需求的变化,并且在需求分析阶段不可能完全获取。
(4)在软件开发前期未发现的错误传到后面的开发活动中时,可能会扩散,进而可能会导致整个软件项自开发失败。
所以,瀑布模型适用于需求明确或很少变更的项目

13.TCP序号单位是( B )。  
A.赫兹        B.字节        C.比特        D.报文

序列号(SequenceNumber 简称seq):序列号是TCP报文中用于标识每个字节的唯一数
字。它表示在一个TCP连接中发送的字节的顺序。

赫兹是频率的单位;比特是信号量的基本单位;报文是TCP/IP网络中传输的信息单位,而TCP序列号是基于每个数据段中的字节的,而不是整个报文。

14,采用简单选择排序算法对序列(49,38,65,97,76,13,27,49)进行非降序排序,两趟后的序列为( A )。  
A,(13,27,65,97,76,49,38,49)  
B,(38,49,65,76,13,27,49,97)  
C,(13,38,65,97,76,49,27,49)  
D,(38,49,65,13,27,49,76,97)

直接选择排序:从题目可知采用非降序排序,在所有记录中选出最小的记录,把它与第1个记录交换,然后在剩余的记录内选出最小的记录与第2个交换......依次类推。
例:关键字序列T=(21,25,49,27,16,08)
第1趟  08,25,49,27,16,21
第2趟  08,16,49,27,25,21
第3趟  08,16,21,27,25,49
第4趟  08,16,21,25,27,49
第5趟  08,16,21,25,27,49

15.在计算机系统中,CPU中跟踪后继指令地址的寄存器是( C )。
A.指令寄存器        B.状态条件寄存器        C.程序计数器        D.主存地址寄存器

  • 指令寄存器(IR):存放即将执行的指令。
  • 状态条件寄存器:存放状态标志和控制标志。
  • 程序计数器(PC):存放下一条要执行指令的地址。
  • 主存地址寄存器:保存当前CPU访问内存单元的地址。

16.硬盘所属的存储类别是( D )。
A.寄存器       B.缓存       C.主存       D.辅存

CPU对应的存储类别:寄存器;

Cache对应的存储类别:缓存;

主存对应的存储类别:DRAM;

辅存对应的存储类别:硬盘、光盘等。

17.UML类图在软件建模时,给出软件系统的一种静态设计视图,用( C )关系可明确表示两类事物之间存在的特殊一般关系。
A.聚合       B.依赖       C.泛化       D.实现

考察UML关系:

  • 依赖关系:一个事物发生变化影响另一个事物。
  • 实现关系:接口与类之间的关系。
  • 泛化关系:特殊/一般关系。
  • 聚合关系:整体与部分生命周期不同。属于关联关系。

18.在29个元素构成的查找表中查找任意一个元素时,可保证最多与表中5个元素进行比较即可确定查找结果,则采用的查找表及查找方法是( )。
A.二叉排序树上的查找              B.顺序表上的顺序查找
C.有序顺序表上的二分查找       D.散列表上的哈希查找

  • 二叉排序树上的查找:在二叉排序树上查找一个元素时,平均查找长度通常与树的深度有关。
  • 顺序表上的顺序查找:从头到尾或从尾到头遍历整个列表。
  • 有序顺序表上的二分查找:每次比较都会排除一半的元素
  • 散列表上的哈希查找:哈希查找的性能主要取决于哈希函数的设计及哈希表的填充因子。

19.算术表达式b*(a+c)-d的后缀式是( D )。(+、-、*表示算术的加、减、乘运算,运算符的优先级和结合性遵循惯例。)
A.ba+cd*-       B.bacd+*-       C.ba*c+d*-       D.bac+*d-

20.面向对象软件从不同层次进行测试。( D )层测试类中定义的每个方法,相当于传统软件中的单元测试。
A.模板        B.系统        C.类        D.算法

一般来说,对面向对象软件的测试可分为下列4个层次进行。
(1)算法层:测试类中定义的每个方法,基本上相当于传统软件测试中的单元测试。
(2)类层:测试封装在同一个类中的所有方法与属性之间的相互作用。在面向对象软件中
类是基本模块,因此可以认为这是面向对象测试中所特有的模块测试。
(3)模板层:测试一组协同工作的类之间的相互作用,大体上相当于传统软件测试中的集
成测试,但是也有面向对象软件的特点(例如,对象之间通过发送消息相互作用)。
(4)系统层:把各个子系统组装成完整的面向对象软件系统,在组装过程中同时进行测试。

21.循环余校验码(CRC)利用生成多项式进行编码。设数据位为n位,校验位为k位,则CRC码的格式为( C )。
A.k个校验位按照指定间隔位与n个数据位混淆        B.k个校验位之后跟n个数据位
C.n个数据位之后跟k个校验位                    D.k个校验位等间隔地放入n个数据位中

考察校验码基础知识:

  • 奇偶校验码编码方法:由若干位有效信息(如一个字节),再加上一个二进制位(校验位)组成校验码。这个校验位可以加在最前面也可以是最后面。
  • CRC的编码方法是:在k位信息位之后拼接r位校验位。
  • 海明校验码编码方法:在有效信息位中加入几个校验位形成海明码,使码距比较均匀地拉大,并把海明码的每个二进制位分配到几个奇偶校验组中。

22.以下关于通过解释器运行程序的叙述中,错误的是( C )。
A.可以由解释器直接分析并执行高级语言源程序代码
B.与直接运行编译后的机器码相比,通过解释器运行程序的速度更慢
C.解释器运行程序比运行编译和链接方式产生的机器代码效率更高
D.可以先将高级语言程序转换为字节码,再由解释器运行字节码

1.编译程序和解释程序

高级语言或汇编语言编写的程序称为源程序,源程序不能直接在计算机上执行。

  • 如果源程序是汇编语言编写的,则需要一个称为汇编程序的翻译程序将其翻译成目标程序,然后才能执行。
  • 如果源程序是为高级语言时,这个翻译程序称为编译程序
  • 按源程序中语句的执行顺序,逐条翻译并立即执行相关功能的处理程序、称为解释程序。

2、解释执行:源程序的每个语句一经解释就立即执行。

  • 优点:可移植性较好、开发速度较快、与用户通信方便。
  • 缺点:效率低。

23.进行面向对象系统设计时,若存在包A依赖于包B,包B依赖于包C,包C依赖于包A,则此设计违反了( )原则
A.稳定抽象        B.稳定依赖        C.依赖倒置        D.无环依赖

面向对象设计原则:

  • 稳定抽象原则:强调的是包的抽象程度与其稳定程度一致。
  • 稳定依赖原则:要求包之间的依赖关系都应该是稳定方向依赖的,即包要依赖的包要比自己更具有稳定性。
  • 依赖倒置原则:强调的是程序应该依赖于抽象接口,而不是具体的实现,从而降低客户与实现模块间的耦合。
  • 无环依赖:强调的是在组件的依赖关系图中不允许存在环。

24.下列算法属于Hash算法的是( A )。
A.SHA        B.DES        C.IDEA        D.RSA

消息摘要算法,也被称为哈希(Hash)算法或散列算法:MD5、SHA;

对称加密算法:DES、IDEA、AES、RC-5;

非对称加密算法:RSA;

25.在关系表中选出若干属性列组成新的关系表,可以使用( A )操作实现。
A.投影         B.笛卡儿积        C.选择        D.差

考查数据库基础SQL语言:

  • 投影:投影出某属性列。
  • 笛卡尔积:两表之间的乘积,组成新的表之后,新表的属性列为两表之和,元组数为两表之乘积。
  • 选择:选择某条件下的一条/多条元组记录。
  • 差:两表之间的差集是指在该表中减去两者之间重复的元组。

26.在撰写学术论文时,通常需要引用某些文献资料。以下叙述中,( A  )是不正确的。
A.既可引用发表的作品,也可引用未发表的作品
B.不必征得原作者的同意,不需要向他文付报酬
C.只能限于介绍、评论作品
D.只要不构成自己作品的主要部分,可适当引用资料

27.进行面向对象设计时,以下( B )不能作为继承的类型。
A.多重继承         B.分布式继承         C.单重继承         D.层次继承

考查面向对象基础:
对于面向对象的设计,支持多重继承和单重继承(多个父类和一个父类),同时也支持层次继承(一般会同时实现继承类实现接口)。

28.在采用定点二进制的运算器中,减法运算一般是通过( A )来实现的。
A.补码运算的二进制加法器         B.原码运算的二进制加法器
C.补码运算的二进制减法器         D.原码运算的二进制减法器

考查计算机基础:
在运算中,CPU分为控制器和运算器,执行算术逻辑运算的是算术逻辑运算单元,然后将其结果放到加法器执行。
在运算过程中,补码是正确的适合加减运算的,因为+0和-0对应的补码值是一样的。

29.用于收回SQL访问控制权限的操作是( C )。
A.GRANT         B.DELETE         C.REVOKE         D.DROP

考查数据库基础SQL语言部分:

  • GRANT:表示授权
  • DELETE:表示删除表结构
  • REVOKE:表示销权
  • DROP:表示删除表内部数据

30.某系统由下图所示的余部件构成。若每个部件的千小时可靠度都为R,则该系统的千小时可靠度为( D )。

A.(1-(1-R)²)(1-R)        B.(1-R)² (1-R²)        C.R(1-R²)R         D.R(1-(1-R)²)R

计算机可靠度计算:(每个部件可靠度为R)

  • 两个部件串联:R²
  • 两个部件并联:1-(1-R)²

31.已知二维数组A按行优先方式存储,每个元素占用2个存储单元,第一个元素A[0][0]的
地址为100,元素A[3][3]的存储地址是220,则元素A[5][5]的地址是(A)。
A.300        B.310        C.306        D.296

存储位置 = 起始地址 + (i*n + j) * size

其中i指行号,j指列号,n指每行元素数(数组列数)

由题目可知:A[3][3] = 220 = 100 + (3n+3)*2,可得n=19

A[5][5]的地址 = 100+(5*19+5)*2 = 300

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

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

相关文章

数据可视化期末考试(编程)

1.KNN 1.新增数据的分类 import pandas as pd # 您的原始数据字典 data { 电影名称: [电影1, 电影2, 电影3, 电影4, 电影5], 打斗镜头: [10, 5, 108, 115, 20], 接吻镜头: [110, 89, 5, 8, 200], 电影类型: [爱情片, 爱情片, 动作片, 动作片, 爱情片] } …

uni-app uni-data-picker级联选择器无法使用和清除选中的值

出现问题&#xff1a; 使用点击右边的叉号按钮无法清除已经选择的uni-data-picker值 解决办法&#xff1a; 在uni-app uni-data-picker使用中&#xff0c;要添加v-model&#xff0c;v-model在官网的示例中没有体现&#xff0c;但若不加则无法清除。 <uni-data-picker v-m…

OpenAI用GPT-4o打造癌症筛查AI助手;手机就能检测中风,准确率达 82%!中国气象局发布AI气象大模型...

AI for Science 企业动态速览—— * 皇家墨尔本大学用 AI 检测患者中风&#xff0c;准确率达 82% * OpenAI 用 GPT-4o 模型打造癌症筛查 AI 助手 * 中国气象局发布 AI 气象大模型风清、风雷、风顺 * AI 药企英矽智能&#xff1a;小分子抑制剂已完成中国 IIa 期临床试验全部患者…

GPT-5智能新纪元的曙光

在美国达特茅斯工程学院周四公布的采访中&#xff0c;OpenAI首席技术官米拉穆拉蒂被问及GPT-5是否会在明年发布&#xff0c;给出了肯定答案并表示将在一年半后发布。穆拉蒂在采访中还把GPT-4到GPT-5的飞跃描述为高中生到博士生的成长。 这一爆炸性的消息&#xff0c;震动了整体…

linux下进度条的实现

目录 一、代码一版 1.processbar.h 2.processbar.c 3.main.c 二、代码二版 1.processbar.h 2.processbar.c 3.main.c 三、改变文字颜色 一、代码一版 使用模块化编程 1.processbar.h #include<stdio.h> #define capacity 101 //常量使用宏定义 #define style…

代码随想录——买股票的最佳时机Ⅱ(Leecode122)

添加链接描述 贪心 局部最优&#xff1a;手机每天的正利润 全局最优&#xff1a;求最大利润 class Solution {public int maxProfit(int[] prices) {int res 0;for(int i 1; i < prices.length; i){res Math.max(prices[i] - prices[i - 1], 0);}return res;} }

webstorm无法识别tsconfig.json引用项目配置文件中的路径别名

问题 vite项目模板中&#xff0c;应用的ts配置内容写在tsconfig.app.json文件中&#xff0c;并在tsconfig.json通过项目引用的方式导入 {"files": [],"references": [{"path": "./tsconfig.app.json"},{"path": "./t…

2024年第十五届蓝桥杯青少组大赛8月24日开启

据蓝桥杯青少组官网显示&#xff0c;2024年第十五届蓝桥杯青少组大赛8月24日开启。 蓝桥杯青少组历届题库地址&#xff1a;http://www.6547.cn/question/cat/2 蓝桥杯青少组历届真题下载&#xff1a;http://www.6547.cn/wenku/list/10

统一视频接入平台LntonCVS视频共享交换平台智慧景区运用方案

随着夏季的到来&#xff0c;各地景区迎来了大量游客&#xff0c;而景区管理面临的挑战也愈加严峻&#xff0c;尤其是安全问题显得格外突出。 视频监控在预防各类安全事故方面发挥着重要作用&#xff0c;不论是自然景区还是人文景区&#xff0c;都潜藏着诸多安全隐患&#xff0…

排序之插入排序----直接插入排序和希尔排序(1)

个人主页&#xff1a;C忠实粉丝 欢迎 点赞&#x1f44d; 收藏✨ 留言✉ 加关注&#x1f493;本文由 C忠实粉丝 原创 排序之插入排序----直接插入排序和希尔排序(1) 收录于专栏【数据结构初阶】 本专栏旨在分享学习数据结构学习的一点学习笔记&#xff0c;欢迎大家在评论区交流讨…

图形编辑器基于Paper.js教程04: Paper.js中的基础知识

背景 了解paper.js的基础知识&#xff0c;在往后的开发过程中会让你如履平地。 基础知识 paper.js 提供了两种编写方式&#xff0c;一种是纯粹的JavaScript编写&#xff0c;还有一种是使用官方提供的PaperScript。 区别就是在于&#xff0c;调用paper下的字对象是否需要加pa…

Windows server 由于没有远程桌面授权服务器可以提供许可证,远程会话连接已断开。

问题现象&#xff1a; 解决办法 临时远程方式1: 打开 mstsc 时带上 /admin 等参数&#xff0c;如下图所示&#xff1a; 使用“mstsc /admin /v:目标ip”来强制登录服务器&#xff0c;但只能是管理员身份。 远程方式2&#xff1a; 通过VM远程登陆系统后&#xff0c;运行输入R…

Python编程编辑器PyCharm 界面介绍

PyCharm 界面介绍 当你打开 PyCharm 后&#xff0c;会看到以下主要界面区域&#xff1a; 1&#xff09;菜单栏&#xff1a; 位于界面最顶端&#xff0c;包含文件&#xff08;File&#xff09;、编辑&#xff08;Edit&#xff09;、查看&#xff08;View&#xff09;、导航&a…

ICMAN液位检测——WS003B管道检测模组

ICMAN液位检测之WS003B管道检测模组 体积小&#xff0c;成本低&#xff0c; 液位检测精度高&#xff0c; 有水输出低电平无水高电平&#xff0c; 适用于饮水机、咖啡机、扫地机器人、洗地机等&#xff0c; 有需要朋友快联系我吧&#xff01; AWE展会不容错过的ICMAN检测模组…

RabbitMQ实践——搭建多人聊天服务

大纲 用户登录创建聊天室监听Stream&#xff08;聊天室&#xff09;发送消息实验登录Tom侧Jerry侧 创建聊天室Jerry侧Tom侧 进入聊天室Jerry侧Tom侧 发送消息Jerry发送消息Jerry侧聊天室Tom侧聊天室 Tom发送消息Jerry侧聊天室Tom侧聊天室 代码工程参考资料 在《RabbitMQ实践——…

Webpack: 前端资深构建工具

概述 如果你是一名前端工程师&#xff0c;相信之前或多或少听过、用过 Webpack 这一构建工具&#xff0c;它能够融合多种工程化工具&#xff0c;将开发阶段的应用代码编译、打包成适合网络分发、客户端运行的应用产物如今&#xff0c;Webpack 已经深深渗入到前端工程的方方面面…

简单了解IoC

IoC 什么是IoC&#xff1f; IoC&#xff08;Inversion of Control&#xff09;&#xff0c;即控制反转&#xff0c;这是一种设计思想&#xff0c;在Spring指将对象的控制权交给Spring容器&#xff0c;由容器来实现对象的创建、管理&#xff0c;程序员只需要从容器获取想要的对…

java设计模式(四)原型模式(Prototype Pattern)

1、模式介绍&#xff1a; 原型模式&#xff08;Prototype Pattern&#xff09;是一种创建型设计模式&#xff0c;它允许对象在创建新实例时通过复制现有实例而不是通过实例化新对象来完成。这样做可以避免耗费大量的资源和时间来初始化对象。原型模式涉及一个被复制的原型对象…

ES6模板字符串详解

ES6是JavaScript语言的一次重大更新&#xff0c;引入了许多新特性和语法改进&#xff0c;其中模板字符串是一个非常实用和灵活的语法特性。它可以让我们从数组或对象中提取值&#xff0c;并赋给对应的变量&#xff0c;让代码变得更加简洁和易读。 本文将深入探讨ES6解构赋值的语…

Nginx开发--动静分离和URLRewrite

05 【动静分离和URLRewrite】 1.动静分离介绍 为了提高网站的响应速度&#xff0c;减轻程序服务器&#xff08;Tomcat&#xff0c;Jboss等&#xff09;的负载&#xff0c;对于静态资源&#xff0c;如图片、js、css等文件&#xff0c;可以在反向代理服务器中进行缓存&#xff…