GESP2025年9月认证C++四级真题与解析(单选题9-15)


🌟 第 9 题:排序算法的“稳定性”是什么?

(1)❓ 题目问

下面关于排序算法稳定性的说法,哪个是错误的?

正确答案:✅C. 选择排序是稳定的排序算法(错误)


(2)🧸 故事讲解:排队的小朋友 🎒

假设有几位小朋友,身高一样,但衣服颜色不同

A(红) B(蓝) C(红)

(3)如果按“身高”排序:

  • 稳定排序
    👉 红 A 还在 红 C 前面

  • 不稳定排序
    👉 红 A 和 红 C 的顺序可能被换掉


(4)📌 三种排序的性格

排序算法稳定吗原因
冒泡排序✅ 稳定只交换相邻
插入排序✅ 稳定像插队
选择排序❌ 不稳定会“远距离交换”

(5)🧠 记忆口诀

👉选择排序爱乱换,不稳定

👉冒泡、插入都稳定



🌟 第 10 题:选择排序

(1)❓ 题目核心

让数组nums从小到大排序

正确答案:✅A

nums[j] < nums[minIndex] swap(nums[i], nums[minIndex])

(2)🧸 选择排序原理 👑

  • i轮:

    • 先假设第 i 个最小

    • 在后面找更小的

    • 如果找到了,就交换

  • 最后结果:
    👉把从i向后最小的,确保换到第 i 位


(3)🧠 为什么是<

因为我们要从小到大排列,需要找最小值


(4)🧠 记忆口诀

👉从小到大来排列

👉找最小,换到前



🌟 第 11 题:插入排序

(1)正确答案:✅A

arr[j] > key arr[j + 1] = key

(2)🧸 插入排序像什么?

整理扑克牌 🃏

  • 左边的牌已经排好

  • 右边新来一张

  • 往左找位置,插进去


(3)🔍 while 循环含义

while (j >= 0 && arr[j] > key)

意思是:

👉 只要前面的牌比我大,就往右挪


(4)🧠 记忆口诀

👉大的往后挪,数组腾出位置,插中间



🌟 第 12 题:插入排序的时间复杂度

(1)正确答案:✅B

最好情况:O(n)
最坏情况:O(n²)


(2)😊 最好情况(已经排好队)

1 2 3 4 5
  • 每个数只看一眼

  • 👉很快


(3)😭 最坏情况(全反着)

5 4 3 2 1
  • 每次都要一路往前挪

  • 👉很慢


(4)🧠 记忆口诀

👉插入排序:顺快只要走n次,乱慢最多要走n的平方次。



🌟 第 13 题:爬楼梯(斐波那契数列

(1)正确答案:✅B

核心递推式:

current = prev1 + prev2; prev2 = prev1; prev1 = current;

(2)🧸 故事讲解

小杨爬楼梯:

  • 一次爬1 阶

  • 或一次爬2 阶


(3)🎯 规律发现

  • 到第 n 阶的方法数 =

    • 到第 n-1 阶的方法数

      • 到第 n-2 阶的方法数

👉和斐波那契数列一样!


(4)🧠 记忆口诀

👉斐波那契数列用递推

👉当前这步 = 前两步之和



🌟 第 14 题:枚举三数,时间复杂度是多少?

(1)正确答案:✅C. O(n³)


(2)🧸 故事讲解:三人小组 👨‍👩‍👧

for i for j for k

(3)老师想找:

三个同学的分数加起来等于 300


(4)🔍 有几层循环?

👉3 层


(5)🧠 时间复杂度规则

👉几层 for,就几次 n相乘


(6)🧠 小朋友口诀

👉一层循环, n次复杂度

👉二层循环,n的平方复杂度

👉三层循环,n的立方复杂度



🌟 第 15 题:异常处理,哪句话是错的?

(1)正确答案:✅D

“所有异常都必须被捕获,否则程序会崩溃”


(2)先给同学一句话结论 🎯

不是所有异常都“必须”被捕获
没被捕获,不等于立刻崩溃


附详细解析:用故事讲“异常处理” 🧸

一、《程序里的接球游戏》⚾

想象:

  • 程序在跑

  • 有时候会扔出一个“问题球”

  • 我们可以选择,也可以不接


二、🎯 三个角色

角色C++ 里是谁做什么
扔球的人throw抛出异常
接球区try可能出事的地方
接球手catch接住异常

三、逐个选项详细解析(重点!)📋


1、✅ A. try 块中的代码可能会抛出异常(正确)

(1)🧸 理解

try { int x = 10 / 0; // 有风险 }

(2)👉try就是告诉程序:

“这里可能会出问题,注意一下!”


(3)📌 结论

✔ 正确
✔ try 就是用来“包住可能出事的代码”


2、✅ B. catch 块可以有多个,处理不同类型的异常(正确)

(1)🧸 故事讲解

一个接球场:

  • 有的球是int 球

  • 有的球是string 球

  • 有的球是double 球

try { ... } catch (int e) { ... } catch (double e) { ... } catch (...) { ... }

(2)📌 结论

✔ 可以写多个catch
✔ 谁先匹配谁先接


3、✅ C. throw 语句用于抛出异常(正确)

(1)🧸 理解

throw 42;

意思是:

👉 “我发现问题了,把问题丢出去!”


(2)📌 throw 的作用

✔ 抛异常
✔ 非常明确、直接


4、❌ D. 所有异常都必须被捕获,否则程序会崩溃(错误)

🚨 这是本题的“陷阱选项”!


四、为什么 D 是错的?

1、❌ 错误理解

“只要 throw 了,没有 catch,程序一定马上崩溃”


2、✔ 正确理解

1️⃣异常可以不被捕获
2️⃣是否崩溃,取决于运行环境和异常类型
3️⃣ 有些异常会被系统处理
4️⃣ 有些会导致程序终止,但这 ≠ 必须捕获


3、🧸 举个例子

int main() { throw 100; }
  • 没有 catch

  • 程序结束

  • 但不是“语法错误”

  • 而是异常未处理


4、📌 在考试中怎么理解?

❗题目说的是
“必须被捕获”
👉 这个说法太绝对了,所以是错的


五、给同学们的异常处理四句话口诀 🧠

🎯
try 包危险,
throw 来丢球,
catch 来接球,
异常不一定要接。


六、这道题的考点是什么?🎓

  • 你是否理解:

    • try / catch / throw 的分工

  • 你是否能识别:

    • “绝对化说法”是陷阱


七、考试一眼秒杀技巧 👀

看到异常处理题:

1️⃣ 找try / catch / throw的定义
2️⃣ 看选项有没有“必须 / 所有 / 一定”
3️⃣优先选它是错的


八、C++ 捕捉异常【标准模板】

#include <iostream> using namespace std; int main() { try { // ========================= // 1️⃣ try 块 // ========================= // 把“可能出问题的代码”放在这里 // 如果这里发生异常,就会跳到 catch 去处理 int a, b; cin >> a >> b; if (b == 0) { // 主动抛出异常(这里抛出一个 int 类型的异常) throw 0; } // 如果没有异常,这行代码会正常执行 cout << "结果是:" << a / b << endl; } catch (int e) { // ========================= // 2️⃣ catch 块(接 int 类型异常) // ========================= // 如果 try 中 throw 了 int 类型异常 // 程序就会来到这里 cout << "错误:除数不能为 0!" << endl; } catch (double e) { // ========================= // 3️⃣ 另一个 catch(接 double 类型异常) // ========================= // 如果 throw 的是 double 类型,就会进这里 cout << "捕获到 double 类型异常:" << e << endl; } catch (...) { // ========================= // 4️⃣ 万能 catch // ========================= // 不管抛出什么类型的异常 // 前面都没接住,就到这里 cout << "发生了未知错误!" << endl; } // ========================= // 5️⃣ 程序可以继续执行 // ========================= cout << "程序正常结束。" << endl; return 0; }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1184573.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

day09-Dify介绍和虚拟机安装

今日内容 1 Dify介绍 1.1 Dify是什么 # 1 Coze 字节公司推出的 AI智能体快速开发平台--》让不懂代码的人,通过拖拽的方式--》完成AI智能体的制作- 1 受限于平台--》Coze关闭了---》你的智能体全没了- 2 上传知识库--》…

记录给rk3506编译CH34X驱动的小曲折

设置交叉编译工具链的时候原本设置的是buildroot编译出来的工具链,结果编译不通过(好像是模块加载不通过,时间太长忘了),问了ai才发现是与编译kernel的工具链不一致导致 换成prebuilt里面的工具链就可以了源码在git…

告别课程论文 “凑字数” 魔咒!虎贲等考 AI:一键拿捏高分论文通关秘籍

学期末的课程论文&#xff0c;堪称大学生的 “学术渡劫” 现场&#xff1a;选题靠撞运气&#xff0c;文献堆砌像 “文字拼图”&#xff0c;查重率居高不下改到崩溃&#xff0c;好不容易写完还被导师批 “口语化严重、逻辑稀碎”。作为深耕论文写作科普的博主&#xff0c;我实测…

英文文献的研读与分析方法探讨

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

爆肝7天整理!智能体(Agent)开发必学三大核心能力,让你的AI不再“智障“!

一个合格的智能体必须解决三大核心挑战&#xff1a; 如何思考&#xff08;规划与推理&#xff09;&#xff1a;将模糊指令拆解为可执行的清晰步骤。如何行动&#xff08;工具使用&#xff09;&#xff1a;突破模型自身限制&#xff0c;调用外部能力完成任务。如何成长&#xf…

Git 进阶技巧实战:从协作规范到问题排查+Git 核心命令速查表

Git 作为分布式版本控制工具&#xff0c;是程序员日常开发、团队协作的必备技能。多数开发者仅掌握commit、push、pull等基础操作&#xff0c;在复杂协作场景&#xff08;如多人开发同一分支、版本回滚、代码合并冲突、提交记录整理&#xff09;中频繁踩坑&#xff0c;效率低下…

ai搜索文献:智能技术在学术文献检索与分析中的应用研究

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

【AI开发干货】大模型搜索Agent架构演进:从Planner到ROMA,小白也能上手的AI技术指南!

深度搜索Agent核心问题其实就有两个&#xff1a;怎么把复杂问题拆得合理&#xff0c;以及怎么判断搜索结果够不够用。近两年深度搜索Agent发展很快各家的实现思路也越来越成熟&#xff0c;围绕这两个问题业界逐渐沉淀出几种主流架构&#xff1a;从最基础的Planner-Only&#xf…

传统问卷设计 VS 虎贲等考 AI:3 天工作量压缩到 30 分钟的科研效率革命

还在为一份学术问卷熬秃脑袋&#xff1f;翻遍文献找量表却不知如何本土化修订&#xff0c;设计好的问卷因问题歧义导致数据失真&#xff0c;回收几百份问卷后才发现信效度不达标…… 在实证研究里&#xff0c;问卷设计堪称 “第一道生死关”。据调研显示&#xff0c;超 65% 的社…

数据不会说话?虎贲等考 AI 让论文实证分析秒变 “硬核加分项”

还在对着满屏问卷数据抓耳挠腮&#xff1f;还在为 SPSS 的复杂参数设置崩溃熬夜&#xff1f;还在担心数据分析不专业&#xff0c;让论文实证部分沦为 “摆设”&#xff1f;在实证研究越来越受重视的学术语境下&#xff0c;数据分析早已成为论文质量的 “试金石”。而虎贲等考 A…

AI新风口:GraphRAG多模态杀疯了!小白也能秒会的黑科技,一张图搞定文本+图像+音频,CSDN首发干货!

编辑注&#xff1a;David Hughes 和 Amy Hodler 是2025年5月13日至15日ODSC East大会的演讲嘉宾。如需了解更多关于GraphRAG的信息&#xff0c;请关注他们的演讲《推进GraphRAG&#xff1a;文本、图像与音频实现多模态智能》。 在快速演进的人工智能领域&#xff0c;检索增强生…

屏幕参数藏玄机,视觉体验不止于“清晰”

在手机性能叙事中&#xff0c;CPU往往占据C位&#xff0c;但对于每天与屏幕朝夕相处的用户而言&#xff0c;屏幕参数对使用体验的影响&#xff0c;实则远超想象。一块优质屏幕&#xff0c;不仅是视觉享受的载体&#xff0c;更直接关联护眼效果、操作流畅度与续航表现&#xff0…

告别科研绘图内卷!虎贲等考 AI 一键生成顶刊级学术美图

还在为用 Origin 调图表参数熬到凌晨&#xff1f;还在因分子结构图比例失调被导师打回&#xff1f;还在羡慕顶刊论文里的高颜值数据可视化图表&#xff1f;在科研论文越来越 “看脸” 的当下&#xff0c;一张规范、美观的科研图&#xff0c;是成果出圈的 “敲门砖”。而虎贲等考…

汇编语言全接触-97.指令动态执行加密法

概述&#xff1a; 这儿讲述的是用单条指令加密法&#xff0c;再用 int 1 单步中断解下一条指令的第一字节&#xff0c;由于用另外程序解密时无法预知指令长, 所以不能用编程的方法解密&#xff0c;只能用手工一条一条地解。具体实现见注释&#xff0c;这种加密法的麻烦只处就是…

RAG系统卡成PPT?资深开发者亲授反向调优技巧,小白也能秒变大神!

摘要&#xff1a;在RAG&#xff08;检索增强生成&#xff09;系统已经成为连接大语言模型与外部知识库的关键技术架构。然而&#xff0c;许多开发者和企业发现&#xff0c;随着使用时间的增加和数据量的增长&#xff0c;RAG系统的响应速度逐渐变慢&#xff0c;甚至影响到整个应…

Wi-Fi 6路由器技术成熟度解析:它究竟“新”在哪里?

当我们站在2026年的节点回望&#xff0c;Wi-Fi 6早已不是新奇玩意。这不禁让人感到疑惑&#xff0c;与之前的Wi-Fi 5相比&#xff0c;如今的Wi-Fi 6技术&#xff0c;真的已经完全成熟了吗&#xff1f;今天&#xff0c;就让我们探讨下WiFi6除了最直观的是理论传输速率之外&#…

汇编语言全接触-98.检测内存中的 Soft-Ice

概述&#xff1a;有 Soft-ICE 在内存中可不大好玩&#xff0c;以下指令是检测 Soft-ICE 的&#xff0c;不要问为什么&#xff0c;这些都是 Soft-ICE 自己检测自己用的。汇编编程示例&#xff1a;code segmentassume cs:code,ds:codeorg 100hstart:mov ax,0911h …

大模型‘翻车‘救星!RAG技术让AI回答不再‘一本正经地胡说八道‘,小白5分钟入门指南

一、前言 你是否曾对ChatGPT、文心一言等大模型在某些问题上“一本正经地胡说八道”感到困惑&#xff1f;这种“幻觉”现象&#xff0c;是当前大语言模型面临的核心挑战之一。与此同时&#xff0c;你是否也好奇&#xff0c;那些能精准回答你公司内部文档、最新资讯的AI助手是如…

震惊!90%的AI Agent项目都做错了!资深开发者揭秘构建智能体的正确姿势,小白也能上手[特殊字符]

最近在交流的过程中经常被问到一个问题&#xff1a;你是怎么开发&#xff08;构建/搭建&#xff09;智能体的&#xff1f; 说实话&#xff0c;我第一次被问到这个问题一时不知道该怎么组织语言。因为我不知道我是该具体的回答用 langchain&#xff08;langgraph/llamaindex/sw…

深度解析 XSS 攻击:原理、分类、危害与全方位防御方案

深度解析 XSS 攻击&#xff1a;原理、分类、危害与全方位防御方案 在 Web 安全领域&#xff0c;跨站脚本攻击&#xff08;Cross-Site Scripting&#xff0c;简称 XSS&#xff09;是最常见且危害持久的漏洞类型之一。根据 OWASP Top 10&#xff08;2021 版&#xff09;报告&…