GESP 2025年12月_C++二级试卷

从PDF导入:GESP 2025年12月_C++二级试卷

C++ 120分钟 总分 100.0 27 题
试卷题目预览
第1题 中级 2.0分 单选
近日,空中客车公司表示,约6000架空客A320系列飞机需要紧急更换一种易受太阳辐射影响的飞行控制软件。空客表示,在对一起飞行事故分析后的结果显示,强烈的太阳辐
A. 辐射传感器
B. 处理器
C. 内存单元
D. 输出设备
第2题 中级 2.0分 单选
小明最近为了备考GESP,开始看B站上关于网络知识的视频。其中提到计算机网络系统有不同的划分标准,那他平时上学所在的教学楼内的网络是一个( )。
A. PAN
B. LAN
C. MAN
D. WAN
第3题 中级 2.0分 单选
下面有关C++变量的说法,正确的是( )。
A. 不可以用for作为变量名,因为for是C++的关键字(保留字)。
B. _tnt不可以是变量名,因为变量名的第一个字符必须是英文字母。
C. _tnt_不可以是变量名,因为最后一个字符容易与减号混淆。
D. 可以用printf作为变量名,因为printf是关键字,但这不是好习惯。
第4题 中级 2.0分 单选
一个小数是0.123123123……无限循环,其小数点后1位是1,后2位是2,依此类推,求第N位的值。横线处应填入的代码是( )。

A. N % 3
B. (N - 1) % 3
C. N / 3
D. (N - 1) / 3
第5题 中级 2.0分 单选
某同学执行C++代码时 printf("%g\n", (3 + 3.1415926535)); 输出 6.14159,其原因最可能是( )。
A. C++中整数和浮点数相加时,整数会被转换为浮点数,而某些十进制小数无法精确表示为二进制小数,从而产生某些舍入误差。
B. C++的printf函数在输出浮点数时根据格式有默认小数点位数,因此输出了较少的位数。
C. 3.1415926535是一个无限循环小数,在计算机中无法精确表示。
D. 由于计算机CPU的运算错误导致。
第6题 中级 2.0分 单选
某单位工号的编码规则:编码总长5位,均为数字,前4位依次整除以3其值累加之和除以10的余数为第5位数字。如某工号为76587,前4位分别整除以3后,商分别为2、

A. N % 3; rst / 10
B. N % 3; rst % 10
C. N / 3; rst / 10
D. N / 3; rst % 10
第7题 中级 2.0分 单选
下面的C++代码执行后的输出是( )。

A. -1#1#
B. -1#0#1#
C. -2#-1#1#
D. -2#-1#1#2#
第8题 中级 2.0分 单选
下面的C++代码执行后其输出是( )。
A. 100
B. 55
C. 45
D. 25
第9题 中级 2.0分 单选
下面C++代码执行后其输出是( )。

A. 0 0
B. 11
C. 0
D. 0 11
第10题 中级 2.0分 单选
与下面C++输出效果不一致的代码是( )。

A. int i = 0; while (i < 10){ cout << i; i += 1; }
B. int i = 0; while (i < 10){ i += 1; cout << i; }
C. int i = 0; while (true){ cout << i; i += 1; if (i >= 10) break; }
D. int i = 0; while (true){ if (i >= 10) break; cout << i; i += 1; }
第11题 中级 2.0分 单选
下面C++代码执行后输出是( )。

A. 3#6#
B. 3#6#6
C. 1#2#3#4#5#6#
D. 1#2#3#4#5#6#6
第12题 中级 2.0分 单选
下面C++代码执行后,其输出是( )。

A. 9
B. 10
C. 14
D. 20
第13题 中级 2.0分 单选
漂亮数的定义是:如果N能被M整除,或者某位是M,或者N的每位数之和能被M整除,则说N是M的漂亮数。如果三个条件都满⾜,则是完整漂亮数。123是3的完整漂亮数。下
A. 代码能完成题目设定目标。
B. 在while循环中N最终将变成0,因此L1行代码中N%M将总是满足条件,可以在while前增加一行代码int old_num = N;,并将L1开始这4行代码中的N都改为old_num就可以做出正确的判定。
C. while循环中if判断语句可以增加else子句,其内容为Flag = 0。
D. 如果先后输入0和3,则肯定会输出0是3的完整漂亮数。
第14题 中级 2.0分 单选
阅读下面的C++代码。执行后如输入5,其输出的字符图形是( )。

A. 倒三角(5行星号递减)
B. 正三角(5行星号递增)
C. 右对齐正三角
D. 右对齐倒三角
第15题 中级 2.0分 单选
某学校举办"十佳歌手大奖赛",经过选拔最终参赛选手有25人,评委10人,最终计分规则去掉一个最高分去掉一个最低分作为该参赛选手的最终得分,并输出该得分。相关说法
A. 程序总体逻辑错误。因为要去掉最高分和最低分,需要排序,而程序没有相关代码。
B. 内层循环和外层循环之间的三行代码也就是max_score = 0 开始的三行代码应该移动到外层循环外。
C. L1和L2标记的两行代码可以分别改为简单的if语句或?:语句。
D. total_score += now_score不可以更改为total_score = total_score + now_score。
第16题 中级 2.0分 判断
鸿蒙是华为公司开发的一款操作系统,那么它能够将正确的源程序翻译成目标程序,并运行。( )
T. 正确
F. 错误
第17题 中级 2.0分 判断
C++表达式 5 < 10 && 20 对应的逻辑值为 true。( )
T. 正确
F. 错误
第18题 中级 2.0分 判断
C++表达式 10 / 0.333333 == 10 / (1 / 3) 的值为 true。( )
T. 正确
F. 错误
第19题 中级 2.0分 判断
下面C++代码中N是整数,执行时无论输入负整数、0或正整数,其输出都将是0。( )

cin >> N; while (N) N /= 10; cout << N;

T. 正确
F. 错误
第20题 中级 2.0分 判断
下面的C++代码执行后,其输出是4 0。( )

T. 正确
F. 错误
第21题 中级 2.0分 判断
C++代码中对表达式('Z' - 'A') < ('z' - 'A')的结果输出为0。( )
T. 正确
F. 错误
第22题 中级 2.0分 判断
下面的C++代码可以用于判断正整数N的位数(即几位数,如123是3位数,12为2位数)。( )
T. 正确
F. 错误
第23题 中级 2.0分 判断
计算交叉加减的结果,形如1-2+3-4+5-……。下面C++代码中的变量都是整型,则将Flag = -Flag改为Flag -= Flag效果相同。( )

T. 正确
F. 错误
第24题 中级 2.0分 判断
下列C++代码段执行后将输出55。( )

T. 正确
F. 错误
第25题 中级 2.0分 判断
下面C++代码执行后输出九九乘法表,因为代码printf("\n")没有任何可读内容,删除不影响输出效果。( )

T. 正确
F. 错误
第26题 中级 25.0分 编程
环保能量球

小杨最近在玩一个环保主题的游戏。在游戏中,小杨每行走1公里就可以获得1点"环保能量"。 为了激励玩家,游戏设置了"里程奖励":小杨每行走x公里,游戏就会额外奖励1点能量。 现在已知小杨总共行走了n公里,请你帮他计算,他一共能获得多少点环保能量?

【输入格式】
第一行包含一个正整数t,代表测试数据组数。
对于每组测试数据:
第一行包含一个正整数n,代表行走的公里数。
第二行包含一个正整数x,代表奖励触发的间隔。
【输出格式】
对于每组测试数据,输出一个整数,代表小杨获得的环保能量总数。
【样例输入】

3
5
2
10
3
2
5
【样例输出】

7
13
2
【样例解释】

第1组数据,n=5,x=2:小杨行走获得5点能量。此外,他在第2公里和第4公里时各获得1点额外奖励,总共7点。
第2组数据,n=10,x=3:行走获得10点。他在第3、6、9公里时各获得1点额外奖励,总共13点。
第3组数据,n=2,x=5:行走获得2点。由于行走路程不足5公里,没有额外奖励,总共2点。
对于全部数据,保证:1<=t<=10,1<=n<=10^5,1<=x<=10^3。
第27题 中级 25.0分 编程
黄金格

小杨在探险时发现了一张神奇的矩形地图,地图有H行和W列。每个格子的坐标是(r,c),其中r表示行号从1到H,c表示列号1到W。 小杨听说地图中隐藏着一些"黄金格",这些格子满足一个神秘的数学挑战:当格子坐标(r,c)代入特定的不等式关系成立时,该格子就是黄金格。具体来说,黄金格的条件是:sqrt(r*r + c*c) <= x + r - c。

【输入格式】
三行,每行一个正整数,分别表示H、W、x。含义如题面所示。
【输出格式】
一行一个整数,代表黄金格数量。
【样例输入1】

4
4
2
【样例输出1】

4
【样例解释】

图中标注为黄色的四个格子是黄金格,坐标分别为(1,1)、(1,2)、(1,3)、(1,4)。
对于所有测试点,保证给出的正整数不超过1000。
💬