#1188. GESP C++ 四 级 2026年9月真题 · 判断题
GESP C++ 四 级 2026年9月真题 · 判断题
GESP C++ 四 级 2026年9月真题(120 分钟,总分 100 分)
判断题(共 10 题,每题 2 分,共 20 分)
1. 执行下面程序后,变量 a 的值为 15。
int a = 10;
int *p = &a;
*p += 5;
{{ select(1) }}
- 正确
- 错误
2. 一个函数必须在调用之前既声明又定义。
{{ select(2) }}
- 正确
- 错误
3. 下面二维数组在内存中按行优先连续存储,因此 *(*(a + 1) + 0) 的值为 5。
int a[2][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}};
{{ select(3) }}
- 正确
- 错误
4. 执行下面程序后会输出 20。
void change(int x) {
x = 20;
}
int main() {
int x = 10;
change(x);
cout << x;
return 0;
}
{{ select(4) }}
- 正确
- 错误
5. 下面结构体初始化语句是合法的。
struct Point {
int x;
int y;
};
Point p{3, 4};
{{ select(5) }}
- 正确
- 错误
6. 对于按升序实现的稳定插入排序,移动元素的条件通常应为 a[j] >= key,这样能够保证相等元素的相对顺序不变。
while (j >= 0 && a[j] >= key) {
a[j + 1] = a[j];
j--;
}
{{ select(6) }}
- 正确
- 错误
7. 下面递推程序计算n!。当 n = 4 时,返回值为 24。
int factorial(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
{{ select(7) }}
- 正确
- 错误
8. 下面两层循环的时间复杂度是 O (n²)。
for (int i = 0; i < n; i++) {
for (int j = 1; j < n; j *= 2) {
cout << i + j;
}
}
{{ select(8) }}
- 正确
- 错误
9. 假设文件能够正常打开,下面程序会把 Welcome 写入 log.txt。
int main() {
ofstream fout("log.txt");
fout << "Welcome";
fout.close();
return 0;
}
{{ select(9) }}
- 正确
- 错误
10. 执行下面程序时,catch (int e) 能够捕获由 throw "Error" 抛出的异常,因此程序输出 Caught。
int main() {
try {
throw "Error";
} catch (int e) {
cout << "Caught";
}
return 0;
}
{{ select(10) }}
- 正确
- 错误
相关
在下列比赛中: