#1181. GESP C++ 一 级 2026年9月真题 · 单选题
GESP C++ 一 级 2026年9月真题 · 单选题
GESP C++ 一 级 2026年9月真题(120 分钟,总分 100 分)
单选题(共 15 题,每题 2 分,共 30 分)
1. 第二届世界人形机器人运动会开幕式上,机器人方阵通过控制程序来完成整场表演。表演前,工程师们使用集成开发环境(IDE)编写并调试方阵的控制程序。下列关于 IDE 功能的描述,错误的是( )。
{{ select(1) }}
- 可以提供代码自动补全,提高编程效率
- 可以提供辅助信息,帮助排查程序逻辑错误
- 可以直接控制机器人电机转动
- 支持语法高亮,使代码更易阅读
2. 现代计算机自问世至今,已经经历了四个时代,即:电子管计算机(1946—1958 年)、晶体管计算机(1958—1964 年)、中小规模集成电路计算机(1965—1970 年)以及大规模和超大规模集成电路计算机(1971 年至今)。那么这里划分计算机时代所采用的主要依据是( )。
{{ select(2) }}
- 运算速度
- 存储容量
- 体积大小
- 核心元器件
3. 下列 C++ 代码执行的输出是( )。
int a = 4 + -2 * 3;
cout << a;
{{ select(3) }}
- -2
- 6
- 18
- 输出错误提示信息
4. 下列 C++ 表达式与 2 * - 2 % 3 的值相同的是( )。
{{ select(4) }}
(2 * - 2) % 32 * (- 2 % 3)2 * - (2 % 3)2 % - 2 * 3
5. 如下 C++ 代码执行后,其输出是( )。
int a = 3;
int b = 4;
printf("%d#%d\n", a, b);
{{ select(5) }}
- 3 4
- 3#4
- 3 # 4
34
6. 下列 C++ 代码执行后的输出是( )。
int a = 8;
int b = 10;
cout << (a % b) << " " << (a * 1 / b) << " " << (a * 1.0 / b);
{{ select(6) }}
- 8 0.8 0
- 0 0.8 0
- 8 0 0.8
- 0 0 0.8
7. 执行下面代码后,b 的值会是( )。
int b = 8;
++b *= 2 + 1;
{{ select(7) }}
- 18
- 17
- 19
- 27
8. 执行如下 C++ 代码,其输出是( )。
int i, cnt = 0;
for (i = 0; i < 10; i++)
cnt += 1;
cout << i << ' ' << cnt;
{{ select(8) }}
- 10 10
- 9 9
- 10 9
- 9 10
9. 执行如下 C++ 代码,变量都是整型,则其输出是( )。
int cnt, i;
cnt = 0;
for (i = -10; i < 0; i++)
cnt += 1;
cout << (i * cnt);
{{ select(9) }}
- -10
- -9
- 0
- 9
10. 如下 C++ 代码执行输出是( )。
int i;
for (i = 1; i < 5; i++) {
if (i % 3 == 0) {
printf("%d+", i);
continue;
} else {
printf("%d-", i);
break;
}
}
printf("%dEND*", i);
{{ select(10) }}
- 1-1
1 - 1 END*1+1-2-2END*1-1END*
11. 如下 C++ 代码执行时,下列说法错误的是( )。
int N, tot;
cin >> N;
tot = 0;
while (N > 0) {
cout << N << "#";
tot += 1;
N -= 1;
}
cout << tot << "-END";
{{ select(11) }}
- 如果输入 3,输出是:3#2#1#3-END
- 如果输入 -10,输出是:0-END
- 如果输入 0,输出是:0-END
- 如果输入 1,输出是:1#0-END
12. 下列 C++ 代码执行时如输入 35,输出如下图所示。横线处应填入的代码是( )。
35 34 33 32 31 30 29 28 27 26
25 24 23 22 21 20 19 18 17 16
15 14 13 12 11 10 9 8 7 6
5 4 3 2 1
int N, tot, i;
cin >> N;
tot = 0;
for (i = 0; i < N; i++) {
printf(__________);
tot = tot + 1;
if (tot % 10 == 0)
printf("\n");
}
{{ select(12) }}
"%3d", N"%3d", N - iN - i- N
13. 下面 C++ 代码执行后输出是( )。
int k = 0;
while (k < 8) {
k += 2;
continue;
if (k > 5)
break;
cout << k << "#";
}
if (k >= 8)
cout << "FINISH";
{{ select(13) }}
- FINISH
- 2#4#6#FINISH
- 2#4#FINISH
- 2#4#6#8#FINISH
14. 在下列 C++ 代码中,如果 N 和 M 均输入大于 0 的整数,则可以取得正整数 N 的从右到左第 M 位置的数。个位数为第 1 位置。则横线处应填入( )。
int N, M, M10;
cout << "请输入正整数:";
cin >> N;
cout << "从右到左第几位? ";
cin >> M;
M10 = 1;
for (; M > 1; M--)
M10 *= 10;
cout << ______________; // L1
{{ select(14) }}
N / M10 % 10N / M10 / 10N % M10 % 10N % M10 / 10
15. 求解鸡兔同笼。在如下 C++ 代码中,tou 代表鸡和兔的头总数,jiao 代表鸡和兔的脚总数。先后两个输入均为正整数。关于该程序下面说法准确的是( )
int tou, jiao, tu_tou, ji_tou;
cout << "请输入鸡和兔的头总数: ";
cin >> tou;
cout << "请输入鸡和兔的脚总数: ";
cin >> jiao;
for (tu_tou = 0; tu_tou < tou + 1; tu_tou++) { // L1
ji_tou = tou - tu_tou;
if (tu_tou * 4 + ji_tou * 2 == jiao) {
printf("兔的数量=%d,鸡的数量=%d\n", tu_tou, ji_tou);
break;
}
}
if (tu_tou == tou) // L2
printf("无解\n");
{{ select(15) }}
- 能求解鸡兔同笼。
- ji_tou 没有初始化,在 L1 行代码前增加 ji_tou = 0; 即可求解鸡兔同笼。
- 将 L1 行的 tu_tou < tou + 1 改为 tu_tou <tou 即可求解鸡兔同笼。
- 将 L2 行的 tu_tou == tou 改为 tu_tou == tou + 1 即可求解鸡兔同笼。
相关
在下列比赛中: