CCF GESP 2024年9月认证 C++ 4级
二
判断题
第 1 题
代码 int a = 10; int* p = &a; 可以正确定义指针和初始化指针。
第 2 题
在 C++ 中,引用传递允许函数修改传递给它的参数的值。
第 3 题
指针的大小与其所指向的变量的数据类型的大小相同。
第 4 题
二维数组的行的大小必须在定义时确定,列的大小可以动态变化。
第 5 题
递推算法通过逐步求解当前状态和前一个或几个状态之间的关系来解决问题。
第 6 题
选择排序是稳定的排序算法。
第 7 题
插入排序的时间复杂度总是比冒泡排序低。
第 8 题
在 C++ 中,如果没有捕获到异常(没有匹配的 catch 块),程序会继续执行而不会终止。
第 9 题
以下代码用递推法求斐波那契数列的第 n 项,时间复杂度为指数级。
int fibonacci(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
int f0 = 0; // F(0)
int f1 = 1; // F(1)
int current;
for (int i = 2; i <= n; i++) {
current = f0 + f1; // F(n) = F(n-1) + F(n-2)
f0 = f1;
f1 = current;
}
return current;
}
第 10 题
执行下面 C++ 代码后,输出的是 20。
int point(int* p){
return *p * 2;
}
int main() {
int a = 10;
int* p = &a;
*p = point(p);
cout << *p << endl;
}
判断题部分已到底了。