news 2026/4/23 11:14:50

GESP2025年12月认证C++八级真题与解析(单选题7-9)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
GESP2025年12月认证C++八级真题与解析(单选题7-9)


🧩 第 7 题:两点之间的“最短直线”(数学 + C++ 陷阱题)


1、📖 故事背景

(1)在坐标王国🗺️,
有两个小精灵站在平面上的两个点:

点 A:(x1, y1) 点 B:(x2, y2)

(2)国王问:

👑“它们之间的直线距离是多少?”


(3)🧠 数学公式(你一定见过!)


(4)🧠 但!这是 C++ 编程考试

👉不是写公式就完了
👉 要写“对的 C++ 表达式”


2、🧩 四个选项逐个看(重点!)


(1)❌ A 选项

sqrt((x1 - x2) ^ 2 + (y1 - y2) ^ 2)

🚨大坑!

  • ^在 C++ 里不是平方

  • 它是:按位异或

📌 所以这是完全错误的


(2) ❌ C 选项

pow(x1 - x2, 2) + pow(y1 - y2, 2)

❌ 少了什么?

👉少了 sqrt(开平方)

这是“平方和”,不是“距离”


(3)❌ D 选项

abs(x1 - x2) + abs(y1 - y2)

这是:

  • 曼哈顿距离 🚕

  • 不是直线距离


(4)✅ B 选项(唯一正确)

sqrt(pow(x1 - x2, 2) + pow(y1 - y2, 2))

✔️ 和数学公式一模一样
✔️ 用了pow
✔️ 用了sqrt


✅ 正确答案

👉B


3、🌟记忆口诀

  • ❗ C++ 中^不是平方

  • ✔️ 平方要用pow

  • ✔️ 求平方根要用sqrt



🧩 第 8 题:变量“影分身之术”(引用 & 的本质)


1、📖 故事背景

(1)在变量王国👑,
有一个士兵:

int a = 10;

后来,魔法师施展了一个法术:

int &b = a;

🪄 b 成了 a 的“影分身”

然后执行:

b = 20;

(2)国王问:

👑那 a 现在是多少?


2、🧠 引用(&)到底是什么?

(1)🔑 一句话理解:

引用 = 变量的“别名”

就像:

  • 本名:a

  • 小名:b

但他们是同一个人


(2)🧠 内存里的真实情况

内存地址:0x100 里面的值:10 名字:a、b(两个名字)

当你写:

b = 20;

等价于:

a = 20;

3、✅ 正确答案

👉B. 20


4、❌ 其他选项为什么错?

  • A:10 ❌(那是没理解引用)

  • C:30 ❌(凭空加的)

  • D:编译错误 ❌(完全合法)


5、🌟记忆口诀

  • ✔️ 引用不是复制

  • ✔️ 引用不会新开空间

  • ✔️ 引用后,改 b 就是改 a



🧩 第 9 题:程序跑得快不快?(时间复杂度)


1、📖 故事背景

算法跑步大赛🏃‍♂️ 中:

  • 有些程序跑得像 🚀 火箭

  • 有些像 🐢 乌龟

裁判不关心具体跑几秒,只关心:

当 n 变得很大时,它慢不慢?


2、🧠 这题考的是什么?

👉时间复杂度

3、🧠 时间复杂度是啥?

📌“n 变大,循环跑几次?”

我们只关心:

  • 有几层循环

  • 跑的次数与n有啥关系


4、🧠 常见时间复杂度对照表

写法复杂度
一层 forO(n)
两层 forO(n²)
三层 forO(n³)
每次减半O(log n)

5、🧠 本题的核心判断方法

(1)👀 看程序结构(不看细节)

1️⃣ 有没有循环?
2️⃣ 几层循环?
3️⃣ 内层循环跑几次?


(2)👉 本题结构

1️⃣ 第一重循环

for (int i = 1; i <= n; i++)

时间复杂度O(n)


2️⃣ 第二重循环

for (int j = 1; j * j <= i; j++)

时间复杂度O(sqrt(n))


3️⃣🧠 结论

这段代码最终的时间复杂度是:

O(n) * O(sqrt(n)) = O(n * sqrt(n) )


6、✅ 正确答案

👉C


7、🌟 记忆口诀

  • ✔️ 时间复杂度 ≠ 运行时间

  • ✔️ 要忽略常数、只看最大项

  • ✔️ 首先看“循环层数”

  • ✔️ 然后看“循环次数”


版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 6:08:34

SimpleDateFormat 线程安全问题详解

1、重现 SimpleDateFormat 类的线程安全问题面试中常提到 SimpleDateFormat 线程不安全&#xff0c;为了重现这个问题&#xff0c;可以使用线程池结合 CountDownLatch 和 Semaphore 类。示例代码javapackage com.batch.controller;import java.text.SimpleDateFormat; import j…

作者头像 李华
网站建设 2026/3/13 20:21:57

AI如何帮你自动生成JAVA注解代码?

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 请生成一个完整的JAVA项目&#xff0c;包含以下功能&#xff1a;1. 使用Spring Boot框架&#xff1b;2. 包含常见的Controller、Service、Repository层注解&#xff1b;3. 实现一个…

作者头像 李华
网站建设 2026/4/23 14:43:42

AI如何优化10000GDCN在线测速工具的开发

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个10000GDCN在线测速工具&#xff0c;要求使用AI自动生成前端界面和后端逻辑。前端应包括测速按钮、实时速度显示图表和历史记录功能。后端需要实现网络请求测速算法&#x…

作者头像 李华
网站建设 2026/4/23 14:50:30

十分钟搞定:用云端GPU训练你的第一个中文识别模型

十分钟搞定&#xff1a;用云端GPU训练你的第一个中文识别模型 作为一名刚接触深度学习的编程爱好者&#xff0c;你是否遇到过这样的困扰&#xff1a;想训练一个简单的图像识别模型&#xff0c;但在自己的笔记本电脑上跑一次训练就要耗费一整天&#xff1f;更让人头疼的是&#…

作者头像 李华
网站建设 2026/4/23 11:22:33

AI助力React开发:自动生成组件代码与逻辑

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 请生成一个React函数组件&#xff0c;实现一个可折叠的FAQ列表。要求&#xff1a;1. 使用useState管理展开/折叠状态 2. 接受questions数组作为props&#xff0c;格式为{id, quest…

作者头像 李华
网站建设 2026/4/23 13:04:07

Notepad++ vs 其他编辑器:为什么它依然是开发者的首选

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 设计一个Notepad插件&#xff0c;用于对比不同文本编辑器的性能。插件可以记录和显示编辑器的启动时间、内存占用、文件加载速度等数据&#xff0c;并生成可视化报告。支持自定义测…

作者头像 李华