Computer Programmer practice paper
四级 / 三级 / 二级 / 一级 | 30 questions | Name:__________ Score:______
1在C语言中执行 int a=5; int b=a++ + ++a; 后,b的值是
2在 Git 中,已修改工作区文件但尚未暂存,此时执行 git checkout -- <file> 的效果是
3某前端页面点击按钮后需向后端提交表单并局部刷新结果,下列实现思路中最合理的是哪一项?
4在 MySQL 中,对已有数据的表执行 ALTER TABLE 添加一个 NOT NULL 且无默认值的列,若表中已有记录,通常结果是
5在 C 语言中执行语句 int a = 5; printf("%d", a++ + ++a); 时,若编译器遵循先计算右操作数再计算左操作数的求值顺序,则输出结果是
6在 Python 中执行表达式 len("程序设计") 的结果是
7关于冒泡排序的稳定性,下列判断正确的是
8在Python中,关于列表推导式 [x*2 for x in range(3)] 的结果,正确的是
9关于进程与线程的区别,以下叙述正确的有哪些(multiple)
10HTTP/1.1中启用持久连接后,若客户端发送的请求未带Connection头,服务器默认采取的行为是
11关于HTTP状态码302与301的区别,正确的描述是
12在关系数据库中,一个事务对某行加了排他锁后,另一事务再对该行加共享锁会
13在 Git 中,需要把已经提交到本地仓库但尚未推送的最后一次提交撤销并保留改动到工作区,应使用的命令是
14在面向对象设计中,子类覆盖父类方法时把父类方法的访问权限从 public 改为 private,这主要违反了
15HTML中给一个块级元素设置 margin-top: 20px 和其上方相邻块级元素 margin-bottom: 30px,两元素垂直间距最终为
16用链表实现栈时,若规定只能在链表头部进行插入和删除,则入栈和出栈操作的时间复杂度分别是
17关于TCP三次握手,客户端发送SYN后收到服务器回复的SYN+ACK,此时客户端再发送ACK的主要作用是
18Java 中 `String s1 = "abc"; String s2 = new String("abc");` 则 `s1 == s2` 与 `s1.equals(s2)` 的结果分别是
19在C语言中,表达式 5 / 2 * 2.0 的运算结果类型和值分别是
20TCP 三次握手中,客户端收到服务器发来的 SYN+ACK 后应发送的报文段是
21前端页面中一个按钮点击后应只触发一次提交,但测试发现连点会重复提交。开发在事件处理函数中未做防抖也未禁用按钮,正确的修复环节是
22HTML中要让一个块级元素在父容器内水平居中且父容器宽度固定,下列CSS写法正确的是
23HTTP 状态码 301 与 302 的关键区别在于
24某程序员用 Python 读取一个 2GB 的日志文件并统计关键词出现次数,程序运行后内存迅速涨到数 GB 并崩溃,最可能的原因是?
25某函数需要返回多个值,在Go语言中较符合惯例的做法是
26在C语言中,表达式 sizeof(char) + sizeof(int) 在常见32位平台上求值后通常得到的结果是
27某后端接口在高并发下偶发返回旧数据,排查发现读请求走了从库而写请求走主库,且主从复制存在延迟,正确的处置思路是
28在关系数据库中,若要保证一个事务的修改在提交前不被其他事务看到,应设置的隔离级别是
29某后端接口上线后偶发超时,日志显示数据库连接池活跃连接数持续等于最大连接数,此时首先应排查的环节是
30Python 中用 requests 库请求一个返回 JSON 的接口,取回响应后解析为字典最直接的做法是哪一项
Answer key
- B 知识点是自增运算符与序列点。a++先取5再加1使a=6,随后++a使a=7并取7,故b=5+7=12。选项11错在把两次…
- A 知识点是 Git 工作区与暂存区关系。checkout -- 会用暂存区版本覆盖工作区修改。删除提交历史是 reset …
- A 知识点:AJAX 局部刷新。fetch 异步请求并局部更新 DOM 是标准做法。B 错,整页跳转会丢失当前页面状态;C …
- C 知识点:MySQL 加非空无默认值列的行为。严格模式下会报错,需指定默认值或允许 NULL。A 项把严格模式下的隐式转换…
- B 知识点为自增运算符与表达式中操作数求值顺序。若先算右操作数 ++a,a 变为 6,右操作数为 6;再算左操作数 a++,…
- A 知识点:Python 中 len() 对字符串返回字符个数,中文字符按一个字符计。"程序设计"共 4 个汉字,故结果为 …
- A 知识点:排序稳定性。稳定性指相等元素的相对次序是否保持,冒泡排序在相等时不交换即可保持稳定。选项B误以为交换相邻元素必然…
- A 知识点为列表推导式。range(3)产生0、1、2,各乘2得0、2、4。选项含2、4、6起点错;0、1、2未乘2;多出6…
- A、B、D 知识点:进程与线程模型。A、B、D 均正确;C 错,线程各自有独立栈,不能随意读写对方栈;E 错,线程崩溃可能影响进程但…
- B HTTP/1.1默认持久连接,未带Connection头时连接保持,直到超时或收到close。关闭连接、升级HTTP/2…
- C 知识点是HTTP重定向语义。302为临时重定向,客户端后续仍应请求原URL,C对;A把302说成永久;B把301说成临时…
- B 知识点是数据库锁兼容性。排他锁与共享锁不兼容,后申请者需等待前者释放。选立即获得者忽略了互斥性;选自动升级者混淆了锁升级…
- A 知识点是 Git reset 三种模式的区别。--soft 只移动 HEAD 保留暂存区和工作区改动。--hard 会丢…
- A 知识点是SOLID原则。子类收紧访问权限会使父类引用无法调用原方法,破坏子类可替换父类的里氏替换原则。开闭原则讲扩展开放…
- B 知识点是CSS外边距塌陷(margin collapsing)。相邻块级元素的上下外边距会合并取较大值,故为30px。选…
- A 知识点是链表栈的操作位置与复杂度。头部插入和头部删除都只需改动头指针和常数个指针域,都是O(1),故A正确。B误以为出栈…
- B 知识点是TCP连接建立过程。第三次ACK用于确认客户端已收到服务器的SYN,使服务器进入ESTABLISHED状态。选项…
- A 知识点为 Java 字符串常量池与对象引用比较。s1 指向常量池对象,s2 指向堆中新对象,故 == 比较引用为 fal…
- A 知识点:整数除法与隐式类型转换。5/2 先按整数除法得 2,再与 2.0 相乘时 2 被提升为 double,结果为 4…
- B 知识点:TCP 建连流程。第三步客户端回 ACK 确认服务器序号,连接建立。错误项分析:SYN 是第一步请求;FIN 用…
- A 知识点是重复提交的防护。提交期间禁用按钮可阻止连点,A对。B用mouseover会引入错误触发;C延迟10秒不解决连点且…
- A 知识点是块级元素水平居中。设置左右外边距为 auto 且元素有确定宽度即可居中,故 A 对;B 是行内内容居中,对块级元…
- A 知识点是重定向语义:301 表示永久移动,客户端与搜索引擎会更新链接;302 表示临时移动,后续请求仍用原 URL。选项…
- A 知识点:大文件流式处理。正确项对,readlines() 会把所有行载入列表,2GB 文件极易撑爆内存。with ope…
- B 知识点是Go多返回值惯例。正确项:Go原生支持多返回值,可具名返回。错误项:切片丢失类型信息;全局变量破坏封装;字符串需…
- C 知识点是sizeof运算符返回类型占字节数。char占1字节、int占4字节,相加为5,故C正确;A把int当1字节;B…
- B 知识点是主从延迟下的读写一致性。写后短时间读主库可保证读己之写。选项0全走主库会失去读写分离意义并压垮主库;选项2连接池…
- A 知识点为事务隔离级别。读已提交保证只能读到已提交数据,未提交修改不可见,故a项正确。读未提交会读到未提交数据;可重复读主…
- B 知识点是连接池耗尽类故障定位。活跃连接数持续等于上限说明连接被占满,常见原因是代码中连接未关闭或长事务。前端静态资源、网…
- B 知识点是 requests 响应对象的 JSON 解析。正确项:response.json() 内部按响应声明的编码解析…
