#2321. GESP 202606 C++ 一级
GESP 202606 C++ 一级
1、学校组织到未来农场参观,小明听讲解员介绍,在智能温室中,湿度传感器可以连续检测土壤的湿度变化,并将检测到的湿度数据实时发送给中央控制器。中央控制器根据这些数据判断是否开启灌溉系统。请问,这里的湿度传感器所发挥的作用,类似于计算机系统中的哪一类组件?( ) {{ select(1) }}
- 处理器
- 存储器
- 输入设备
- 输出设备
2、在使用某集成开发环境(比如 Dev-C++)来编辑源代码文件时,程序员经常需要在编辑区中对代码进行各种修改。以下关于在编辑区中执行的操作描述不正确的( )。 {{ select(2) }}
- 可以将变量名
count统一修改为number - 可以连续撤销最近 10 次输入的内容
- 可以调整代码行的缩进(如按
Tab键) - 在注释文本中间不能混用中英文
3、有关如下 C++ 代码的说法,正确的是( )。
float a = 3 + 3.5;
cout << a;
{{ select(3) }}
- 代码执行将报错。如果将
a = 3 + 3.5改为a = 3 + 3 + 1/2将能正常执行。 - 代码执行将报错。如果将
a = 3 + 3.5改为a = 3.0 + 3.5将能正常执行。 - 代码能正常执行,将输出 6。
- 代码能正常执行,将输出 6.5。
4、下列 C++ 表达式与 -2 * 2 % 4 的值不同的是( )。
{{ select(4) }}
-(2 * 2) % 4(-2 * 2) % 4-2 * (2 % 4)(2 * 2) % -4
5、执行如下 C++ 代码片段,其输出是( )。
int a = 3;
int b = a;
a = 4;
printf("%d %d", a, b);
{{ select(5) }}
- 3 3
- 4 3
- 4 4
- 3 4
6、如下 C++ 代码执行时输入 2026-6-27,下列说法正确的是( )。
int N;
cin >> N;
cout << N;
{{ select(6) }}
- 输入失败,不允许输入减号,没有输出
- 允许输入,输出 1993
- 允许输入并原样输出
2026-6-27 - 允许输入并输出 2026
7、如下 C++ 代码执行时,其说法错误的是( )。
int N, M;
cin >> N >> M;
if (N > M)
cout << "A " << (N - M);
else
cout << "B " << (M - N);
{{ select(7) }}
- 如果输入
4 3,将输出A 1 - 如果输入
3 4,将输出B 1 - 如果输入
3 3,将输出A 0 - 如果输入
4 4,将输出B 0
8、阅读如下 C++ 代码,下列说法错误的是( )。
int cnt = 0;
for (int i = 0; i < 5; i++)
cnt += 1;
cout << cnt;
{{ select(8) }}
- 将
cnt += 1修改为cnt = cnt + 1,执行效果相同 - 将
cnt += 1修改为cnt = 1 + cnt,执行效果相同 - 将
cnt += 1修改为cnt =+ 1,执行效果相同 - 将
cnt += 1修改为cnt = +1 + cnt,执行效果相同
9、如下 C++ 代码执行后输出是 1 2 3 4 5 6 7 8 9 10 11 5 6 7 8 9 10 11 5 6 7 8 9 10 11 5 6 7 8 9 10 11 5 6 7。横线处应该先后依次填入的运算符是( )。
int num = 1;
for (int i = 0; i < 35; i++) {
printf("%d ", num);
if (num _______ 10)
num _______ 2;
else
num _______ 1;
}
{{ select(9) }}
>/=+=>=%=+=>%=+=>/==+
10、如下 C++ 代码可以执行,其输出是( )。
int i;
for (i = 1; i < 5; i++)
if (i % 2 == 0) {
continue;
cout << i << "#";
}
cout << i << "END#";
{{ select(10) }}
5END#5#END1#3#4#END1#3#4 END#
11、如下 C++ 代码执行时,下列说法正确的是( )。
int N, i;
cin >> N;
for (i = 2; i < N; i++)
if (N % i == 0) {
cout << "1#";
break;
} else
cout << "0#";
{{ select(11) }}
- 如果输入
2,将输出1#。 - 如果输入
15,将输出0#1#。 - 如果输入
1,将输出0#。 - 如果输入
3,将输出1#。
12、有关如下 C++ 代码,下列说法中错误的是( )。
int i, tot;
i = 0, tot = 0;
while (0 <= i && i < 10) {
tot += 1;
i += 1;
}
cout << tot;
{{ select(12) }}
- 如果调整
0 <= i && i < 10为1 <= i && i < 10,输出同样为 45,因为加上 0 不影响结果。 - 如果将
i = 0和tot = 0合并为i = tot = 0,执行结果与修改前相同。 - 将
tot += 1与i += 1交换顺序,执行结果与修改前相同。 - 将
i = 0与tot = 0交换顺序,执行结果与修改前相同。
13、以下 C++ 代码可以找出千位、百位、十位和个位满足特定条件的四位数(例如各位数字的四次方和等于原数,即“四叶玫瑰数”),横线处应该填入的是( )。
int count = 0;
for (int n = 1000; n <= 9999; n++) {
int a = n / 1000;
int b = (n / 100) % 10;
_________________________ // L1
int d = n % 10;
if (a * a * a * a + b * b * b * b + c * c * c * c + d * d * d * d == n) { // 特定条件
count++;
}
}
{{ select(13) }}
int c = (n / 10) / 10;int c = (n / 10) % 10;int c = (n % 10) / 10;int c = (n % 10) % 10;
14、下面的 C++ 代码用于计算经过 n 秒后的秒针位置(0 表示 12 点方向),两处横线处分别应填入的代码是( )。
int start, n, pos;
cout << "当前秒数(0-59): ";
cin >> start;
cout << "经过多少秒: ";
cin >> n;
pos = ____________; // L1
if (____________) // L2
cout << n << "秒后回到12点方向" << endl;
else
cout << n << "秒后指向" << pos << "秒刻度" << endl;
{{ select(14) }}
(start + n) / 60和pos == 0(start + n) % 60和pos == 0(start + n) / 60和pos <= 0(start + n) % 60和pos = 0
15、如果正整数 N 只能被 1 和它本身整除,则它是一个质数(或素数)。下面的 C++ 代码用于判断正整数 N 是否为质数(素数)。若 N 是质数,输出 YES,否则输出 NO。横线处不应填入的代码是( )。
int N, i;
cin >> N;
if (N <= 1) {
cout << "NO";
return 0;
}
for (i = 2; ______; i++) {
if (N % i == 0) {
cout << "NO";
return 0;
}
}
cout << "YES";
{{ select(15) }}
i < Ni <= Ni <= N / 2i * i <= N
16、又到期末考试周,小明发现这次许多闭卷考试不仅禁止携带手机、平板电脑,还有最近比较时髦的各类 AI 眼镜(也有叫智能眼镜)也同样不允许带入考场。这些 AI 眼镜应该也是内置了操作系统并可能支持 Wi-Fi 或蓝牙连接。 {{ select(16) }}
- 正确
- 错误
17、如果 n 为大于 0 的整数,则 C++ 表达式 (n / 10) % 10 与 (n % 100) / 10 的结果相同。
{{ select(17) }}
- 正确
- 错误
18、下面 C++ 代码执行后将输出 19。
int i;
for (i = 0; i < 20; i += 3)
if (i % 3 != 0)
break;
cout << i;
{{ select(18) }}
- 正确
- 错误
19、在数学中,n! 称之为 n 的阶乘,其含义是 1 到 n 之积,包括 1 和 n。如 5! = 1 \times 2 \times 3 \times 4 \times 5 = 120。如下 C++ 代码能输出 N! 的结果。
int N;
cout << "请输入正整数:";
cin >> N;
int rst = 0;
for (int i = 1; i < N + 1; i++)
rst *= i;
cout << rst;
{{ select(19) }}
- 正确
- 错误
20、如下 C++ 代码能实现输出正整数 N 的各位数字。
int N;
cin >> N;
while (N > 0) {
cout << (N % 10) << endl;
N = N / 10;
}
{{ select(20) }}
- 正确
- 错误
21、将如下 C++ 代码中的 printf("\n") 更换为 printf("%c", '\n'),输出效果相同。
for (int i = 0; i < 100; i++) {
if (i % 5 == 0)
printf("\n");
printf("- ", i);
}
{{ select(21) }}
- 正确
- 错误
22、C++ 代码 cout << (2.5 % 2) 能够生成可执行代码,但执行时将报错,因为 % 只能适用于正整数。
{{ select(22) }}
- 正确
- 错误
23、下面的 C++ 代码执行后将输出 24。
int total;
for (int n = 1; n <= 4; n++) {
total *= n;
}
cout << total;
{{ select(23) }}
- 正确
- 错误
24、如果 a 是 C++ 的整型变量,值为 4,则表达式 (a % 2 == 0) + (a / 2) 的值为 4。
{{ select(24) }}
- 正确
- 错误
25、删除下面 C++ 代码中的 continue 后,其输出与原来相同。
int x = 0;
while (x < 4) {
x++;
if (x == 2) continue;
cout << x << ",";
}
{{ select(25) }}
- 正确
- 错误