2025 年 12 月 GESP C++ 四级编程能力认证真题
一、单选题(每题 2 分,共 30 分)
第 1 题 小杨想让指针 p 指向整数变量 x,正确写法是( )。 A. int p = &x; B. int *p = x; C. int *p = &x; D. p = *x;
第 2 题 小杨写了如下的指针接力程序,程序执行完后变量 a、p1 和p2 的值分别是( )。
int a = 5;
int* p1 = &a;
int* p2 = p1;
*p2 = 10;
A. 5 10 10 B. 5 10 15 C. 10 10 10 D. 5 5 10
第 3 题 小杨用一个二维数组表示棋盘,其中 1 表示有棋子,0 表示没有棋子。他想知道第 2 行第 3 列有没有棋子,可采用的代码是:( )。
int a[3][4] = { {1, 0, 1, 0}, {0, 1, 0, 1}, {1, 1, 0, 0} };
A. cout << a[1, 2] << endl; B. cout << a[1][2] << endl; C. cout << a(1, 2) << endl; D. cout << a{1}{2} << endl;
第 4 题 执行完下面的代码后,*(p + 5) 和 arr[1][1] 的值分别是( )。
int arr[3][4] = {{1,2,3,4}, {5,6,7,8}, {9,10,11,12}};
int* p = &arr[0][0];
A. 5 6 B. 6 5 C. 5 5 D. 6 6
第 5 题 执行完下面的代码后,sum 的值是( )。
int arr[][][] = { {{,}, {,}, {,}}, {{,}, {,}, {,}} };
sum = ;
( i = ; i < ; i++)
( j = ; j < ; j++)
( k = ; k < ; k++)
((i+j+k) % == )
sum += arr[i][j][k];


