CCF GESP 2023年12月认证 C++ 2级
一
单选题
第 1 题
以下不可以作为 C++ 变量的是( )。
第 2 题
在 C++ 中,与 for(int i = 10; i < 20; i += 2) cout << i; 输出结果相同的是 ( )。
第 3 题
以下 C++ 代码实现从小到大的顺序输出能整除 $N$ 的数($N$ 的因子),例如 $N=18$ 时输出 1 2 3 6 9 18,横线处应填入 ( )。
cin >> N;
for(__________)
if(N % i == 0)
cout << 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 << "为对称数";
第 5 题
下面 C++ 代码用于判断 $N$(大于等于 $2$ 的正整数)是否为质数(素数)。下面对如下代码的说法,正确的是 ( )。
cin >> N;
for(i = 2; i < N/2; i++)
if(N % i == 0) {
cout << N << " 不是质数";
break;
}
if(i >= N/2)
cout << N << " 是质数";
第 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";
第 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;
第 8 题
下面 C++ 代码执行后的输出是 ( )。
N = 100;
while (N > 0)
if (N % 2)
break;
else if (N % 3 == 0)
N -= 5;
else
N -= 20;
cout << N;
第 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;
第 10 题
下面 C++ 代码执行后的输出是 ( )。
cnt = 0;
for (i = 0; i < 5; i++)
for (j = 0; j < i; j++)
cnt += 1;
cout << cnt;
第 11 题
以下 C++ 代码用于输出 $1\sim 100$(含)的整数平方数(完全平方数),如 $16$ 是 $4$ 的平方,横线处应填写( )。
for (i = 1; i < 100 + 1; i++)
if (__________________)
cout << 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;
}
}
第 13 题
某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。( )
第 14 题
现代计算机是指电子计算机,它所基于的是( )体系结构。
第 15 题
输入一个正整数 $N$,想找出它所有相邻的因数对,比如,输入 $12$,因数对有 $(1,2)$、$(2,3)$、$(3,4)$。下面哪段代码找不到所有的因数对?( )
单选题部分已到底了。