GESP 2026年3月_C++一级试卷

从PDF导入:GESP 2026年3月_C++一级试卷

C++ 120分钟 总分 100.0 27 题
试卷题目预览
第1题 中级 2.0分 单选
2026年春节联欢晚会上一个武术表演节目《武BOT》。节目中多个人形机器人会表演空翻,它们落地可能会有微微踉跄,但都会迅速调整姿态站稳,并适当移动来和前后左右的
A. 检测重心的重力传感器
B. 预装的AI算法程序
C. 接收动作指令的遥控器
D. 拍摄其他机器人的摄像头
第2题 中级 2.0分 单选
小明学习编程有一段时间了,他想在图形环境下把当前目录下的文本文件20260314.txt的名字改一下。他用鼠标左键点击选中该文件后,立即完成下面哪个操作后将处于
A. 单击右键并选择弹出菜单中的"重命名"
B. 双击左键
C. 按功能键F1
D. 按回车键
第3题 中级 2.0分 单选
下面C++代码可以执行,有关说法正确的是(  )。

A. 为了方便初学者,cout << (PI)和cout << (pi)效果相同,即变量的大小写不敏感
B. cout << (PI)修改为cout << (Pi)能正常执行
C. 不能用PI做变量名,因为要保存圆周率这个常量
D. 将程序中全部PI都改写为Pai,将能正常执行,不会报错
第4题 中级 2.0分 单选
C++表达式3 * 3 % 2的值为(  )。
A. 81
B. 27
C. 4
D. 1
第5题 中级 2.0分 单选
整型变量a、b的初值都是4,则下面的C++代码执行后的输出是(  )。

A. 61 43
B. 52 34
C. 62 44
D. 62 32
第6题 中级 2.0分 单选
下面C++代码的相关说法,正确的是(  )。

A. 执行时如输入10,则将输出10
B. 执行时如输入3.14,将报错
C. 执行时如输入ABC,将报错
D. 执行时如输入-10,将报错
第7题 中级 2.0分 单选
下面C++代码执行时,其说法正确的是(  )。

A. 如果输入一个正数和一个负数,其输出结果肯定是大于0
B. 不管是负整数、正整数亦或0,其结果肯定是大于等于0
C. 如果N和M是相等的整数,将不会有输出
D. 如果N和M输入带有小数点的数,将按整数部分计算
第8题 中级 2.0分 单选
下面C++代码执行后的输出是(  )。

A. 24 5
B. 10 5
C. 0 4
D. 0 5
第9题 中级 2.0分 单选
执行下面C++代码段求序列-1+2+3-4+5+6-7+8+9-10+11+12......之值。例如输入4,则计算序列前4项的值,规律如序列所示,输出为0。下

A. L1行中i < N + 1应该修为i < N才会符合预期
B. L2行中i % 3 == 1应该修改为i % 3 == 0才会符合预期
C. L2行中i % 3 == 1修改为i % 3与当前程序效果相同
D. 当前代码能实现题目所描述计算目标
第10题 中级 2.0分 单选
下面C++代码的相关说法,正确的是(  )。

A. 上述代码执行后,其输出是1#3#5#7#9#9END
B. 删除else后的执行效果与当前代码相同
C. 删除else且将cout << i << "#"移入L1行下面,则执行效果与当前代码相同
D. 在cout << i << "END"前增加判断if(i > 10),其执行效果与当前代码相同
第11题 中级 2.0分 单选
一个正整数的每位都是个位数,称为数位,最高位非0。下面的C++代码用于求正整数的所有数位之和。如123的各数位分别是1、2、3,则其数位和为1+2+3,结果为6

A. tnt += N / 10; N /= 10;
B. tnt += N % 10; N /= 10;
C. tnt += N / 10; N %= 10;
D. tnt = tnt + N % 10; N %= 10;
第12题 中级 2.0分 单选
小明想要快速知道任给一个正整数中有多少个奇数位(数位值是奇数),下面的C++代码是其实现,横线处应该填入的代码是(  )。

A. N % 10 % 2 == 0
B. N % 10 % 2 == 1
C. N / 10 / 2 == 1
D. N / 2 / 10 == 0
第13题 中级 2.0分 单选
小明和弟弟在玩一个拼数字游戏。下面的C++代码用于判断M和N是否符合全部要求,如果符合则输出Y否则输出N。例如输入85和79,可以拼出85792,恰好是14的倍

A. 代码段不能完成正确判断
B. L1行代码中条件应该改为M <= N
C. L2行代码应该改为if((Q*10+Q/3) % 14 == 0)
D. 代码段可以不使用变量Q,而是在区分M和N大小后分别直接用它们来判断
第14题 中级 2.0分 单选
执行下面C++代码可以判断一个6位正整数N的高3位和低3位的差是否是314的倍数。例如628314就符合要求。横线处应该填入(  )。
A. ((N % 1000) - (N / 1000)) / 314 == 0
B. ((N / 1000) - (N % 1000)) % 314 == 0
C. ((N % 1000) - (N / 1000)) / 314
D. ((N / 1000) - (N % 1000)) % 314
第15题 中级 2.0分 单选
N是一个正整数。如果N的所有奇数位的数位和等于所有偶数位的数位和,则称它是一个"双螺旋数"。例如12375的所有奇数位的数位和是9,同时它的所有偶数位的数位和也

A. N1 += N%10, N /= 10; N2 += N%10, N /= 10;
B. N1 += N/10, N /= 10; N2 += N/10, N /= 10;
C. N1 += N%10, N %= 10; N2 += N%10, N %= 10;
D. N1 += N/10, N %= 10; N2 += N/10, N %= 10;
第16题 中级 2.0分 判断
小明的妈妈最近刚刚给他买了一块电话手表,除了可以看时间,小明也可以用它和妈妈打电话、收发信息,那么可以推测这块手表中装有一款特定操作系统。( )
T. 正确
F. 错误
第17题 中级 2.0分 判断
C++表达式4 % 2和2 * 2 % 2的结果相同。( )
T. 正确
F. 错误
第18题 中级 2.0分 判断
下面C++代码段成功执行后将输出0。( )

T. 正确
F. 错误
第19题 中级 2.0分 判断
下面能够正常执行的C++代码段用于求1到N之和,N为正整数。因为i < N + 1,所以是1到N且包含N之和。( )

T. 正确
F. 错误
第20题 中级 2.0分 判断
执行下面的C++代码段,其语句cout << (N)将被执行0次或无数次(即死循环)。( )

T. 正确
F. 错误
第21题 中级 2.0分 判断
下面的C++代码段的变量都是整型变量,它能用于判断输入的正整数是否为对称数。所谓对称数是指从左到右和从右到左读该数,其值相同。例如,121和414都是对称数,而

T. 正确
F. 错误
第22题 中级 2.0分 判断
执行下面的C++代码段,如果变量都为整型变量,输入为大于0的整数,则输出数值一定为-N的值。( )

T. 正确
F. 错误
第23题 中级 2.0分 判断
执行C++语句printf("%d\n", 3.14)将报错。( )
T. 正确
F. 错误
第24题 中级 2.0分 判断
执行下面的C++代码后将输出2500。( )

T. 正确
F. 错误
第25题 中级 2.0分 判断
小明在测试C++的printf的功能时执行了printf("%-5d\n", 314),则代码输出的结果是-5314。( )
T. 正确
F. 错误
第26题 中级 25.0分 编程
交朋友

Alice班上共有4个小朋友,身高分别为H1、H2、H3、H4,其中Alice的身高为H1。 Alice想要和身高最接近她的人交朋友,如果有多个人符合条件,则Alice想和其中较矮的那一人做朋友,你能告诉她这个人的身高是多少吗?

【输入格式】
输入共4行,第i行包含一个整数Hi,表示班上小朋友的身高。
【输出格式】
输出1行,包含一个整数,表示Alice想交的朋友的身高。
【样例输入】
150
165
135
133
【样例输出】
135
【样例解释】
样例1中,Alice身高为150,第2、3个小朋友与Alice身高差距为15,同样最接近,Alice选较矮的一个即第3个身高为135的小朋友交朋友。
保证100<=Hi<=200且Hi互不相同。
第27题 中级 25.0分 编程
数字替换

Alice不喜欢数字4,但觉得数字8寓意好,她想把数中的4全都替换成8,若数中不含4则无需修改,你能帮帮她吗?

【输入格式】
输入一行,包含一个整数a,表示替换前的数。
【输出格式】
输出一行,包含一个整数b,表示替换后的数。
【样例输入1】
8459045
【样例输出1】
8859085
【样例输入2】
123
【样例输出2】
123
1<=a<=10^9。
💬