#G1147. 2023年12月 GESP C++ 二级
2023年12月 GESP C++ 二级
GESP 202312 C++ 二级
第 1 题
以下不可以作为 C++ 变量的是({{ select(1) }})。
- FiveStar
- fiveStar
- 5Star
- Star5
第 2 题
在 C++ 中,与 for(int i = 10; i < 20; i += 2) cout << i; 输出结果相同的是 ({{ select(2) }})。
for(int i = 10; i < 19; i += 2) cout << i;for(int i = 11; i < 19; i += 2) cout << i;for(int i = 10; i < 21; i += 2) cout << i;- 以上均不对
第 3 题
以下 C++ 代码实现从小到大的顺序输出能整除 的数( 的因子),例如 时输出 1 2 3 6 9 18,横线处应填入 ( )。
cin >> N;
for(__________)
if(N % i == 0)
cout << i << " ";
{{ select(3) }}
int i = 0; i < N; i++int i = 1; i < N; i++int i = 0; i < N+1; i++int i = 1; i < N+1; i++
第 4 题
下面 C++ 代码用于判断输入的整数是否为对称数,如 1221、12321 是对称数,但 123、972 不是对称数。下面对该题对应代码的说法,正确的是 ( )。
cin >> N;
newNum = 0;
while(N) {
newNum = newNum * 10 + N % 10;
N = N / 10;
}
if(newNum == N)
cout << N << "为对称数";
{{ select(4) }}
- 代码没有语法错误,如果 N 为对称数,第 8 行将能正确输出。
- 代码没有语法错误,但如果 N 为负数,将导致死循环。
- 代码存在语法错误,程序不能被执行。
- 代码没有语法错误,但不能达到预期目标,因为循环结束 N 总为 0。
第 5 题
下面 C++ 代码用于判断 (大于等于 的正整数)是否为质数(素数)。下面对如下代码的说法,正确的是 ( )。
cin >> N;
for(i = 2; i < N/2; i++)
if(N % i == 0) {
cout << N << " 不是质数";
break;
}
if(i >= N/2)
cout << N << " 是质数";
{{ select(5) }}
- 代码能正确判断 N 是否为质数。
- 代码总是不能判断 N 是否质数。
- 删除第 5 行
break,将能正确判断 N 是否质数。 - 代码存在漏洞,边界存在问题,应将第 2 行和第 7 行的
N / 2改为N / 2 + 1。
第 6 题
下面 C++ 代码执行后的输出是 ( )。
N = 4;
for(int i = 0; i < N; i++) {
for(int j = 1; j < i; j++)
if (i * j % 2 == 0)
cout << i << "#";
continue;
}
cout << "0";
{{ select(6) }}
- 2#3#0
- 1#2#0
- 1#0#
- 2#3#
第 7 题
下面 C++ 代码执行后的输出是 ( )。
cnt = 0;
for(i = 1; i < 10; i++)
for(j = 1; j < i; j += 2)
if (i * j % 2 == 0) {
cnt++;
break;
}
if(i >= 10) cout << cnt << "#";
cout << cnt;
{{ select(7) }}
- 0
- 8#8
- 4
- 4#4
第 8 题
下面 C++ 代码执行后的输出是 ( )。
N = 100;
while (N > 0)
if (N % 2)
break;
else if (N % 3 == 0)
N -= 5;
else
N -= 20;
cout << N;
{{ select(8) }}
- 100
- 95
- 55
- 0
第 9 题
下面 C++ 代码执行后的输出是 ( )。
x = 1;
while (x < 100) {
if (x % 3 != 0)
cout << x << ",";
else if (x / 10)
break;
else
x += 5;
x += 2;
}
cout << x;
{{ select(9) }}
- 1
- 1,3
- 15,17
- 1,10,12
第 10 题
下面 C++ 代码执行后的输出是 ( )。
cnt = 0;
for (i = 0; i < 5; i++)
for (j = 0; j <= i; j++)
cnt += 1;
cout << cnt;
{{ select(10) }}
- 5
- 10
- 20
- 30
第 11 题
以下 C++ 代码用于输出 (含)的整数平方数(完全平方数),如 是 的平方,横线处应填写( )。
for (i = 1; i < 100 + 1; i++)
if (__________________)
cout << i << " ";
{{ select(11) }}
int(sqrt(i)) * int(sqrt(i)) = iint(sqrt(i)) == sqrt(i)int(sqrt(i)) * int(sqrt(i)) == iint(sqrt(i)) = sqrt(i)
第 12 题
下面的 C++ 代码用于实现如下左图所示的效果,应在以下右图 C++ 代码中填入
( )。
cin >> N;
for (i = 0; i < N; i++) {
nowNum = 0;
for (j = 0; j < i + 1; j++) {
cout << nowNum << " ";
nowNum += 1;
if (nowNum == 10)
nowNum = 0;
}
}
{{ select(12) }}
- 于第 8 行下面填入一行:`cout << nowNum;`
- 于第 2 行下面填入一行:`cout << endl;`
- 于第 7 行下面填入一行:`cout << nowNum;`
- 于第 9 行下面填入一行:`cout << endl;`
---
### 第 13 题
某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。({{ select(13) }})
- 麦克风
- 扬声器
- 油量表
- 传感器
---
### 第 14 题
现代计算机是指电子计算机,它所基于的是({{ select(14) }})体系结构。
- 艾伦·图灵
- 冯·诺依曼
- 阿塔纳索夫
- 埃克特-莫克利
---
### 第 15 题
输入一个正整数 $N$,想找出它所有相邻的因数对,比如,输入 $12$,因数对有 $(1,2)$、$(2,3)$、$(3,4)$。下面哪段代码找不到所有的因数对?({{ select(15) }})
- `for(i=1;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("%d,%d\n", i, i+1);`
- `for(i=2;i<N;i++) if(!(N%i) && !(N%(i+1))) printf("%d,%d\n", i, i+1);`
- `for(i=2;i<N/2;i++) if(!(N%(i-1)) && !(N%i)) printf("%d,%d\n", i-1, i);`
- `for(i=1;i<N/2;i++) if(!(N%i) && !(N%(i+1))) printf("%d,%d\n", i, i+1);`
---
### 第 16 题
C++ 表达式 `-7/2` 的值为整数 $-3$。({{ select(16) }})
- 正确
- 错误
---
### 第 17 题
C++ 表达式 `2*int('9')*2` 的值为 $36$。({{ select(17) }})
- 正确
- 错误
---
### 第 18 题
C++ 表达式 `3+2 && 5-5` 的值为 `false`。({{ select(18) }})
- 正确
- 错误
---
### 第 19 题
在 C++ 代码中,执行 `srand(0)` 后连续两次执行 `rand()` 的结果相等。({{ select(19) }})
- 正确
- 错误
---
### 第 20 题
C++ 代码中 `while(1){...}` 的判断条件不是逻辑值,将导致语法错误。({{ select(20) }})
- 正确
- 错误
---
### 第 21 题
执行以下 C++ 代码后将输出 $0$。( )
```cpp
Sum = 0;
for (i = -500; i < 500; i++)
Sum += i;
cout << Sum;
{{ select(21) }}
- 正确
- 错误
第 22 题
在 C++ 代码中,运算符只能处理相同的数据类型,不同类型之间必须转换为相同的数据类型。({{ select(22) }})
- 正确
- 错误
第 23 题
在 C++ 代码中,虽然变量都有数据类型,但同一个变量也可以先后用不同类型的值赋值。({{ select(23) }})
- 正确
- 错误
第 24 题
小杨最近在准备考 GESP,他用的 Dev C++ 来练习和运行程序,所以 Dev C++ 也是一个小型操作系统。({{ select(24) }})
- 正确
- 错误
第 25 题
任何一个 while 循环都可以转化为等价的 for 循环。({{ select(25) }})
- 正确
- 错误