GESP认证C++编程真题解析 | 202506 一级

news/2026/1/17 21:30:20/文章来源:https://www.cnblogs.com/guolianggsta/p/19497208

​欢迎大家订阅我的专栏:算法题解:C++与Python实现!
本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战!

专栏特色
1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的代码实现与详细指导,帮助您夯实算法基础。
2.系统化学习路径:按照算法类别和难度分级,从基础到进阶,循序渐进,帮助您全面提升编程能力与算法思维。

适合人群:

  • 准备参加蓝桥杯、GESP、CSP-J、CSP-S等信息学竞赛的学生
  • 希望系统学习C++/Python编程的初学者
  • 想要提升算法与编程能力的编程爱好者

附上汇总帖:GESP认证C++编程真题解析 | 汇总


单选题

第1题

2025年4⽉19⽇在北京举⾏了⼀场颇为瞩⽬的⼈形机器⼈半程马拉松赛。⽐赛期间,跑动着的机器⼈会利⽤ ⾝上安装的多个传感器所反馈的数据来调整姿态、保持平衡等,那么这类传感器类似于计算机的( )。

A.处理器

B.存储器

C.输入设备

D.输出设备

【答案】:C

【解析】

传感器的功能是采集数据,属于输入设备。

第2题

在某集成开发环境中调试下⾯代码段时尝试设置断点和检查局部变量,下⾯哪个说法是错误的( )。

int i, N = 0;  // L1
cin >> N;  // L2
for (i=1; i<9; i++)if (N % i == 0) break;  // L3
if (i<9)printf("N不能大于9\n");  // L4

A.断点不可以设在L1标记的代码行

B.执行暂停在L2标记的代码行时,可以检测 i 的值

C.执行暂停在L3标记的代码行时,可以修改 i 的值

D.执行有可能暂停在L4标记的代码行

【答案】:A

【解析】

断点可以设置在任一行代码处。

第3题

对下列C++的代码,描述准确的是( )。

int first = 10;
printf("{%d}\n", First)

A.执行后输出10

B.执行后输出 {First}

C.执行后输出 "{First}"

D.编译报错,因为 First 应该是 first

【答案】:D

【解析】

C++的变量名区分大小写,First 和 first 不是同一个变量。

第4题

在C++中,下列可以做变量名的是( )。

A.X.cpp

B.X-cpp

C.X#cpp

D.X_cpp

【答案】:D

【解析】

C++的变量名智能包含字母、数字、下划线。

第5题

C++表达式 14-3*3%2 的值是( )。

A.0

B.11

C.13

D.-67

【答案】:C

【解析】

乘法和取模的优先级高于减法,先计算乘法,然后取模,然后减法,得到13。

第6题

下⾯的C++代码执⾏后,其输出是( )。

int x = 10, y = 20;
x = x + y;
y = x - y;
x = x - y;
cout << x << ' ' << y;

A.10 20

B.20 10

C.10 10

D.20 20

【答案】:B

【解析】

三行运算执行效果是交换两个变量的值。

第7题

定义整型变量 int a=16 ,则执行 ++a += 3 之后,a的值会是( )。

A.3

B.17

C.19

D.20

【答案】:D

【解析】

先 ++ 再 +=,++ 后 a 变为 17, 再 +=3 后 a 变为 20。

第8题

C++的 int 类型变量 X 的值为 8, 如果执行 cout << (++X)++;,则输出和执行后 X 的值分别是( )。

A.8 9

B.9 9

C.9 10

D.编译错误,无法执行

【答案】:C

【解析】

先执行前面的 ++,x 值为 9;然后执行后置的 ++,x 的值变为 10,但整个表达式的值是后置 ++ 执行前的值,也就是 9。

第9题

下⾯C++代码执⾏后的输出是( )。

int a, b;
a = 3;
b = 4;
printf("a+b=%02d#a+b={a+b}", a+b, a+b);

A.a+b=07#a+b={a+b}

B.a+b= 7#a+b=7

C.a+b=7#a+b={a+b}

D.a+b=7#a+b=7

【答案】:A

【解析】

%02d 表示输出的整数至少占2位,不足时左侧补 0。其余内容是普通字符串,照样输出。

第10题

下⾯的C++代码⽤于求M天后是星期几,两处横线处分别应填⼊的代码是( )。

int N, M, D;
cout << "当前星期几?"; // 星期日是0
cin >> N;
cout << "求多少天后?"; // 输入正整数
cin >> M;D = ______;
if (______)printf("%d天后是星期日", M);
elseprintf("%d天后是星期%d", M, D);

A.

(N + M) / 7
D == 0

B.

(N + M) % 7
D == 0

C.

(N + M) / 7
D <= 0

D.

(N + M) % 7
D = 0

【答案】:B

【解析】

七天对应取模 7 的结果 0~6。0 代表周日

第11题

下⾯C++代码执⾏后输出是( )。

int i;
for (i=1; i<11; i+=3) {continue;if (i % 2 == 0)break;printf("%d#", i);
}
if (i >= 11)printf("END");

A.END

B.1#

C.1#4#END

D.1#4#7#10#END

【答案】:A

【解析】

for 循环执行过程中 i 的取值依次变为 1、4、7、10、13。循环体内容由于 continue 并未执行,最后会打印 END。

第12题

下⾯的C++代码⽤于求 N 的所有因数(即能将 N 整除的数),如输入 12 则将输出 12,6,4,3,2,1。( )

int i, N;
cin >> N;
i = N;
while (____) {if (N % i == 0)printf("%d,", i);i -= 1;
)
printf("1");

A.i -= 1

B.i == 1

C.i > 1

D.i >= 1

【答案】:C

【解析】

注意最后一行输出了1,所以 i 从大到小枚举从 N 到 2 的所有数。

第13题

下⾯C++代码执行后输出的是( )。

int Sum = 0;
for (int i=0; i<10; i++) {if (i % 2 == 0)continue;if (i % 5 == 0)break;Sum += i;
}
cout << Sum;

A.55

B.15

C.9

D.4

【答案】:D

【解析】

i 等于 0 时 continue,1 时 Sum+=i,2 时 continue,3 时 Sum += i,4 时 continue,5 时 break。

第14题

试图编译并执行下⾯C++代码,下⾯描述正确的是( )。

float x;
x = 101;
x++;
cout << ++x;

A.输出 101

B.输出 102

C.输出 103

D.编译将报错,无法执行

【答案】:C

【解析】

后 ++ 加了 1, 前 ++ 又加了 1。

第15题

以下C++代码可以找出百位、十位和个位满⾜特定条件的三位数,横线处应该填入的是( )

int count = 0;
for (int i=100; i<=999; i++) {int a = i / 100;______int c = i % 10;if (a * a + b * b == c * c) {count++;}
}

A.int b = (i / 10) / 10;

B.int b = (i / 10) % 10;

C.int b = (i % 10) / 10;

D.int b = (i % 10) % 10;

【答案】:B

【解析】

取 i 的十位,i / 10 % 10。

判断题

第16题

⼈们现在参加很多闭卷考试时通常都不允许带智能⼿机、平板电脑等,此外很多种智能手表同样因为具有嵌入操作系统及通信等功能,所以也不允许随⾝携带。( )

A.正确

B.错误

【答案】:A

【解析】

考场明确要求

第17题

如果N是C++的整型变量,值为5,则表达式 (N + !N) 的值为4。( )

A.正确

B.错误

【答案】:B

【解析】

!N 为假,值为 0。 5 + 0 = 5

第18题

在下⾯C++代码中,删除break语句对程序执行结果没有影响。 ( )

int i;
for (i=0; i<10; i++) {continue;cout << i << "#";break;
}
if (i >= 10)cout << "END";

A.正确

B.错误

【答案】:A

【解析】

for 循环体的第一行是 continue,后面的代码都不会执行。

第19题

删除下⾯C++代码中的continue后其输出是0#2#4#6#8。( )

int i;
for (i=0; i<10; i++) {if (i % 2 == 0) {cout << i << "#";continue;}
}
if (i >= 10)cout << "END";

A.正确

B.错误

【答案】:B

【解析】

会输出 0#2#4#6#8#END

第20题

将下面C++代码中的 i<100; i= i + 1 修改为 i<200; i += i + 1,其输出与当前代码输出相同。( )

int cnt = 0;
for (int i=0; i<100; i = i + 1)cnt += 1
cout << cnt;

A.正确

B.错误

【答案】:B

【解析】

改之前回输出 100, 改后会输出 8,因为 i += i + 1 导致步长一直增长,i 的值:0,1,3,7,15,......

第21题

交换下面C++代码中的 i+=2 和 cnt+=1,交换前后分别运行的两次输出相同。( )

int i, cnt = 0;
cnt = 0;
while (i<10) {i += 2;cnt += 1;
}
cout << cnt;

A.正确

B.错误

【答案】:B

【解析】

i 没有初始化,值是随机的,每次运行结果可能都不一样。

第22题

下⾯的C++代码执行后将输出45。( )

int cnt;
for (int i=0; i<10; i++)cnt += 1;
cout << cnt;

A.正确

B.错误

【答案】:B

【解析】

cnt 没有初始化,值是随机的。

第23题

执行C++代码 cout << (12 + 12.12)将报错,因为12是int类型,而12.12是float类型,不同类型不能直接运算。( )

A.正确

B.错误

【答案】:B

【解析】

int 和 double 可以运算,运算时会自动把 int 转为 double。

第24题

在C++代码中,不可以将变量命名为false,因为false是C++语⾔的关键字。( )

A.正确

B.错误

【答案】:A

【解析】

false 是 C++ 关键字,关键字不能用来命名变量。

第25题

X是C++的整型变量,则表达式 3 < X < 5 求值结果是4。( )

A.正确

B.错误

【答案】:B

【解析】

表达式 3 < x < 5 先计算 3 < x,再计算 (3 < x) < 5,结果是布尔值 0 或 1。

编程题

B4354 假期阅读

【题目来源】

洛谷:B4354 [GESP202506 一级] 假期阅读 - 洛谷

【题目描述】

小 A 有一本厚厚的书。这本书总共有 \(n\) 页,小 A 一天中最多只能阅读完其中的 \(k\) 页。小 A 的假期总共有 \(t\) 天,他想知道在假期中最多能阅读完这本书的多少页。

【输入】

第一行,一个正整数 \(n\),表示书的页数。

第二行,一个正整数 \(k\),表示小 A 每天最多阅读的页数。

第三行,一个正整数 \(t\),表示小 A 假期的天数。

【输出】

一行,一个整数,表示假期中所能阅读的最多页数。

【输入样例】

8
3
2

【输出样例】

6

【算法标签】

《洛谷 B4354 假期阅读》 #分支结构# #GESP# #2025#

【代码详解】

#include <bits/stdc++.h>
using namespace std;int n, k, t;  // n: 总数量, k: 每次处理量, t: 处理次数int main()
{// 输入总数量、每次处理量和处理次数cin >> n >> k >> t;// 判断能否在t次处理内完成所有数量if (k * t >= n){// 如果可以,输出总数量cout << n << endl;}else{// 否则输出最大能处理的数量cout << k * t << endl;}return 0;
}

【运行结果】

8
3
2
6

B4355 值日

【题目来源】

洛谷:B4355 [GESP202506 一级] 值日 - 洛谷

【题目描述】

小杨和小红是值日生,负责打扫教室。小杨每 \(m\) 天值日一次,小红每 \(n\) 天值日一次。今天他们两个一起值日,请问至少多少天后,他们会再次同一天值日?

【输入】

第一行,一个正整数 \(m\),表示小杨的值日周期;

第二行,一个正整数 \(n\),表示小红的值日周期。

【输出】

一行,一个整数,表示至少多少天后他们会再次同一天值日。

【输入样例】

4
6

【输出样例】

12

【算法标签】

《洛谷 B4355 值日》 #循环结构# #GESP# #2025#

【代码详解】

#include <bits/stdc++.h>
using namespace std;int m, n;  // 定义两个整数变量// 计算两个数的最大公约数(GCD)
int gcd(int a, int b)
{// 使用欧几里得算法递归计算if (a % b == 0) return b;      // 基准情况else return gcd(b, a % b);  // 递归情况
}int main()
{// 输入两个正整数cin >> m >> n;// 计算并输出最小公倍数(LCM)// LCM = (m × n) / GCD(m, n)cout << m * n / gcd(m, n) << endl;return 0;
}

【运行结果】

4
6
12

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

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

相关文章

2026年期刊论文降AI率工具推荐,顺利发表必备 - 还在做实验的师兄

期刊对AI率的要求通常比学校更严格,部分期刊要求低于10%甚至5%。推荐比话降AI(可降至0%,8元/千字)和嘎嘎降AI(达标率99.26%,4.8元/千字)。投稿前一定要处理好AI率。2026年期刊论文降AI率工具推荐,顺利发表必备…

详细介绍:任务悬赏小程序核心玩法 + 功能全解析:精准匹配与信任构建的变现逻辑

详细介绍:任务悬赏小程序核心玩法 + 功能全解析:精准匹配与信任构建的变现逻辑pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-…

毕业论文降AI率,学长推荐的5款工具(含免费额度) - 还在做实验的师兄

毕业论文AIGC检测不过别慌,这5款降AI工具都有免费额度可以先体验。重点推荐嘎嘎降AI(免费试用+达标率99.26%)和比话降AI(500字免费+知网专精)。先免费测效果,满意再付费。毕业论文降AI率,学长推荐的5款工具(含…

GESP认证C++编程真题解析 | 202506 二级

​欢迎大家订阅我的专栏:算法题解:C++与Python实现! 本专栏旨在帮助大家从基础到进阶 ,逐步提升编程能力,助力信息学竞赛备战! 专栏特色 1.经典算法练习:根据信息学竞赛大纲,精心挑选经典算法题目,提供清晰的…

基于SSM的服装销售系统-计算机毕业设计源码+无LW文档

基于SSM的服装销售系统论文 摘要&#xff1a;本文围绕基于SSM&#xff08;Spring、SpringMVC、MyBatis&#xff09;框架的服装销售系统展开研究。阐述了系统的研究背景与意义&#xff0c;深入分析系统需求&#xff0c;详细介绍功能设计。该系统旨在解决传统服装销售管理模式的问…

嘎嘎降AI vs 比话降AI:2026年降AI工具对比测评 - 还在做实验的师兄

嘎嘎降AI主打性价比(4.8元/千字,达标率99.26%),比话降AI主打知网专精(8元/千字,可降至0%)。追求省钱选嘎嘎,追求极致效果选比话。两款都很靠谱,按需选择即可。嘎嘎降AI vs 比话降AI:2026年降AI工具对比测评T…

大数据领域必备:ClickHouse 全方位解析

大数据领域必备&#xff1a;ClickHouse 全方位解析 一、引言 (Introduction) 钩子 (The Hook) “昨天凌晨3点&#xff0c;我被运维的电话叫醒——数据 dashboard 又崩了。” 这是我做大数据工程师时最难忘的经历。当时我们用Hive处理用户行为数据&#xff0c;每次业务方要查“过…

新能源汽车充电服务系统-计算机毕业设计源码+LW文档

一、 研究的背景、目的和意义 &#xff08;一&#xff09;课题研究的背景 随着新能源汽车市场的快速发展&#xff0c;充电服务成为关键环节。全球能源结构的转型是当前新能源汽车充电服务系统设计的重要背景之一。传统化石能源的消耗带来了严重的环境污染和温室气体排放&…

SCI论文降AI率工具推荐:Turnitin检测轻松过 - 还在做实验的师兄

SCI论文投稿前需要通过Turnitin AI检测,中文降AI工具对英文无效。推荐AIGCleaner(专业英文降AI,Turnitin检测83%→0%)。国内论文可用嘎嘎降AI配合。SCI论文降AI率工具推荐:Turnitin检测轻松过TL;DR:SCI论文投稿前…

JUC并发编程:LockSupport.park() 与 unpark() 深度解析

一、前言在Java并发编程中&#xff0c;AQS (AbstractQueuedSynchronizer) 是实现锁&#xff08;如 ReentrantLock&#xff09;、同步器&#xff08;如 CountDownLatch&#xff09;的核心基础。而 AQS 能够实现线程的阻塞与唤醒&#xff0c;其底层完全依赖于 LockSupport 工具类…

AIGC检测原理解析:为什么自己写的论文也会被判AI生成 - 还在做实验的师兄

AIGC检测系统识别的是「AI特征」而非「是否由AI生成」。规范的学术写作特征与AI特征高度重合,所以自己写的论文也可能被误判。解决方法是用嘎嘎降AI等专业工具处理,让文本「看起来更像人写的」。AIGC检测原理解析:为…

高校志愿服务管理系统-计算机毕业设计源码+无LW文档

摘要&#xff1a;本文旨在探讨高校志愿服务管理系统的开发与实施。通过分析当前高校志愿服务管理的现状和存在的问题&#xff0c;提出了开发一个综合性的志愿服务管理系统的需求。本文详细阐述了系统的需求分析、功能设计以及预期的社会和经济影响&#xff0c;旨在提高高校志愿…

论文AI率从90%降到5%,我用了这个方法 - 还在做实验的师兄

AI率90%是极高的情况,但专业工具可以处理。我用嘎嘎降AI把90%的AI率降到了5%以下,花了不到50块钱,全程20分钟。手动改根本不可能,直接用工具是唯一出路。论文AI率从90%降到5%,我用了这个方法TL;DR:AI率90%是极高…

2026年便宜好用的降AI工具推荐,学生党必看 - 还在做实验的师兄

学生党预算有限,推荐嘎嘎降AI(4.8元/千字,1000字免费试用)和率零(3.2元/千字,最便宜)。效果要求高选嘎嘎,纯省钱选率零。都有免费额度,先试再买。2026年便宜好用的降AI工具推荐,学生党必看TL;DR:学生党预算…

2026年降AI工具年度盘点:哪款最值得用 - 还在做实验的师兄

2026年降AI工具年度盘点:性价比之王是嘎嘎降AI(4.8元/千字,达标率99.26%),效果极致是比话降AI(8元/千字,可降至0%),最便宜是率零(3.2元/千字)。按需选择即可。2026年降AI工具年度盘点:哪款最值得用TL;DR:…

完整教程:Fresha 的实时分析进化:从 Postgres 和 Snowflake 走向 StarRocks

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

论文AI率从100%降到10%以下,我用的这几款工具 - 还在做实验的师兄

论文AI率太高别慌,用对工具完全能救回来。实测了十几款降AI工具,最终推荐嘎嘎降AI(99.5%→3.1%,性价比高)和比话降AI(可降至0%,知网专精)。手动改反而可能越改越高,别踩坑。论文AI率从100%降到10%以下,我用的…

强烈安利8个一键生成论文工具,专科生毕业论文轻松搞定!

强烈安利8个一键生成论文工具&#xff0c;专科生毕业论文轻松搞定&#xff01; AI 工具如何改变论文写作的未来 在当前的学术环境中&#xff0c;越来越多的专科生开始借助 AI 工具来提升论文写作的效率。尤其是那些对写作技巧不够熟悉、时间紧迫的学生&#xff0c;AI 工具的出现…

知网AIGC检测率太高?这5款降AI工具亲测有效 - 还在做实验的师兄

知网AIGC检测系统2025年12月升级后,检测逻辑从文本重合度转向语义连贯性分析,传统同义词替换彻底失效。亲测5款降AI工具后,推荐嘎嘎降AI(达标率99.26%,价格实惠)和比话降AI(专攻知网,不达标退款)。知网AIGC检…

研究生论文降AI率,导师推荐的3款工具 - 还在做实验的师兄

研究生论文AI率太高会影响评审和答辩。导师推荐嘎嘎降AI(达标率99.26%,4.8元/千字)、比话降AI(知网专精,8元/千字)处理。硬改效果差,专业工具更靠谱。研究生论文降AI率,导师推荐的3款工具TL;DR:研究生论文AI率…