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