CCF GESP 2025年12月认证 C++ 2级

判断题
共 10 道 每题 2 分 共计 20 分
第 1 题

鸿蒙是华为公司开发的一款操作系统,那么它能够将正确的源程序翻译成目标程序,并运行。( )

正确
错误
第 2 题

C++ 表达式 5 < 10 && 20 对应的逻辑值为 true 。( )

正确
错误
第 3 题

C++ 表达式 10 / 0.333333==10 / (1 / 3) 的值为 true 。( )

正确
错误
第 4 题

下面 C++ 代码中 N 是整数,执行时无论输入负整数、0 或正整数,其输出都将是 0 。 ( )

cin >> N;
while (N)
    N /= 10;
cout << N;
正确
错误
第 5 题

下面的 C++ 代码执行后,其输出是 4 0 。( )

int a,b;
a = 4;
b = a == 5;
cout << a << ' ' << b;
正确
错误
第 6 题

C++ 代码中对表达式 ('Z' - 'A') < ('z' - 'A') 的结果输出为 0 。( )

正确
错误
第 7 题

下面的 C++ 代码可以用于判断正整数 N 的位数(即几位数,如 123 是 3 位数,12 为 2 位数)。( )

int N, N10, i;
cin >> N;
N10 = 10, i = 1;
while (1) {
    if (N % N10 == N) {
        printf("%d 是 %d 位数", N, i);
        break;
    }
    i++, N10 *= 10;
}
正确
错误
第 8 题

计算交叉加减的结果,形如 1-2+3-4+5-……。下面 C++ 代码中的变量都是整型,则将 Flag = -Flag 改为 Flag -= Flag 效果相同。( )

cin >> N;
Flag = -1;
tnt = 0;
for (i = 1; i < N + 1; i++) {
    Flag = -Flag;
    tnt += Flag * i;
}
cout << tnt;
正确
错误
第 9 题

下列 C++ 代码段执行后将输出 55 。( )

int cnt = 0;
for (i = 0; i < 10; i++)
    for (j = i; j < 10; j++)
        cnt += 1;
cout << cnt;
正确
错误
第 10 题

下面 C++ 代码执行后输出如下,因为代码 printf("\n") 没有任何可读内容,删除不影响输出效果。( )

1  2  3  4  5  6  7  8  9
2  4  6  8 10 12 14 16 18
3  6  9 12 15 18 21 24 27
4  8 12 16 20 24 28 32 36
5 10 15 20 25 30 35 40 45
6 12 18 24 30 36 42 48 54
7 14 21 28 35 42 49 56 63
8 16 24 32 40 48 56 64 72
9 18 27 36 45 54 63 72 81
for (int i = 1; i < 10; i++) {
    for(int j = 1; j < 10; j++)
        printf("%3d", i * j);
    printf("\n");
}
正确
错误
判断题部分已到底了。