☰
# 全国计算机技术与软件专业技术资格(水平)考试 程序设计语言、数据结构与算法、数据库、网络、多媒体、软件工程、软件设计方法
2026/10/3 2:35:48 网站建设 项目流程

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

软件设计师 模拟试题

依据官方《软件设计师考试大纲》编制

考试科目:

  • 科目一:计算机与软件工程知识(计算机化考试,选择题)
  • 科目二:软件设计(计算机化考试,问答题)

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

说明:本科目考查数据表示、逻辑运算、体系结构、操作系统、程序设计语言、数据结构与算法、数据库、网络、多媒体、软件工程、软件设计方法、标准与安全、信息化及专业英语等基础知识。每题给出的四个选项中,只有一个最符合题意。

一、数据表示与运算

1.在机器数表示法中,若采用补码表示整数,则-1(8 位二进制)的补码是( )。

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

2.若某浮点数的阶码用移码表示,尾数用补码表示,则浮点数规格化要求尾数( )。

  • A. 符号位与最高数值位不同
  • B. 最高数值位为 1
  • C. 尾数中不出现符号位
  • D. 符号位为 0

3.已知两个 8 位补码数A=0110 0101、B=1101 1010,则A OR B(按位或)的结果为( )。

  • A. 1111 1111
  • B. 0100 0000
  • C. 0110 0111
  • D. 1111 1100

4.十六进制数0x2F与十进制数 47 的关系是( )。

  • A. 相等
  • B. 0x2F 更大
  • C. 47 更大
  • D. 无法比较

5.下列关于海明校验码(Hamming Code)的描述中,正确的是( )。

  • A. 只能检错不能纠错
  • B. 校验位位数越多,纠错能力越强且冗余开销越低
  • C. 在 n 位数据位中添加 k 位校验位,须满足 2^k ≥ n+k+1
  • D. 校验位必须全部置于数据的最高位

二、计算机体系结构与性能

6.在 Cache 与主存构成的存储层次中,Cache 的命中率主要取决于( )。

  • A. 主存容量
  • B. CPU 时钟频率
  • C. 局部性原理(程序访问的时间与空间局部性)
  • D. 磁盘的读写速度

7.流水线方式下,若某指令流水线分为取指、分析、执行三段,各段耗时分别为 2ns、3ns、4ns,则该流水线的吞吐率理论上主要受限于( )。

  • A. 各段耗时之和
  • B. 耗时最长的一段(4ns)
  • C. 耗时最短的一段(2ns)
  • D. 指令条数

8.下列部件中,属于运算器核心组成的是( )。

  • A. 程序计数器(PC)
  • B. 算术逻辑单元(ALU)
  • C. 指令寄存器(IR)
  • D. 地址译码器

9.采用虚拟存储器的主要目的是( )。

  • A. 提高 CPU 运算速度
  • B. 扩大主存的逻辑存储容量
  • C. 降低硬盘成本
  • D. 减少 Cache 的缺页率

10.冯·诺依曼计算机结构的核心思想是( )。

  • A. 数据与指令分别存储在两个独立存储器中
  • B. 存储程序并按地址顺序执行
  • C. 并行处理多路数据
  • D. 采用分布式共享内存

三、操作系统

11.在进程调度中,可能导致"饥饿"(Starvation)现象的调度算法是( )。

  • A. 先来先服务(FCFS)
  • B. 时间片轮转(RR)
  • C. 短进程优先(SJF)
  • D. 最高响应比优先(HRRN)

12.操作系统中,进程与线程的主要区别在于( )。

  • A. 进程是调度的基本单位,线程是资源分配的基本单位
  • B. 线程是资源分配的基本单位,进程是调度的基本单位
  • C. 同一进程内的线程共享地址空间,而不同进程拥有独立的地址空间
  • D. 线程之间不能通信

13.在分页存储管理中,若页面大小为 4KB,逻辑地址为 0x0000 1234,则其页内偏移量为( )。

  • A. 0x0000
  • B. 0x1234
  • C. 0x0012
  • D. 0x0123

14.系统中有 3 个并发进程竞争某类资源,每个进程最多需要 2 个该类资源,则系统不发生死锁所需的最少资源数为( )。

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

15.下列不属于操作系统中文件目录管理作用的是( )。

  • A. 实现"按名存取"
  • B. 提高文件检索效率
  • C. 实现文件共享与保护
  • D. 直接决定磁盘的物理转速

四、程序设计语言与编译

16.编译程序的下列阶段中,与目标机器直接相关的是( )。

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

17.采用"后缀表达式(逆波兰式)"表示表达式的主要优点是( )。

  • A. 便于人的阅读
  • B. 不需要括号即可唯一确定运算次序,便于编译处理
  • C. 能减少源程序的长度
  • D. 只能用于整数运算

18.下列关于解释程序与编译程序的叙述,正确的是( )。

  • A. 解释程序先生成目标代码再执行
  • B. 编译程序逐句解释源程序边解释边执行
  • C. 解释程序不生成目标代码文件,执行效率通常低于编译方式
  • D. 两者都要求源代码编译成机器码后才能运行

19.在 C 语言中,sizeof(int)的值在 32 位编译环境下通常为( )。

  • A. 2
  • B. 4
  • C. 8
  • D. 由操作系统位数决定,与编译器无关

20.下列属于脚本(解释型)语言的是( )。

  • A. C++
  • B. Java
  • C. Python
  • D. Visual C++

五、数据结构与算法

21.对长度为 n 的顺序表进行顺序查找,查找成功的平均查找长度(ASL)为( )。

  • A. n
  • B. n/2
  • C. (n+1)/2
  • D. log₂n

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

  • A. 500
  • B. 501
  • C. 500 或 501
  • D. 无法确定

23.对含有 n 个元素的序列进行快速排序,其最坏情况下的时间复杂度为( )。

  • A. O(n)
  • B. O(n log n)
  • C. O(n²)
  • D. O(log n)

24.下列关于栈和队列的说法中,错误的是( )。

  • A. 栈是后进先出(LIFO)结构
  • B. 队列是先进先出(FIFO)结构
  • C. 栈和队列都只能在线性表的端点进行插入/删除
  • D. 递归调用过程中的现场保护通常使用队列

25.图的深度优先遍历(DFS)所依赖的辅助数据结构是( )。

  • A. 队列
  • B. 栈(或系统递归栈)
  • C. 哈希表
  • D. 堆

26.在哈希查找中,产生"冲突"的原因是( )。

  • A. 关键字太少
  • B. 哈希函数将不同的关键字映射到同一地址
  • C. 表长度过大
  • D. 关键字的类型不同

27.采用二分查找的前提条件是( )。

  • A. 线性表无需有序
  • B. 线性表必须采用顺序存储且按关键字有序
  • C. 线性表必须采用链式存储
  • D. 表内元素不能重复

六、数据库

28.关系数据库中,用于表示"实体"及其"联系"并转换为关系模式时,一个多对多联系一般转换为( )。

  • A. 一个独立的关系模式
  • B. 并入某一实体的关系模式
  • C. 两个关系模式
  • D. 视情况合并到任意一方

29.有关系R(A,B,C),查询"所有属性值都大于 10 的元组"应使用的操作为( )。

  • A. 投影 π
  • B. 选择 σ
  • C. 连接 ⋈
  • D. 并 ∪

30.设关系模式SC(学号, 姓名, 课程号, 课程名, 成绩),其中学号为主键。该模式存在的问题是( )。

  • A. 不存在冗余,满足 3NF
  • B. 存在部分函数依赖(如姓名仅依赖于学号),不满足 2NF
  • C. 存在传递函数依赖,不满足 3NF
  • D. 完全符合 BCNF

31.事务的原子性(Atomicity)是指( )。

  • A. 事务一旦提交,其对数据库的修改是持久的
  • B. 事务中的所有操作要么全部执行,要么全部不执行
  • C. 并发事务之间互不干扰
  • D. 事务的隔离级别为可重复读

32.在数据库的三级模式结构中,用户面对并操作的是( )。

  • A. 外模式(子模式 / 用户模式)
  • B. 概念模式
  • C. 内模式
  • D. 物理模式

七、计算机网络

33.OSI 参考模型自下而上的顺序中,位于"网络层"与"传输层"之间、负责可靠传输的是( )。

  • A. 物理层
  • B. 数据链路层
  • C. 传输层
  • D. 应用层

34.在 TCP/IP 协议族中,负责将 IP 地址转换为物理(MAC)地址的协议是( )。

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

35.私有 IP 地址192.168.1.10所属的地址类别为( )。

  • A. A 类
  • B. B 类
  • C. C 类
  • D. D 类

36.某 C 类网络划分子网后,子网掩码为255.255.255.240,则该子网最多可容纳的主机数为( )。

  • A. 14
  • B. 16
  • C. 30
  • D. 62

37.下列关于路由协议的说法中,属于内部网关协议(IGP)的是( )。

  • A. BGP
  • B. RIP 与 OSPF
  • C. DNS
  • D. FTP

八、多媒体技术

38.对声音信号进行数字化时,采样频率应不低于信号最高频率的( )倍,才能不失真地恢复原信号(奈奎斯特定理)。

  • A. 1
  • B. 2
  • C. 4
  • D. 8

39.一幅 1024×768、24 位真彩色的未压缩位图,其数据量约为( )。

  • A. 1.5 MB
  • B. 2.25 MB
  • C. 4.5 MB
  • D. 9 MB

40.MPEG 视频压缩标准中,利用相邻帧之间的时间冗余所采用的帧类型不包括( )。

  • A. I 帧(帧内编码帧)
  • B. P 帧(预测帧)
  • C. B 帧(双向预测帧)
  • D. R 帧(冗余帧)

九、软件工程与项目管理

41.软件生命周期中,明确"软件要做什么、不做什么"的阶段是( )。

  • A. 可行性分析
  • B. 需求分析
  • C. 概要设计
  • D. 详细设计

42.在 CMM(能力成熟度模型)中,标记"软件过程已文档化且可重复"的成熟度等级为( )。

  • A. 初始级(1 级)
  • B. 可重复级(2 级)
  • C. 已定义级(3 级)
  • D. 优化级(5 级)

43.UML 中,用于描述系统用例与参与者之间关系的图是( )。

  • A. 类图
  • B. 用例图
  • C. 序列图
  • D. 部署图

44.在软件开发项目管理中,关键路径(Critical Path)的含义是( )。

  • A. 耗时最短的活动序列
  • B. 决定项目最早完成时间的活动序列
  • C. 包含资源最多的活动序列
  • D. 风险最高的活动序列

45.软件测试中,先对每个模块单独测试,再逐步把模块组装起来进行测试的策略称为( )。

  • A. 自底向上测试
  • B. 单元测试与集成测试的组合策略
  • C. 系统测试
  • D. 验收测试

十、软件设计方法与技术

46.模块间耦合程度由低到高,下列顺序正确的是( )。

  • A. 数据耦合 < 控制耦合 < 公共耦合 < 内容耦合
  • B. 内容耦合 < 公共耦合 < 控制耦合 < 数据耦合
  • C. 控制耦合 < 数据耦合 < 内容耦合 < 公共耦合
  • D. 公共耦合 < 数据耦合 < 内容耦合 < 控制耦合

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

  • A. 策略(Strategy)
  • B. 单例(Singleton)
  • C. 观察者(Observer)
  • D. 装饰(Decorator)

48.采用"适配器(Adapter)"设计模式的意图是( )。

  • A. 将一个类的接口转换成客户希望的另一个接口
  • B. 动态地为对象添加职责
  • C. 定义算法家族并使其可相互替换
  • D. 保证一个类仅有一个实例

49.面向对象设计中,"高内聚、低耦合"原则在包(Package)划分中的体现是( )。

  • A. 尽可能把所有类放进一个包
  • B. 把功能相关、协作紧密的类放在同一包内,减少包间依赖
  • C. 每个类单独一个包
  • D. 包与包之间必须完全独立、互不引用

50.在数据流图(DFD)中,用于描述系统加工所依据的、只读的静态数据的符号是( )。

  • A. 加工
  • B. 数据流
  • C. 外部实体
  • D. 数据存储

十一、标准化、信息安全与法律法规

51.某程序员在本单位任职期间完成的、主要利用单位物质技术条件开发的软件,其软件著作权的归属一般为( )。

  • A. 程序员个人
  • B. 该单位(职务作品)
  • C. 双方共有
  • D. 视为公有领域

52.下列属于对称(私钥)加密算法的是( )。

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

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

  • A. 加密明文内容使其不可读
  • B. 提供数据的完整性、真实性(身份认证)与抗抵赖性
  • C. 压缩数据体积
  • D. 提高传输速率

54.在信息安全中,通过向目标系统发送大量请求使其无法提供正常服务,这类攻击称为( )。

  • A. 木马攻击
  • B. 拒绝服务攻击(DoS)
  • C. 中间人攻击
  • D. 钓鱼攻击

55.《中华人民共和国著作权法》保护的对象是( )。

  • A. 思想、构思本身
  • B. 思想的表达形式(作品)
  • C. 算法、数学公式本身
  • D. 商业方法

十二、信息化与计算机应用基础

56.下列关于信息化的说法,不正确的是( )。

  • A. 信息化是充分利用信息技术改造传统产业、促进经济社会发展的过程
  • B. 企业信息化包括生产过程、管理过程的信息化
  • C. 信息化与数据安全无关
  • D. 国家信息化体系包括信息资源、信息网络、信息技术应用等要素

57.下列不属于电子政务主要功能的是( )。

  • A. 政府信息公开
  • B. 在线办事服务
  • C. 互动交流与监管
  • D. 替代全部人工行政决策

58.云计算中,向用户提供可直接使用的软件应用服务的模式称为( )。

  • A. IaaS
  • B. PaaS
  • C. SaaS
  • D. DaaS

十三、专业英语(阅读理解)

59.阅读下列英文段落,选择正确的理解:

“The software design phase translates the requirements into a blueprint for constructing the software. The design should specify the overall architecture, the modules, their interfaces, and the algorithms used. Good design promotes maintainability and reduces development risk.”

  • A. 设计阶段将需求转化为软件构造的蓝图,应规定总体架构、模块、接口及所用算法
  • B. 设计阶段只负责编写代码
  • C. 设计阶段与维护性无关
  • D. 设计阶段增加开发风险

60.单词 “encapsulation” 在面向对象语境中最恰当的中文含义是( )。

  • A. 继承
  • B. 多态
  • C. 封装
  • D. 抽象

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

说明:本科目依据《软件设计》科目考试内容,采用问答题形式,综合考查数据流图设计、数据库设计、面向对象设计与算法设计能力。请认真审题、按要求作答。

试题一:数据流图(DFD)设计(共 15 分)

某"图书借阅管理系统"的业务描述如下:

读者向系统提交借书请求,系统根据读者借阅情况与图书库存判断是否允许借阅;允许则登记借阅记录并更新库存,同时向读者返回借阅成功信息;拒绝则向读者返回拒绝原因。图书管理员负责维护图书信息和读者信息,并处理读者归还的图书,归还时更新借阅记录与库存。

1.(4 分)绘制该系统的顶层数据流图(0 层上下文图),标明外部实体、数据流及系统名称。

2.(6 分)绘制系统的1 层数据流图,划分出主要加工(至少包含:借阅处理、归还处理、图书信息管理、读者信息管理),并标注各加工之间的数据流名称。

3.(5 分)为数据流"借阅请求"和"借阅记录"各编制一条数据字典条目,格式应包含:数据项名、类型、长度、取值范围、说明等。


试题二:数据库设计(共 20 分)

某高校选课系统涉及以下实体与联系:

  • 学生:学号、姓名、院系、年级
  • 课程:课程号、课程名、学分、任课教师
  • 一名学生可选修多门课程,一门课程可被多名学生选修;每个学生选修某门课程产生"成绩"。

1.(5 分)画出该系统的E-R 图,注明实体、属性和联系类型(1:1、1:n、m:n)。

2.(6 分)将 E-R 图转换为关系模式,写出每个关系模式的主键(用下划线标注)和外键。

3.(5 分)用 SQL 语句实现:建立"选课"关系表(含成绩字段),并设置主键与外键约束。

4.(4 分)判断关系模式"选课(学号, 课程号, 成绩)"是否满足 3NF,说明理由。


试题三:面向对象设计(共 20 分)

某"图形绘制系统"中,需要支持绘制圆形(Circle)、矩形(Rectangle)、三角形(Triangle),后续还可能扩展新图形。系统希望使用统一的绘制接口,并能动态地在图形上增加"阴影""边框"等装饰效果。

1.(6 分)请基于抽象工厂模式或工厂方法模式设计图形对象的创建机制,画出相应的UML 类图(可含接口 Shape、具体图形类、工厂类等)。

2.(6 分)结合"装饰模式(Decorator)“,设计"阴影”"边框"装饰类,画出 UML 类图,并说明装饰模式相对于"为每个图形直接增加属性/方法"的优势。

3.(8 分)用 Java 或 C++ 给出核心代码实现:

  • 抽象图形接口Shape(含draw()方法);
  • 两个具体图形类;
  • 装饰器基类与两个具体装饰类;
  • 编写一段客户端代码,演示"绘制带阴影的圆形"。

试题四:算法设计与程序填空(共 25 分)

某数组a[0..n-1]待升序排序。下面给出的是快速排序的递归实现(C 语言,部分空缺)。

voidQuickSort(inta[],intlow,inthigh){intpivotpos;if(low<high){pivotpos=Partition(a,low,high);// 划分,返回基准最终位置QuickSort(a,low,pivotpos-1);// (1)QuickSort(a,pivotpos+1,high);// (2)}}intPartition(inta[],intlow,inthigh){intpivot=a[low];// 以 a[low] 为基准while(low<high){while(low<high&&a[high]>=pivot)high--;// (3)a[low]=a[high];while(low<high&&a[low]<=pivot)low++;// (4)a[high]=a[low];}a[low]=pivot;// (5)returnlow;}

1.(4 分)结合注释,说明Partition函数的作用及算法思想。

2.(4 分)分析该快速排序算法平均时间复杂度与最坏时间复杂度,并指出最坏情况发生的场景。

3.(5 分)说明该排序算法的空间复杂度(含递归调用栈),并分析其是否稳定排序。

4.(6 分)设数组a[] = {49, 38, 65, 97, 76, 13, 27},请手工模拟第一次Partition(a, 0, 6)的完整执行过程,写出每一步数组的变化,并给出划分后基准 49 的最终位置。

5.(6 分)若要改为非递归实现,应使用何种辅助数据结构?简述思路并给出关键代码片段。


试题五:软件工程与项目管理综合(共 20 分)

某电商系统项目的部分活动及其依赖关系与工期如下表:

活动前置活动工期(天)
A—5
BA7
CA4
DB6
EB、C3
FD、E8
GE2

1.(6 分)绘制该项目的网络计划图(AON 结点图或箭线图均可)。

2.(6 分)计算每条路径的总工期,指出关键路径及其总工期。

3.(4 分)若活动 D 的工期由 6 天延长至 10 天,关键路径是否改变?项目总工期变为多少?

4.(4 分)说明项目经理为缩短总工期通常可采用的两类措施(时间—成本平衡、快速跟进等),并各举一例。


附:参考答案与要点

建议先独立作答后再对照。以下为要点性参考答案。

科目一选择题参考答案

题号答案题号答案题号答案题号答案题号答案
1B13B25B37B49B
2A14B26B38B50D
3A15D27B39B51B
4A16D28A40D52B
5C17B29B41B53B
6C18C30B42B54B
7B19B31B43B55B
8B20C32A44B56C
9B21C33C45B57D
10B22B34B46A58C
11C23C35C47B59A
12C24D36A48A60C

说明:第 14 题用"每个进程最多申请 2 个、总进程 3 个"判定死锁——3 个进程各自已占用 1 个时,再分配 1 个即可让任一进程满足需求,故最少 4 个资源即可避免死锁。第 22 题完全二叉树 1001 结点,度为 2 的结点数 n₂ = (1001-1)/2 = 500,叶子 n₀ = n₂ + 1 = 501。第 36 题掩码 255.255.255.240,主机位 4 位,可用主机 2⁴ - 2 = 14。

科目二问答题要点

试题一要点

  1. 顶层图:外部实体为「读者」「图书管理员」,系统为「图书借阅管理系统」,数据流包括借书请求、借阅结果、归还信息、图书/读者维护信息等。
  2. 1 层图加工:借阅处理、归还处理、图书信息管理、读者信息管理;涉及数据存储(图书表、读者表、借阅记录表)。
  3. 数据字典示例:
    • 借阅请求 = 读者编号 + 图书编号 + 借阅日期 + 借阅数量;类型为字符串/数值组合。
    • 借阅记录 = 读者编号 + 图书编号 + 借阅日期 + 归还日期 + 状态;其中状态取值范围 {在借, 已还}。

试题二要点

  1. E-R 图:学生、课程为实体,学生—课程为m:n联系,联系属性含"成绩"。
  2. 关系模式:
    • 学生(学号, 姓名, 院系, 年级),主键:学号;
    • 课程(课程号, 课程名, 学分, 任课教师),主键:课程号;
    • 选课(学号, 课程号, 成绩),主键:(学号, 课程号),外键:学号、课程号。
  3. SQL:
    CREATETABLE选课(学号VARCHAR(10),课程号VARCHAR(10),成绩INT,PRIMARYKEY(学号,课程号),FOREIGNKEY(学号)REFERENCES学生(学号),FOREIGNKEY(课程号)REFERENCES课程(课程号));
  4. 选课(学号, 课程号, 成绩)中,候选键为 (学号, 课程号),成绩完全函数依赖候选键,且不存在传递依赖,满足 3NF(且满足 BCNF)。

试题三要点

  1. 采用抽象工厂/工厂方法:定义接口Shape(draw()),具体图形类Circle、Rectangle、Triangle实现之;工厂类负责按需创建图形对象,便于扩展新图形。
  2. 装饰模式:定义ShapeDecorator装饰基类(持有Shape引用),派生ShadowDecorator、BorderDecorator,在draw()前/后附加装饰逻辑。优势:遵循开闭原则,无须修改已有图形类即可动态组合多种装饰。
  3. 核心代码要点:接口Shape、两个具体图形、装饰基类与两个装饰类、客户端演示"绘制带阴影的圆形"。

试题四要点

  1. Partition以a[low]为基准,一趟划分将小于基准的元素移到左侧、大于基准的元素移到右侧,返回基准最终下标。
  2. 平均 O(n log n),最坏 O(n²)(输入已有序或基本有序且每次基准为最值时)。
  3. 空间复杂度平均 O(log n)(递归栈),最坏 O(n);不稳定(相等元素相对次序可能改变)。
  4. 模拟一趟划分:以 49 为基准,最终 49 处于第 4 个位置(下标 3),数组变为{27, 38, 13, 49, 76, 97, 65}(示例顺序,需逐步写出)。
  5. 用栈模拟递归,将 (low, high) 区间入栈,循环划分并入栈左右子区间。

试题五要点

  1. 网络图略(见下文路径推导)。
  2. 路径:
    • A→B→D→F:5+7+6+8 = 26
    • A→B→E→F:5+7+3+8 = 23
    • A→B→E→G:5+7+3+2 = 17
    • A→C→E→F:5+4+3+8 = 20
    • A→C→E→G:5+4+3+2 = 14
    • 关键路径为A→B→D→F,总工期26 天。
  3. 若 D 延长至 10 天:A→B→D→F = 5+7+10+8 = 30,仍为最长,关键路径不变(仍为 A→B→D→F),总工期变为30 天。
  4. 措施举例:
    • 时间—成本平衡(赶工):对关键路径上的活动增加资源以压缩工期,如对 F 增加人力;
    • 快速跟进(Fast Tracking):将原本串行的活动并行化,如 D 与 E 并行开展。

备考提示:软件设计师考试分上、下午两场。上午题(科目一)覆盖面广,重在理解与记忆;下午题(科目二)重在动手设计,建议结合真题练习数据流图、E-R 图、UML 与算法填空。祝考试顺利!

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

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

立即咨询