GESP2025年12月认证C++一级真题与解析(单选题1-15)

GESP2025年12月认证C++一级真题与解析(单选题1-15)

一、单选题解析(1~15 题)

总原则
1 级考试重点考察:计算机基础概念C++ 基本语法运算符优先级循环、判断、输入输出
不考偏门,只考“基本功是否扎实”

第 1 题(答案:B)

考点:计算机五大部件

飞行控制系统需要:

  • 接收数据 ✔
  • 进行判断和运算 ✔✔
  • 输出结果

👉 执行“判断、计算”的核心部件是:处理器(CPU)

选项作用
A 传感器负责采集
B 处理器 ✅负责判断和运算
C 内存存数据
D 输出设备显示结果


第 2 题(答案:A)

考点:非法字符错误(Invalid Character)

最常见原因之一👇

中文标点混入代码
a=3,b=4; // ❌ 中文逗号 

正确应为:

a=3, b=4; // ✅ 英文逗号 

📌 初学者高频翻车点



第 3 题(答案:A)

考点:变量命名规则

  • ❌ 不能使用 关键字
  • ✔ 可以用 _ 开头
  • ✔ 不能有空格、符号
选项分析
A ✅for 是关键字
B_tnt 是合法的
C结尾 _ 没问题
Dprintf 是函数名,不是关键字(但不建议)


第 4 题(答案:C)

cout << (X=3, X++, ++X); 

考点:逗号运算符 + 自增顺序

⚠️ 这是 1 级中最容易误选的一题

  • 逗号表达式只返回最后一个值
  • X++,3+1=4,++X,4+1=5 


第 5 题(答案:B)

2 + 3 * 4 % 5 

运算优先级:

  1. *%
  2. +

计算过程:

3 * 4 = 12 12 % 5 = 2 2 + 2 = 4 

✅ 结果:4



第 6 题(答案:A)

a = 3; b = a = 4; 

考点:赋值表达式有返回值

  • a = 4 → 返回 4
  • b = 4

最终:

a = 4 b = 4 


第 7 题(答案:C)

printf("%%(N+M)=%d", N+M); 

关键点:

  • %% → 输出一个 %
  • %d → 输出整数

输入 10 20

输出:

%(N+M)=30 


第 8 题(答案:A)

考点:找规律

数字序列:

1 2 3 2 1 2 3 2 1 ... 

周期长度:4

👉 用 N % 4 判断位置



第 9 题(答案:D)

考点:循环执行次数

  • tnt+=1 执行了0~99,共计100次,tnt=100
  • i++ → i=100 退出循环

输出

100 100 


第 10 题(答案:B)

for (i = 1; i < 10; i+=2) 

1 改成 0
→ i+2的值全部由奇数变成了偶数

结果是不相同



第 11 题(答案:C)

考点:continue + for

循环里 每次都 continue
👉 printf 永远执行不到

最后只输出:

100 END 


第 12 题(答案:A)

考点:辗转相减法(求最大公约数)

if (N > M) N = N - M; else M = M - N; 
if   else   双分支结构,只会执行一个,

N大就改变N,

M大就改变M,

只改变N,M中一个数字


第 13 题(答案:D)

考点:取个位 + 能否被 3 整除

N % 10 % 3 == 0 
  • N % 10 → 取个位
  • % 3 == 0 → 是否能被 3 整除


第 14 题(答案:C)

考点:奇因数判断

(N % i == 0) && (i % 2) 
  • 能整除
  • 是奇数


第 15 题(答案:C)

考点:拆位

tmp -= a * 1000; 

👉 去掉千位,保留后三位


Read more

【C++指南】vector(二):手把手教你底层原理与模拟实现

【C++指南】vector(二):手把手教你底层原理与模拟实现

.💓 博客主页:倔强的石头的ZEEKLOG主页 📝Gitee主页:倔强的石头的gitee主页 ⏩ 文章专栏:《C++指南》 期待您的关注 文章目录 * 一、引言 * 二、成员变量 * 三、默认成员函数 * 2.1 默认构造函数 * 2.2 析构函数 * 2.3 拷贝构造函数 * 传统写法 * 现代写法 * 2.4 赋值重载函数 * 传统写法 * 现代写法 * 四、元素访问相关 * 3.1 `[]` 重载(非 `const` 版本) * 3.2 `[]` 重载(`const` 版本) * 五、迭代器相关 * 4.1 迭代器类型声明 * 4.

By Ne0inhk
使用现代C++构建高效日志系统的分步指南

使用现代C++构建高效日志系统的分步指南

使用现代C++构建高效日志系统的分步指南 * 1. 确定日志系统的需求和目标 * 2. 设计日志系统的架构 * 3. 实现阶段 * 3.1 实现日志管理器(LogManager) * 3.2 实现日志记录器(Logger) * 3.3 实现日志格式化器(Formatter) * 3.4 实现日志输出器(Outputter) * 3.5 实现日志文件轮转 * 3.6 实现异常处理 * 3.7 实现性能优化 * 4. 测试和验证 * 5. 文档编写 * 6. 总结 在软件开发中,日志系统扮演着关键角色,帮助开发者记录程序运行状态、调试问题以及监控系统性能。使用现代C++构建一个高效且灵活的日志系统,不仅可以提升开发效率,还能增强程序的可维护性和可靠性。以下是构建这样一个日志系统的详细分步指南: 1. 确定日志系统的需求和目标

By Ne0inhk
C++之《程序员自我修养》读书总结(5)

C++之《程序员自我修养》读书总结(5)

《程序员自我修养》读书总结(五) Author: Once Day Date: 2026年2月12日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文章可参考专栏: 书籍阅读_Once-Day的博客-ZEEKLOG博客 参考文章:《程序员的自我修养》读书笔记 | Zachary’s blog《程序员的自我修养》阅读笔记 - T0fV404 - 博客园读书笔记:《程序员的自我修养》 - 楷哥 - 博客园 文章目录 * 《程序员自我修养》读书总结(五) * 5. Windows PE/COFF 格式 * 5.1 发展历史 * 5.2 mingw-w64 工具链 * 5.

By Ne0inhk
【Linux/C++多进程篇(二) 】万字解析从“传纸条”到“建仓库”:一文读懂linux系统编程之进程间通信 (IPC)

【Linux/C++多进程篇(二) 】万字解析从“传纸条”到“建仓库”:一文读懂linux系统编程之进程间通信 (IPC)

⭐️在这个怀疑的年代,我们依然需要信仰。 个人主页:YYYing. ⭐️Linux/C++进阶系列专栏:【从零开始的linux/c++进阶编程】 系列上期内容:【Linux/C++多进程篇(一) 】C/C++ 程序中神奇的“分身术” 系列下期内容:【Linux/C++多线程篇(一) 】多线程编程入门 目录 前言: 进程间通信(IPC) 一、进程间通信的基础概念 二、内核提供的通信方式 2.1、无名管道  📖 无名管道的API  📖 代码案例 2.2、有名管道  📖 有名管道的API  📖 代码案例 2.3、管道特点 2.4、信号  📖 信号相关概念

By Ne0inhk