#95. GESP C++ 三级 样卷(客观题)
GESP C++ 三级 样卷(客观题)
一、单选题(每题2分,共30分)
第1题. 下列关于负数的原码、反码、补码的描述中,正确的是( )
{{ select(1) }}
- 原码和反码互为按位取反(符号位除外),补码为反码加 1
- 原码和反码互为按位取反(符号位除外),补码为原码加 1
- 反码和补码互为按位取反(符号位除外),原码为反码加 1
- 补码和原码互为按位取反(符号位除外),反码为补码加 1
第2题. 一个 int 类型的值乘以 8,等价于以下哪个位运算?( )
{{ select(2) }}
- 左移 3 位
- 右移 3 位
- 左移 8 位
- 右移 8 位
第3题. 以下哪个属于 C++ 语言中的位运算符?( )
{{ select(3) }}
- +
- -
- *
- &
第4题. 若有以下代码,则数组 arr 的长度是( )
int arr[] = {1, 2, 3, 4, 5};
{{ select(4) }}
- 3
- 4
- 5
- 6
第5题. 在 C++ 语言中,可以定义一个一维整型数组的是( )
{{ select(5) }}
- int array[5];
- int array[];
- int[5] array;
- int[] array;
第6题. 枚举算法的主要特点是( )
{{ select(6) }}
- 以空间换时间
- 逐个尝试所有可能的解
- 动态规划
- 贪心策略
第7题. 对于一个十进制数 37,以下哪个是它的二进制表示( )
{{ select(7) }}
- 10101
- 100101
- 101001
- 1000101
第8题. 下列关于十六进制的描述中,正确的是( )
{{ select(8) }}
- 使用 0-9 和 A-F 表示
- 使用 0-9 和 A-E 表示
- 使用 1-9 和 A-F 表示
- 使用 1-9 和 A-E 表示
第9题. 下列哪个是 C++ 语言中用于获取字符串长度的函数( )
{{ select(9) }}
- length()
- len()
- getLength()
- strlen()
第10题. 通常用下列哪种方式来描述算法?( )
{{ select(10) }}
- 汇编语言
- 伪代码
- SQL
- CSS
第11题. 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于 0 且 b 等于 0”的是()
{{ select(11) }}
- ((~a) && (~b))
- ((a & b) == 0)
- ((a | b) == 0)
- ((a ^ b) == 0)
第12题. 如果 a 为 int 类型的变量,下列哪个表达式可以正确求出满足“大于等于 a 且是 4 的倍数”的整数中最小的?( )
{{ select(12) }}
- (a & (~3))
- (a / 4 * 4)
- ((a - 1) | 3) + 1
- (a << 2)
第13题. 下面流程图,输入 1 2 3,会输出( )
{{ select(13) }}
- 无输出
- 1
- 2
- 3
第14题. 在下列代码的横线处填写() ,可以保证输出是“1357” ,不会有多余字符。
#include <iostream>
#include <string>
using namespace std;
int main() {
char str[] = "1234567";
for (______________) // 在此处填入代码
cout << str[i];
return 0;
}
{{ select(14) }}
- int i = 0; i < strlen(str); i++
- int i = 0; str[i] != ‘\0’; i++
- int i = 1; i <= 7; i += 2
- int i = 0; i <= 6; i += 2
第15题. 在下列代码的横线处填写() ,可以使得输出是“17 11” 。
#include <iostream>
using namespace std;
int main() {
int a = 11, b = 17;
a = ____________; // 在此处填入代码
b = a ^ b;
a = a ^ b;
cout << a << " " << b << endl;
return 0;
}
{{ select(15) }}
- a + b
- a - b
- a ^ b
- a & b
二、判断题(每题2分,共20分)
第16题. 二进制数据编码中,负数的补码是通过对原码按位取反并加 1 得到的。( )
{{ select(16) }}
- √
- ×
第17题. 在 C++语言中,数组的下标从 1 开始计数。( )
{{ select(17) }}
- √
- ×
第18题. 在 C++语言中,字符串是以 ‘\0’ 结尾的字符数组。( )
{{ select(18) }}
- √
- ×
第19题. 在 C++语言中,可以使用浮点数(如 3.0)作为数组下标。( )
{{ select(19) }}
- √
- ×
第20题. 枚举算法是一种暴力求解方法,逐个尝试所有可能的解。( )
{{ select(20) }}
- √
- ×
第21题. C++语言中数字的符号位是不参与位运算的。( )
{{ select(21) }}
- √
- ×
第22题. C++语言中的数组可以根据需要自动调整大小。( )
{{ select(22) }}
- √
- ×
第23题. 在 C++语言中,表达式 (0xff == 255) 的值为 true。( )
{{ select(23) }}
- √
- ×
第24题. 如果 a 为 int 类型的变量,且表达式 ((a & 1) == 0) 的值为 true,则说明 a 是偶数。( )
{{ select(24) }}
- √
- ×
第25题. 表达式 (7 >> 2) 的计算结果为 1.75,且结果类型为 double。( )
{{ select(25) }}
- √
- ×