#GESP260602T2. 【GESP26年6月二级】判断题(每题 2 分,共 20 分)
第 16 题 王同学在大学军训时,小明发现军训操练中有些动作需要左右两边的同学相互配合。不同队列、不同队形也有不同特点。他在对比不同数据结构后,选择用链表来模拟一个队列。后来在学习了双向链表后,他了解到双向链表的好处是可以更快速高效地在前后两个方向上遍历并操作目标数据元素。王同学把这个结论告诉了5个同学中3个同学表示赞同。因此王同学认为该结论是正确的。( )
{{ select(16) }}
- 对
- 错
第 17 题 C++ 代码 cout << (int)'5' * 2 == 82 的运行结果是 1 ,这是因为 (int) '5' * 2 == 82 这条C++语句是正确的表达式( )。
{{ select(17) }}
- 对
- 错
第 18 题 C++ 代码 cout << int(3.51) + int(3.51 + 27) 输出 33( )。
{{ select(18) }}
- 对
- 错
第 19 题 下面 C++ 代码执行后输出是 4 5 6 7。
for (int i = 1; i <= 10; i++) {
if (int i % 3 == 0)
continue;
cout << i << " ";
}
( )
{{ select(19) }}
- 对
- 错
第 20 题 执行如下 C++ 代码,将从小到大依次输出 abs(N) 个整数,并在最后输出 1 。
int N;
cin >> N;
int start_num = 1, end_num = N + 1, i;
if (N < 0)
start_num = N, end_num = 0;
for (i = start_num; i < end_num; i++)
cout << i << " ";
cout << endl << ((i - 1) == abs(N)) << endl;
( )
{{ select(20) }}
- 对
- 错
第 21 题 如下 C++ 代码执行后,输出值为 9 。
int cnt = 0, i;
for (i = 0; i < 10; i++) {
for (int j = 0; j < i; j++)
cnt += 1;
break;
}
cout << i;
( )
{{ select(21) }}
- 对
- 错
第 22 题 如下 C++ 代码执行时如输入 10 ,输出将是 100 。
int cnt = 0, N;
cout << "请输入正整数: ";
cin >> N;
for (int i = 0; i < N; i++)
for (int j = -i; j < i; j++)
cnt += 1;
cout << cnt;
( )
{{ select(22) }}
- 对
- 错
第 23 题 如下 C++ 代码执行其输出是 3 。
int count = 0;
int i = 0;
while (i < 3) {
int j = 0;
while (j < 3) {
if (i + j >= 3)
count += 1;
j += 1;
}
i += 1;
}
cout << count;
( )
{{ select(23) }}
- 对
- 错
第 24 题 如下 C++ 代码执行时如果输入正整数,其输出将是输入的正整数。
int N;
cin >> N;
int i = 0, Nbase = 1;
int rst = 0;
while (N != 0) {
rst = rst + N % 10 * Nbase;
N /= 10, Nbase *= 10;
i += 1;
}
cout << rst;
( )
{{ select(24) }}
- 对
- 错
第 25 题 如下 C++ 代码执行时如输入 5 ,将输出代码后的字符图形。
int n;
cin >> n;
for (int i = 1; i < n + 1; i++) {
for (int j = 1; j < n - i + 1; j++)
cout << 0;
for (int k = 1; k < 2 * i; k++) {
if (k <= i)
cout << k;
else
cout << 2 * i - k;
}
for (int j = 1; j < n - i + 1; j++)
cout << 0;
cout << endl;
}
000010000
000121000
001232100
012343210
123454321
( )
{{ select(25) }}
- 对
- 错