计算机程序设计员 练习卷

四级 / 三级 / 二级 / 一级 | 15 题 | 姓名:__________ 得分:______

返回题库 隐藏答案 15 题30 题50 题100 题

1在C语言中执行 int a=5; int b=a++ + ++a; 后,b的值是

  1. A. 11
  2. B. 12
  3. C. 13
  4. D. 10

2某前端页面点击按钮后需向后端提交表单并局部刷新结果,下列实现思路中最合理的是哪一项?

  1. A. 监听按钮点击,使用 fetch 发送请求并将返回数据渲染到目标容器
  2. B. 监听按钮点击,直接修改 window.location 跳转到接口地址
  3. C. 监听按钮点击,用 form 的默认提交并让后端返回整页 HTML
  4. D. 监听按钮点击,使用 setTimeout 轮询数据库直到结果出现

3在 C 语言中执行语句 int a = 5; printf("%d", a++ + ++a); 时,若编译器遵循先计算右操作数再计算左操作数的求值顺序,则输出结果是

  1. A. 11
  2. B. 12
  3. C. 13
  4. D. 10

4关于冒泡排序的稳定性,下列判断正确的是

  1. A. 当相邻元素相等时不交换,冒泡排序是稳定的
  2. B. 冒泡排序一定不稳定,因为会交换相邻元素
  3. C. 冒泡排序的稳定性取决于数组初始顺序
  4. D. 冒泡排序稳定,但前提是每轮必须交换相等元素

5关于进程与线程的区别,以下叙述正确的有哪些(多选)

  1. A. 进程拥有独立的地址空间,线程共享所属进程的地址空间
  2. B. 线程切换通常比进程切换开销小,因为不涉及地址空间切换
  3. C. 同一进程内的线程可以直接读写对方的栈内存
  4. D. 进程间通信必须通过内核提供的机制,如管道或共享内存
  5. E. 一个线程崩溃必然导致同进程其他线程全部立即终止

6关于HTTP状态码302与301的区别,正确的描述是

  1. A. 302表示资源永久移动且客户端应更新书签
  2. B. 301表示资源临时移动且后续请求仍用原地址
  3. C. 302表示资源临时移动且后续请求仍用原地址
  4. D. 301与302都表示资源临时移动且行为完全一致

7在 Git 中,需要把已经提交到本地仓库但尚未推送的最后一次提交撤销并保留改动到工作区,应使用的命令是

  1. A. git reset --soft HEAD~1
  2. B. git reset --hard HEAD~1
  3. C. git checkout HEAD~1
  4. D. git revert HEAD

8HTML中给一个块级元素设置 margin-top: 20px 和其上方相邻块级元素 margin-bottom: 30px,两元素垂直间距最终为

  1. A. 20px
  2. B. 30px
  3. C. 50px
  4. D. 10px

9关于TCP三次握手,客户端发送SYN后收到服务器回复的SYN+ACK,此时客户端再发送ACK的主要作用是

  1. A. 确认服务器接收能力正常
  2. B. 确认客户端已收到服务器的SYN
  3. C. 协商后续数据传输的窗口大小
  4. D. 请求服务器立即开始发送数据

10在C语言中,表达式 5 / 2 * 2.0 的运算结果类型和值分别是

  1. A. double 类型,值为 4.0
  2. B. int 类型,值为 4
  3. C. double 类型,值为 5.0
  4. D. int 类型,值为 5

11前端页面中一个按钮点击后应只触发一次提交,但测试发现连点会重复提交。开发在事件处理函数中未做防抖也未禁用按钮,正确的修复环节是

  1. A. 在提交开始时禁用按钮并在请求结束后恢复
  2. B. 把click事件改为mouseover事件
  3. C. 在提交函数里用setTimeout延迟10秒再发送
  4. D. 把按钮的type由button改为submit

12HTTP 状态码 301 与 302 的关键区别在于

  1. A. 301 表示资源永久迁移,302 表示临时迁移
  2. B. 301 用于 HTTPS,302 用于 HTTP
  3. C. 301 由客户端缓存,302 由服务器缓存
  4. D. 301 只能用于 GET,302 只能用于 POST

13某函数需要返回多个值,在Go语言中较符合惯例的做法是

  1. A. 返回一个包含所有值的切片
  2. B. 返回多个具名返回值
  3. C. 通过全局变量传出
  4. D. 返回格式化后的字符串

14某后端接口在高并发下偶发返回旧数据,排查发现读请求走了从库而写请求走主库,且主从复制存在延迟,正确的处置思路是

  1. A. 把所有读请求强制路由到主库
  2. B. 在写后短时间内将该用户读请求路由到主库
  3. C. 增大从库连接池并缩短超时时间
  4. D. 对从库查询结果增加本地缓存

15某后端接口上线后偶发超时,日志显示数据库连接池活跃连接数持续等于最大连接数,此时首先应排查的环节是

  1. A. 前端静态资源是否过大
  2. B. 是否存在未释放的数据库连接
  3. C. 服务器网卡是否千兆
  4. D. 浏览器缓存是否开启

参考答案

  1. B 知识点是自增运算符与序列点。a++先取5再加1使a=6,随后++a使a=7并取7,故b=5+7=12。选项11错在把两次…
  2. A 知识点:AJAX 局部刷新。fetch 异步请求并局部更新 DOM 是标准做法。B 错,整页跳转会丢失当前页面状态;C …
  3. B 知识点为自增运算符与表达式中操作数求值顺序。若先算右操作数 ++a,a 变为 6,右操作数为 6;再算左操作数 a++,…
  4. A 知识点:排序稳定性。稳定性指相等元素的相对次序是否保持,冒泡排序在相等时不交换即可保持稳定。选项B误以为交换相邻元素必然…
  5. A、B、D 知识点:进程与线程模型。A、B、D 均正确;C 错,线程各自有独立栈,不能随意读写对方栈;E 错,线程崩溃可能影响进程但…
  6. C 知识点是HTTP重定向语义。302为临时重定向,客户端后续仍应请求原URL,C对;A把302说成永久;B把301说成临时…
  7. A 知识点是 Git reset 三种模式的区别。--soft 只移动 HEAD 保留暂存区和工作区改动。--hard 会丢…
  8. B 知识点是CSS外边距塌陷(margin collapsing)。相邻块级元素的上下外边距会合并取较大值,故为30px。选…
  9. B 知识点是TCP连接建立过程。第三次ACK用于确认客户端已收到服务器的SYN,使服务器进入ESTABLISHED状态。选项…
  10. A 知识点:整数除法与隐式类型转换。5/2 先按整数除法得 2,再与 2.0 相乘时 2 被提升为 double,结果为 4…
  11. A 知识点是重复提交的防护。提交期间禁用按钮可阻止连点,A对。B用mouseover会引入错误触发;C延迟10秒不解决连点且…
  12. A 知识点是重定向语义:301 表示永久移动,客户端与搜索引擎会更新链接;302 表示临时移动,后续请求仍用原 URL。选项…
  13. B 知识点是Go多返回值惯例。正确项:Go原生支持多返回值,可具名返回。错误项:切片丢失类型信息;全局变量破坏封装;字符串需…
  14. B 知识点是主从延迟下的读写一致性。写后短时间读主库可保证读己之写。选项0全走主库会失去读写分离意义并压垮主库;选项2连接池…
  15. B 知识点是连接池耗尽类故障定位。活跃连接数持续等于上限说明连接被占满,常见原因是代码中连接未关闭或长事务。前端静态资源、网…