☰
# 软件设计师模拟试题 数据结构与算法
2026/10/6 8:01:37 网站建设 项目流程

软件设计师模拟试题

依据《软件设计师考试大纲》命题,覆盖"计算机与软件工程知识"(科目一)与"软件设计"(科目二)两科。
答题说明:科目一为选择题,每题仅一个正确答案;科目二为问答题,需书写分析、推导与设计过程。
建议用时:科目一 150 分钟,科目二 150 分钟。


科目一:计算机与软件工程知识(选择题)

一、数据表示与计算机组成原理(第 1–8 题)

1.若机器字长为 8 位,采用补码表示,则整数 -128 的补码形式为( )。

  • A. 1000 0000
  • B. 1111 1111
  • C. 0111 1111
  • D. 1000 0001

2.将十进制数 0.8125 转换为二进制小数为( )。

  • A. 0.1101
  • B. 0.1011
  • C. 0.1110
  • D. 0.1001

3.两个 8 位二进制补码数 A=10110011、B=01100101 相加后,溢出标志(OF)和进位标志(CF)的状态是( )。

  • A. OF=0,CF=1
  • B. OF=1,CF=0
  • C. OF=0,CF=0
  • D. OF=1,CF=1

4.在计算机的运算器中,用于存放参加运算的操作数和运算结果的部件是( )。

  • A. 程序计数器(PC)
  • B. 累加器(ACC)
  • C. 指令寄存器(IR)
  • D. 存储地址寄存器(MAR)

5.下列关于冯·诺依曼体系结构的描述,错误的是( )。

  • A. 采用存储程序原理
  • B. 指令和数据以二进制形式存储
  • C. 运算器和控制器合称为中央处理器
  • D. 采用哈佛结构,指令存储器与数据存储器分离

6.Cache 与主存之间的映射方式中,命中率最高但硬件实现最复杂的是( )。

  • A. 直接映射
  • B. 全相联映射
  • C. 组相联映射
  • D. 段相联映射

7.CPU 中能够直接识别和执行的最基本操作命令称为( )。

  • A. 微指令
  • B. 机器指令
  • C. 汇编指令
  • D. 伪指令

8.采用流水线技术后,假设一条指令执行需取指、分析、执行三个步骤,各步骤耗时分别为 4ns、2ns、3ns,则流水线时钟周期至少为( )。

  • A. 3ns
  • B. 4ns
  • C. 6ns
  • D. 9ns

二、操作系统(第 9–16 题)

9.操作系统中,进程与线程的主要区别是( )。

  • A. 线程是资源分配的基本单位,进程是调度的基本单位
  • B. 进程是资源分配的基本单位,线程是调度的基本单位
  • C. 进程和线程都是资源分配的基本单位
  • D. 进程和线程都是调度的基本单位

10.采用短作业优先(SJF)调度算法时,四个作业的到达时间均为 0,运行时间分别为 2、6、4、8,则其平均周转时间为( )。

  • A. 10
  • B. 11.5
  • C. 13
  • D. 14.5

11.在分页存储管理中,若页面大小为 4KB,逻辑地址为 0x3A5F,页号为 3,则对应的页内偏移量为( )。

  • A. 0x0A5F
  • B. 0x2A5F
  • C. 0x1A5F
  • D. 0x3A5F

12.产生死锁的必要条件不包括( )。

  • A. 互斥条件
  • B. 请求与保持条件
  • C. 不可剥夺条件
  • D. 资源循环等待(环路)条件之外的"占有且等待"

13.在信号量机制中,P 操作(wait)和 V 操作(signal)的作用分别是( )。

  • A. 信号量加 1;信号量减 1
  • B. 信号量减 1,若小于 0 则阻塞;信号量加 1,若小于等于 0 则唤醒
  • C. 信号量加 1,若大于 0 则唤醒;信号量减 1
  • D. 阻塞等待;直接唤醒

14.下列存储管理中,会产生外部碎片的是( )。

  • A. 分页存储管理
  • B. 分段存储管理
  • C. 请求分页存储管理
  • D. 分页+段页式

15.在虚拟存储中,页面置换算法中"被换出的页将来一段时间内最长时间不被使用"的最优算法是( )。

  • A. FIFO
  • B. LRU
  • C. OPT
  • D. Clock

16.打开文件操作(open)完成的核心工作是( )。

  • A. 将文件数据读入内存
  • B. 在内存中建立文件控制块(FCB)的副本并分配文件描述符
  • C. 将文件内容写回磁盘
  • D. 检查文件是否被压缩

三、数据库系统(第 17–22 题)

17.关系数据库中的候选码(Candidate Key)是指( )。

  • A. 能唯一标识元组的最小属性组
  • B. 任意一个非空属性组
  • C. 主键之外的属性组
  • D. 外键对应的属性组

18.关系模式 R(A,B,C,D)上的函数依赖 F={A→B, B→C},则 R 的候选码为( )。

  • A. A
  • B. AD
  • C. AB
  • D. BD

19.在 SQL 中,将查询结果去掉重复行的关键字是( )。

  • A. DISTINCT
  • B. UNIQUE
  • C. GROUP
  • D. ORDER

20.下列关于事务 ACID 特性的描述,错误的是( )。

  • A. 原子性:事务要么全部执行,要么全部不执行
  • B. 一致性:事务执行前后数据库保持一致状态
  • C. 隔离性:并发事务之间互不影响
  • D. 持久性:事务未提交时修改已持久化到磁盘

21.数据库三级模式结构中,面向用户(应用程序)的局部数据视图对应的是( )。

  • A. 外模式
  • B. 概念模式
  • C. 内模式
  • D. 存储模式

22.在并发控制中,两段锁协议(2PL)的主要作用是保证( )。

  • A. 事务的持久性
  • B. 并发调度的可串行性
  • C. 事务的原子性
  • D. 数据的完整性约束

四、数据结构与算法(第 23–32 题)

23.对长度为 n 的有序表采用二分查找,其时间复杂度和最坏比较次数分别为( )。

  • A. O(n),n
  • B. O(log₂n),⌈log₂(n+1)⌉
  • C. O(n²),n²
  • D. O(nlog₂n),log₂n

24.下列排序算法中,时间复杂度为 O(nlog₂n) 且是稳定排序的是( )。

  • A. 快速排序
  • B. 堆排序
  • C. 归并排序
  • D. 直接插入排序

25.在一个带头结点的单链表中,删除 p 结点的后继结点 q 的正确操作是( )。

  • A. p = q->next
  • B. q = p->next; p->next = q->next
  • C. p->next = q->next
  • D. q->next = p->next

26.一棵完全二叉树共有 100 个结点,则其叶子结点数为( )。

  • A. 49
  • B. 50
  • C. 51
  • D. 52

27.对关键字序列 {50, 30, 80, 20, 10} 进行一趟快速排序(以第一个元素为基准)后,结果的第一趟分区为( )。

  • A. 10 20 30 50 80
  • B. 30 20 10 50 80
  • C. 10 30 20 50 80
  • D. 20 10 30 50 80

28.图的广度优先遍历(BFS)所使用的辅助数据结构是( )。

  • A. 栈
  • B. 队列
  • C. 堆
  • D. 二叉树

29.已知一棵二叉树的先序遍历序列为 ABDCE,中序遍历序列为 DBACE,则其后序遍历序列为( )。

  • A. DBECA
  • B. DEBCA
  • C. DECBA
  • D. BDECA

30.求解最长公共子序列(LCS)问题的经典算法是( )。

  • A. 分治法
  • B. 动态规划
  • C. 贪心算法
  • D. 回溯法

31.用贪心算法求解 0-1 背包问题,通常不能保证( )。

  • A. 时间复杂度最优
  • B. 一定得到全局最优解
  • C. 得到可行解
  • D. 空间复杂度最优

32.哈希表采用线性探测法处理冲突,装填因子为 0.75,表长 10,依次插入关键字 47、7、29、11、16、92,已知哈希函数 H(key)=key mod 10,则关键字 92 应存入的地址为( )。

  • A. 2
  • B. 3
  • C. 4
  • D. 5

五、计算机网络与多媒体(第 33–38 题)

33.OSI 参考模型中,实现路由选择功能的层次是( )。

  • A. 数据链路层
  • B. 网络层
  • C. 传输层
  • D. 应用层

34.在 TCP/IP 协议栈中,提供端到端可靠传输服务的协议是( )。

  • A. IP
  • B. TCP
  • C. UDP
  • D. ARP

35.IP 地址 192.168.10.5/24 所属网络的广播地址为( )。

  • A. 192.168.10.0
  • B. 192.168.10.255
  • C. 192.168.255.255
  • D. 192.168.10.5

36.下列压缩标准中,用于视频压缩的是( )。

  • A. JPEG
  • B. MP3
  • C. MPEG
  • D. WAV

37.采样频率为 44.1kHz、量化位数为 16 位、双声道的立体声,1 秒未压缩音频的数据量约为( )。

  • A. 88.2KB
  • B. 176.4KB(按 1000 进位)
  • C. 352.8KB
  • D. 约 172.3KB(按 1024 进位)

38.HTML5 中用于播放视频的标准标签是( )。

  • A.<audio>
  • B.<video>
  • C.<media>
  • D.<movie>

六、程序设计语言与编译原理(第 39–44 题)

39.编译程序完成的工作中,将源程序转换为中间代码并优化,属于的阶段是( )。

  • A. 词法分析
  • B. 语法分析
  • C. 语义分析
  • D. 中间代码生成与优化

40.下列语言中,属于解释型语言的是( )。

  • A. C
  • B. Java(字节码解释/即时编译)
  • C. Python
  • D. Fortran

41.正则表达式a(b|c)*所表示的语言是( )。

  • A. 以 a 开头,后跟任意个 b 或 c 组成的串
  • B. 以 a 开头,且仅含一个 b 或 c
  • C. 仅含字符 a、b、c 的串
  • D. 以 b 或 c 结尾的串

42.下列不属于静态测试方法的是( )。

  • A. 代码走查
  • B. 桌面检查
  • C. 逻辑覆盖测试
  • D. 代码审查

43.在 C 语言中,下列叙述正确的是( )。

  • A. 数组名是指针常量,不可重新赋值
  • B. 函数可以返回局部数组的首地址并被安全使用
  • C. 结构体不能作为参数传递给函数
  • D. 整型与浮点型无法相互转换

44.Java 中用于标记对象已不再被引用、由垃圾回收器回收的机制是( )。

  • A. 引用计数
  • B. 可达性分析(GC Roots)
  • C. 手动 delete
  • D. 指针释放

七、软件工程、软件过程与项目管理(第 45–52 题)

45.软件生命周期模型中,强调快速交付可运行原型、通过反复修改完善需求的模型是( )。

  • A. 瀑布模型
  • B. 螺旋模型
  • C. 原型化模型
  • D. V 模型

46.下列软件过程改进模型中,由 SEI 提出、将组织成熟度分为 5 个等级的是( )。

  • A. ISO 9001
  • B. CMMI
  • C. PSP
  • D. 6σ

47.在面向对象设计中,"一个类的对象作为另一个类的属性"所体现的关系是( )。

  • A. 继承
  • B. 聚合(组合)
  • C. 实现
  • D. 依赖

48.UML 中用于描述"系统某个时刻对象及其关系的快照"的图是( )。

  • A. 用例图
  • B. 对象图
  • C. 类图
  • D. 顺序图

49.在甘特图(Gantt)项目管理中,用于表示任务最早开始与最晚开始之间时间余量的指标是( )。

  • A. 关键路径
  • B. 浮动时间(松弛时间)
  • C. 里程碑
  • D. 活动历时

50.下列测试方法中,白盒测试侧重( )。

  • A. 通过输入输出验证功能
  • B. 检查程序内部逻辑结构与路径
  • C. 只验证用户界面
  • D. 模拟真实用户操作

51.软件维护中,修改软件以适应硬件或软件环境变化而进行的维护属于( )。

  • A. 改正性维护
  • B. 适应性维护
  • C. 完善性维护
  • D. 预防性维护

52.敏捷开发中,"以用户故事驱动迭代开发、每日站会、限时冲刺"的典型框架是( )。

  • A. Scrum
  • B. CMMI
  • C. RUP
  • D. 瀑布

八、软件设计方法(第 53–56 题)

53.下列设计模式中,属于创建型模式的是( )。

  • A. 适配器(Adapter)
  • B. 单例(Singleton)
  • C. 观察者(Observer)
  • D. 装饰器(Decorator)

54."定义一个操作中的算法骨架,而将一些步骤延迟到子类中实现"描述的设计模式是( )。

  • A. 工厂方法
  • B. 模板方法(Template Method)
  • C. 策略(Strategy)
  • D. 状态(State)

55.内聚程度由低到高排列,正确的是( )。

  • A. 功能内聚、通信内聚、过程内聚、偶然内聚
  • B. 偶然内聚、逻辑内聚、通信内聚、功能内聚
  • C. 功能内聚、顺序内聚、时间内聚、偶然内聚
  • D. 偶然内聚、顺序内聚、逻辑内聚、功能内聚

56.软件设计划分为体系结构设计和( )。

  • A. 概要设计
  • B. 详细设计
  • C. 测试设计
  • D. 数据库设计

九、信息安全、标准化与法律法规(第 57–63 题)

57.对称加密算法中,加解密使用同一密钥,下列属于对称算法的是( )。

  • A. RSA
  • B. AES
  • C. ECC
  • D. DSA

58.数字签名的主要作用是( )。

  • A. 加密数据传输内容
  • B. 保证消息的完整性与身份认证(防抵赖)
  • C. 压缩数据
  • D. 建立 VPN 通道

59.下列属于计算机病毒特征的是( )。

  • A. 只能破坏硬件
  • B. 传染性、潜伏性、破坏性、隐蔽性
  • C. 仅存在于内存中
  • D. 与网络无关

60.在《中华人民共和国网络安全法》中,网络运营者收集、使用个人信息应当遵循的原则是( )。

  • A. 合法、正当、必要
  • B. 可以无限收集
  • C. 无需告知用户
  • D. 必须强制收集

61.下列国际标准组织及其标准对应错误的是( )。

  • A. ISO —— 国际标准化组织
  • B. IEEE —— 电气和电子工程师协会
  • C. ANSI —— 国际电信联盟
  • D. ITU —— 国际电信联盟

62.国家标准 GB/T 规定的我国软件文档规范中,与"可行性研究报告"对应的文档代号是( )。

  • A. 需求规格说明书
  • B. 概要设计说明书
  • C. 详细设计说明书
  • D. 项目开发计划

63.在信息安全管理体系中,与 CIA(机密性、完整性、可用性)相对的风险评估基本要素不包括( )。

  • A. 资产
  • B. 威胁
  • C. 漏洞
  • D. 网速

十、信息化与专业英语(第 64–70 题)

64.下列属于云计算服务模型中 IaaS 的典型服务是( )。

  • A. 提供操作系统虚拟机
  • B. 提供软件开发平台
  • C. 提供 SaaS 应用
  • D. 提供数据中心供电

65.大数据技术中,用于分布式存储海量数据的系统通常基于( )。

  • A. 关系数据库单机
  • B. HDFS(Hadoop 分布式文件系统)
  • C. 内存数据库
  • D. 磁带存储

66.物联网(IoT)体系结构中,感知层的主要作用是( )。

  • A. 数据采集
  • B. 网络传输
  • C. 数据存储
  • D. 应用服务

67.在信息化基础中,E-government 的含义是( )。

  • A. 电子商务
  • B. 电子政务
  • C. 电子病历
  • D. 电子图书馆

68.英文术语“Data Structure”对应的中文是( )。

  • A. 数据库
  • B. 数据结构
  • C. 数据挖掘
  • D. 数据处理

69.术语“Garbage Collection”在程序设计语言中通常指( )。

  • A. 垃圾回收
  • B. 内存泄漏
  • C. 缓冲区溢出
  • D. 指针操作

70.下列英文短句中,表示"软件的生命周期"的是( )。

  • A. Software Development Model
  • B. Software Life Cycle
  • C. Software Quality Assurance
  • D. Software Configuration Management

科目二:软件设计(问答题)

以下为案例分析题,要求写出完整分析过程与设计方案。

案例一:数据流图与系统设计(15 分)

某高校开发"选课管理系统",主要功能包括:

  1. 课程信息管理:管理员录入、修改、删除课程信息(课程号、课程名、学分、容量)。
  2. 学生选课:学生登录后浏览课程、提交选课申请,系统检查容量与时间冲突。
  3. 成绩录入:任课教师录入学生成绩。
  4. 成绩查询:学生可查询本人各科成绩。

问题:

(1)请画出该系统的顶层数据流图(顶层图),标明外部实体、加工和数据流。(5 分)

(2)画出"学生选课"加工的子数据流图(0 层图),至少包含"校验容量"“检查冲突”"登记选课"三个加工。(5 分)

(3)说明在绘制数据流图时,数据存储与外部实体的区别。(5 分)


案例二:数据库设计(15 分)

某图书借阅系统的关系模式如下(下划线表示主键):

  • 读者(读者号,姓名,单位,办证日期)
  • 图书(图书号,书名,出版社,单价)
  • 借阅(读者号,图书号,借阅日期,归还日期)

问题:

(1)判断"借阅"关系的主键,并说明其是否为 2NF;若不是,说明理由。(5 分)

(2)写出下列 SQL 语句:(5 分)

  • 查询"清华大学出版社"出版的所有图书的书名;
  • 查询"李明"读者当前未归还(归还日期为 NULL)的图书书名及借阅日期。

(3)若需增加"同一读者借阅同一本图书不得超过 3 次"的约束,请给出一种实现方案(可选用触发器或应用层逻辑描述)。(5 分)


案例三:面向对象分析与设计 + UML(15 分)

某在线商店需实现"商品管理"功能:普通用户可浏览商品、下单;会员可享受折扣并累积积分。要求系统能方便地在未来增加新的用户类型(如 VIP)而无需修改现有代码。

问题:

(1)请给出该场景的类图设计,体现用户类型的继承关系(父类 User,子类 NormalUser、MemberUser),并说明所采用的设计原则。(6 分)

(2)画出一张描述"会员下单并享受折扣"流程的顺序图,至少包含 Actor、界面类、业务控制类、数据访问类。(6 分)

(3)若要支持"订单价格根据促销策略动态计算",请说明应采用哪种设计模式并简述其优点。(3 分)


案例四:算法设计(15 分)

问题:给定 n 个物品,每个物品有重量 weight[i] 和价值 value[i],背包容量为 W。要求使用动态规划求解 0-1 背包问题,使装入背包的物品总价值最大。

(1)写出状态定义和状态转移方程。(5 分)

(2)给出该算法的伪代码或 C 语言实现,并分析其时间复杂度。(7 分)

(3)举例说明:当 W=5,物品为 (重量,价值)={(2,3),(3,4),(4,5)} 时,求最大价值。(3 分)


案例五:C 语言程序设计(15 分)

问题:编写一个 C 语言程序,实现单链表的创建(头插法)、遍历输出和逆序(反转)三个功能。

(1)定义链表结点结构体ListNode。(3 分)

(2)实现函数createList()(头插法建表)、printList()(遍历)、reverseList()(逆序)。(9 分)

(3)写出main函数,演示依次插入 1、2、3 后,先正序输出,再逆序输出。(3 分)


案例六:软件工程与项目管理(选做其一,15 分)

(A)软件测试与质量
针对案例一的"选课管理系统",设计一份覆盖功能性测试的测试用例表,至少包含:测试项、前置条件、操作步骤、预期结果、实际结果(留空),并说明黑盒测试与白盒测试在该系统中的应用侧重点。

(B)项目管理
某软件开发项目总工作量预估为 180 人日,团队共 6 人。已知活动 PERT 估算法中乐观时间 3 天、最可能时间 5 天、悲观时间 13 天。

  1. 计算该项活动的期望时间 E 和标准差 σ;
  2. 绘制简单的网络计划图(含关键路径概念),说明关键路径的意义;
  3. 简述如何进行项目进度跟踪与偏差控制。

参考答案与解析

本节仅给出科目一选择题答案及简要解析;科目二问答题请在教师指导下批改或对照要点自查。

科目一参考答案

题号答案题号答案题号答案题号答案
1A19A37D55B
2A20D38B56B
3A21A39D57B
4B22B40C58B
5D23B41A59B
6B24C42C60A
7B25C43A61C
8B26B44B62B
9B27A45C63D
10B28B46B64A
11A29A47B65B
12D30B48B66A
13B31B49B67B
14B32A50B68B
15C33B51B69A
16B34B52A70B
17A35B53B
18B36C54B

关键题目解析

第 2 题:0.8125 = 0.5 + 0.25 + 0.0625 = 0.1101₂。

第 3 题:A=10110011(负)、B=01100101(正),相加得 00011000。两个异号数相加不可能溢出,故 OF=0;由最高位产生的进位为 1,故 CF=1。

第 8 题:流水线时钟周期取各阶段最大耗时,即 max(4,2,3)=4ns。

第 10 题:按 SJF 顺序 2、4、6、8,完成时间分别为 2、6、12、20,周转时间之和 2+6+12+20=40,平均 40/4=10。

第 11 题:页面 4KB=0x1000,页内偏移为逻辑地址低 12 位,0x3A5F & 0x0FFF = 0x0A5F。

第 18 题:由 A→B→C,且 A、D 都不在右侧,故候选码含 AD,AD 可决定所有属性,候选码为 AD。

第 26 题:完全二叉树 100 个结点,最后一层叶结点数 n₀ = ⌈n/2⌉ = 50。

第 27 题:以 50 为基准,从右往左找小于 50 的 10,从左往右找大于 50 的 80(不满足),最终 10 与 50 交换,一趟后 10 30 20 50 80 的基准到位为 {10,30,20}, 50, {80}。实际一趟结果为 10 30 20 50 80。

第 29 题:由先序 ABDCE 与中序 DBACE 还原:根 A,左子树 {D,B},右子树 {C,E}。后序为 D B E C A → DBECA。

第 32 题:47→7,7→7(冲突,探测到 8),29→9,11→1,16→6,92→2(92 mod 10=2 空),故 92 存入地址 2。

第 37 题:数据量 = 44.1kHz × 16bit × 2声道 ÷ 8 = 176,400 字节。按 1000 进位为 176.4KB(B),按 1024 进位约为 172.3KB(D)。软考标准常以 1024 进位计,故选 D;两种进位在解析中均可接受,注意单位统一。

第 62 题:概要设计说明书对应 GB/T 8567 中规定的文档之一。


本试题根据《软件设计师考试大纲(2022)》相关要求编制,用于模拟训练与知识点自测。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询