#CSPJKG53. 计算机数学3: 数制

计算机数学3: 数制

  1. 单选题 [NOIP普及组2013] 在十六进制表示法中,字母 A 相当于十进制中的( )。 {{ select(1) }}
  • 9
  • 10
  • 15
  • 16
  1. 单选题 [GESP样题【3级】] 下列关于十六进制的描述中,正确的是( ) {{ select(2) }}
  • 使用 0-9 和 A-F 表示
  • 使用 0-9 和 A-E 表示
  • 使用 1-9 和 A-F 表示
  • 使用 1-9 和 A-E 表示
  1. 单选题 [GESP202309【3级】] 下列关于进制的叙述,正确的是( )。 {{ select(3) }}
  • 只有十进制和二进制能够用来表示小数,八进制和十六进制不可以。
  • 常用的进制包括二进制、八进制、十进制、十六进制,其他进制在日常生活中很少使用。
  • 对任意正整数,其二进制表示不会比它的十进制表示更短。
  • 正整数的八进制表示中,每一位可能出现的最大数字是8。
  1. 单选题 [GESP202306【3级】] 下列关于进制的叙述,不正确的是( )。 {{ select(4) }}
  • 正整数的二进制表示中只会出现 0 和 1。
  • 10 不是 2 的整数次幂,所以十进制数无法转换为二进制数。
  • 从二进制转换为 8 进制时,可以很方便地由低到高将每 3 位二进制位转换为对应的一位 8 进制位。
  • 从二进制转换为 16 进制时,可以很方便地由低到高将每 4 位二进制位转换为对应的一位 16 进制位。
  1. 单选题 [GESP样题【3级】] 对于一个十进制数 37,以下哪个是它的二进制表示( ) {{ select(5) }}
  • 10101
  • 100101
  • 101001
  • 1000101
  1. 单选题 [NOIP普及组2005] 和十进制数 23 的值相等的二进制数是( )。 {{ select(6) }}
  • 10110
  • 11011
  • 11011
  • 10111
  • 10011
  1. 单选题 [NOIP普及组2006/NOIP普及组2007] 与十进制数 1770 对应的八进制数是( )。 {{ select(7) }}
  • 3350
  • 3351
  • 3352
  • 3540
  1. 单选题 [NOIP普及组2004] 十进制数 2004 等值于八进制数( )。 {{ select(8) }}
  • 3077
  • 3724
  • 2766
  • 4002
  • 3755
  1. 单选题 [CSP-J2020] 二进制数 1011 转换成十进制数是( )。 {{ select(9) }}
  • 11
  • 10
  • 13
  • 12
  1. 单选题 [CSP-S2020] 请选出以下最大的数( ) {{ select(10) }}
  • (550)10
  • (777)8
  • 210
  • (22F)16
  1. 单选题 [NOIP普及组2018/NOIP提高组2018] 下列四个不同进制的数中,与其它三项数值上不相等的是( )。 {{ select(11) }}
  • (269)16
  • (617)10
  • (1151)8
  • (1001101011)2
  1. 单选题 [NOIP提高组2015] 下面有四个数据组,每个组各有三个数据,其中第一个数据为八进制数,第二个数据为十进制数,第三个数据为十六进制数。这四个数据组中三个数据相同的是( )。 {{ select(12) }}
  • 120 82 50
  • 144 100 68
  • 300 200 C8
  • 1762 1010 3F2
  1. 单选题 [NOIP普及组2012] 十六进制数 9A 在( )进制下是 232 {{ select(13) }}
  • 十二
  1. 单选题 [GESP202312【3级】] 在下列编码中,不能够和⼆进制1101 1101相等的是( )。 {{ select(14) }}
  • (221)10进制
  • (335)8进制
  • (dd)16进制
  • (5d)16进制
  1. 单选题 [GESP202406【8级】] 7进制数235转换成3进制数是( )。 {{ select(15) }}
  • 11121
  • 11122
  • 11211
  • 11112
  1. 单选题 [NOIP普及组2011/NOIP提高组2011] 在二进制下,1101001 +( )= 1110110。 {{ select(16) }}
  • 1011
  • 1101
  • 1010
  • 1111
  1. 单选题 [NOIP普及组2014/NOIP提高组2014] 二进制数 00100100 和 00010101 的和是 ( )。 {{ select(17) }}
  • 00101000
  • 001010100
  • 01000101
  • 00111001
  1. 单选题 [NOIP普及组2015] 二进制数 00100100 和 00010100 的和是( ) {{ select(18) }}
  • 00101000
  • 01000001
  • 01000100
  • 00111000
  1. 单选题 [NOIP普及组2016] 二进制数 00101100 和 00010101 的和是 ( )。 {{ select(19) }}
  • 00101000
  • 01000001
  • 01000100
  • 00111000
  1. 单选题 [CSP-S2021] 二进制数(00101010)2和(00010110)2的和为( )。 {{ select(20) }}
  • 00111100
  • 01000000
  • 00111100
  • 01000010
  1. 单选题 [CSP-J2023] 八进制(12345670)8和(07654321)8的和为 {{ select(21) }}
  • 222222218
  • 211111118
  • 221111118
  • 222222118
  1. 多选题 [NOIP提高组2005/NOIP普及组2005] (3725)8 + (B)16的运算结果是( )。 {{ multiselect(22) }}
  • (3736)8
  • (2016)10
  • (11111100000)2
  • (3006)10
  • (7E0)16
  1. 多选题 [NOIP提高组2006/NOIP普及组2006] (2010)16 + (32)8的结果是( )。 {{ multiselect(23) }}
  • (8234)10
  • (202A)16
  • (100000000110)2
  • (2042)16
  1. 多选题 [NOIP提高组2007/NOIP普及组2007] (2070)16 + (34)8的结果是( )。 {{ multiselect(24) }}
  • (8332)10
  • (208C)16
  • (100000000110)2
  • (20214)8
  1. 单选题 [CSP-J2023] 数(101010)2和(166)8的和为() {{ select(25) }}
  • (10110000)2
  • (236)8
  • (158)10
  • (A0)16
  1. 多选题 [NOIP提高组2004/NOIP普及组2004] (2004)10 + (32)16的结果是( )。 {{ multiselect(26) }}
  • (2036)16
  • (2054)10
  • (4006)8
  • (100000000110)2
  • (2036)10
  1. 多选题 [NOIP提高组2008/NOIP普及组2008] (2008)10 + (5B)16的结果是( )。 {{ multiselect(27) }}
  • (833)16
  • (2099)10
  • (4063)8
  • (100001100011)2
  1. 单选题 [NOIP提高组2005] 以下二进制数的值与十进制数 23.456 的值最接近的是( )。 {{ select(28) }}
  • 10111.0101
  • 11011.1111
  • 11011.0111
  • 10111.0111
  • 10111.1111
  1. 判断题 [GESP202309【3级】] 二进制数 101.101 在十进制下是 5.005。 {{ select(29) }}
  • 正确
  • 错误
  1. 单选题 [GESP202306【3级】/NOIP普及组2008/NOIP提高组2013] 二进制数 11.01 在十进制下是( )。 {{ select(30) }}
  • 3.01
  • 3.05
  • 3.125
  • 3.25
  1. 单选题 [NOIP提高组2014] 二进制数 111.101 所对应的十进制数是 ( ). {{ select(31) }}
  • 5.625
  • 5.5
  • 6.125
  • 7.625
  1. 单选题 [CSP-J2021/GESP202406【3级】] 二进制数101.11 对应的十进制数是( )。 {{ select(32) }}
  • 6.5
  • 5.5
  • 5.75
  • 5.25
  1. 单选题 [GESP202406【8级】] 二进制数 100.001 转换成十进制数是( )。 {{ select(33) }}
  • 4.25
  • 4.125
  • 4.5
  • 4.75
  1. 单选题 [CSP-J2022] 八进制数32.1对应的十进制数是( )。 {{ select(34) }}
  • 24.125
  • 24.250
  • 26.125
  • 26.250
  1. 单选题 [NOIP提高组2010] 与 16 进制数 A1.2 等值的 10 进制数是( ) {{ select(35) }}
  • 101.2
  • 111.4
  • 161.125
  • 177.25
  1. 单选题 [NOIP普及组2015/NOIP提高组2015] 与二进制小数 0 .1 相等的十六进制数是( ) {{ select(36) }}
  • 0.8
  • 0.4
  • 0.2
  • 0.1
  1. 单选题 [NOIP普及组2016/NOIP提高组2016] 与二进制小数 0.1 相等的八进制数是 ( )。 {{ select(37) }}
  • 0.8
  • 0.4
  • 0.2
  • 0.1
  1. 单选题 [NOIP普及组2017] 十进制小数 13.375 对应的二进制数是( )。 {{ select(38) }}
  • 1101.011
  • 1011.011
  • 1101.101
  • 1010.01
  1. 单选题 [NOIP提高组2004] 十进制数 100.625 等值于二进制数( )。 {{ select(39) }}
  • 1001100.101
  • 1100100.101
  • 1100100.011
  • 1001100.11
  • 1001100.01
  1. 单选题 [NOIP提高组2006] 与十进制数 1770.625 对应的八进制数是( )。 {{ select(40) }}
  • 3352.5
  • 3350.5
  • 3352.1161
  • 3350.1151
  • 前 4 个答案都不对
  1. 单选题 [NOIP提高组2007] 与十进制数 17.5625 对应的 8 进制数是( )。 {{ select(41) }}
  • 21.5625
  • 21.44
  • 21.73
  • 21.731
  • 前 4 个答案都不对
  1. 单选题 [NOIP普及组2009] 十进制小数125.125对应的8进制数是 {{ select(42) }}
  • 100.1
  • 175.175
  • 175.1
  • 100.175
  1. 单选题 [NOIP普及组2008/NOIP提高组2008] 与十进制数 28.5625 相等的四进制数是( )。 {{ select(43) }}
  • 123.21
  • 131.22
  • 130.22
  • 130.21
  1. 单选题 [NOIP普及组2016] 如果 256 种颜色用二进制编码来表示,至少需要 ( )位。 {{ select(44) }}
  • 6
  • 7
  • 8
  • 9
  1. 单选题 [NOIP普及组2011] 一个正整数在二进制下有 100 位,则它在十六进制下有( )位。 {{ select(45) }}
  • 7
  • 13
  • 25
  • 不能确定
  1. 多选题 [NOIP提高组2011] 一个正整数在十六进制下有 100 位,则它在二进制下可能有( )位。 {{ multiselect(46) }}
  • 399
  • 400
  • 401
  • 404
  1. 单选题 [NOIP普及组2010] 一个自然数在十进制下有 n 位,则它在二进制下的位数与( )最接近。 {{ select(47) }}
  • 5n
  • n*log210
  • 10*log2n
  • 10n*log2n
  1. 单选题 [NOIP普及组2010] 设 X、Y、Z 分别代表三进制下的一位数字,若等式 XY + ZX = XYX 在三进制下成立, 那么同样在三进制下,等式 XY * ZX = ( )也成立。 {{ select(48) }}
  • YXZ
  • ZXY
  • XYZ
  • XZY
  1. 单选题 [NOIP提高组2010] 如果在某个进制下等式 77=41 成立,那么在该进制下等式 1212= ( )也成立。 {{ select(49) }}
  • 100
  • 144
  • 164
  • 196
  1. 单选题 [NOIP普及组2014] 下列各无符号十进制整数中,能用八位二进制表示的数中最大的是 ( ) 。 {{ select(50) }}
  • 296
  • 133
  • 256
  • 199
  1. 多选题 [NOIP提高组2014] 下列各无符号十进制整数中,能用八位二进制表示的数有 ( ). {{ multiselect(51) }}
  • 296
  • 133
  • 256
  • 199
  1. 判断题 [GESP202306【3级】] 数据编码方式只有原码、反码、补码三种。 {{ select(52) }}
  • 正确
  • 错误
  1. 判断题 [GESP202403【3级】] 任意整数 a 的二进制反码与补码都有1位不同。 {{ select(53) }}
  • 正确
  • 错误
  1. 判断题 [GESP样题【3级】] 二进制数据编码中,负数的补码是通过对原码按位取反并加 1 得到的。 {{ select(54) }}
  • 正确
  • 错误
  1. 多选题 [NOIP提高组2010] 在整数的补码表示法中,以下说法正确的是( ) {{ multiselect(55) }}
  • 只有负整数的编码最高为 1
  • 在编码的位数确定后,所能表示的最小整数和最大整数的绝对值相同
  • 整数 0 只有唯一的一个编码
  • 两个用补码表示的数相加时,如果在最高位产生进位,则表示运算溢出
  1. 单选题 [GESP样题【3级】] 下列关于负数的原码、反码、补码的描述中,正确的是( ) {{ select(56) }}
  • 原码和反码互为按位取反(符号位除外),补码为反码加 1
  • 原码和反码互为按位取反(符号位除外),补码为原码加 1
  • 反码和补码互为按位取反(符号位除外),原码为反码加 1
  • 补码和原码互为按位取反(符号位除外),反码为补码加 1
  1. 判断题 [GESP202406【3级】] 补码的优点是可以将减法运算转化为加法运算,从而简化计算机的硬件设计。 {{ select(57) }}
  • 正确
  • 错误
  1. 判断题 [GESP202406【3级】] 整数-6的16位补码可用十六进制表示为FFFA。 {{ select(58) }}
  • 正确
  • 错误
  1. 单选题 [NOIP普及组2017/NOIP提高组2017] 在 8 位二进制补码中,10101011 表示的数是十进制下的( )。 {{ select(59) }}
  • 43
  • -85
  • -43
  • -84
  1. 单选题 [NOIP提高组2009] 在字长为 16 位的系统环境下,一个 16 位带符号整数的二进制补码为1111111111101101。其对应的十进制整数应该是: {{ select(60) }}
  • 19
  • -19
  • 18
  • -18
  1. 单选题 [NOIP普及组2010] 一个字长为 8 位的整数的补码是 11111001 ,则它的原码是( ) {{ select(61) }}
  • 00000111
  • 01111001
  • 11111001
  • 10000111
  1. 单选题 [GESP202403【3级】] 如果16位短整数 -2 的二进制是"FFFE",则短整数 -4 的十六进制是( )。 {{ select(62) }}
  • FF04
  • FFFA
  • FFFC
  • FFFH
  1. 单选题 [GESP202403【3级】] 整数-5的16位补码表示是( )。 {{ select(63) }}
  • 1005
  • 1006
  • FFFA
  • FFFB
  1. 判断题 [GESP样题【4级】] &和&&都是 C++语言的运算符,*和**也都是。 {{ select(64) }}
  • 正确
  • 错误
  1. 判断题 [GESP202306【4级】] >=和>>=都是 C++语言的运算符。 {{ select(65) }}
  • 正确
  • 错误
  1. 判断题 [GESP202309【3级】] 在C++语言中,位运算符也有类似"先乘除、后加减"的优先级规则。因此,使用时应注意合理使用括号。 {{ select(66) }}
  • 正确
  • 错误
  1. 判断题 [GESP样题【3级】] C++语言中数字的符号位是不参与位运算的。 {{ select(67) }}
  • 正确
  • 错误
  1. 单选题 [GESP样题【3级】] 以下哪个属于 C++语言中的位运算符?( ) {{ select(68) }}
  • &
  1. 单选题 [GESP202306【3级】] 以下哪个不是 C++语言中的运算符?( ) {{ select(69) }}
  • &
  • &&
  • **
  1. 单选题 [GESP202309【3级】] 以下哪个不是C++语言中的运算符?( ) {{ select(70) }}
  • ~
  • ~~
  • <
  • <<
  1. 单选题 [GESP202406【7级】] 在C++中,关于运算符&,下面说法正确的是( )。 {{ select(71) }}
  • 2 & 3 的结果是 true
  • 011 & 111 的结果是 3
  • 3 & 6 的结果是 2
  • 110 & 101 的结果是 4
  1. 单选题 [CSP-S2019] 下面哪个选项是11 1011 1001 0111 和 01 0110 1110 1011进行逻辑或运算的结果( )。 {{ select(72) }}
  • 11 1111 1101 1111
  • 11 1111 1111 1101
  • 10 1111 1111 1111
  • 11 1111 1111 1111
  1. 单选题 [CSP-J2019] 二进制数11 1011 1001 0111和01 0110 1110 1011 进行按位与运算的结果是()。 {{ select(73) }}
  • 01 0010 1000 1011
  • 01 0010 1001 0011
  • 01 0010 1000 0001
  • 01 0010 1000 0011
  1. 单选题 [NOIP提高组2016] 二进制数 00101100 和 01010101 异或的结果是 ( )。 {{ select(74) }}
  • 00101000
  • 01111001
  • 01000100
  • 01000100
  1. 判断题 [GESP202403【4级】] C++语言中 cout << 9^2 << endl; 会输出81。 {{ select(75) }}
  • 正确
  • 错误
  1. 判断题 [GESP202403【7级】] C++语言中,表达式 2 ^ 3 的结果类型为 int 、值为 8 。 {{ select(76) }}
  • 正确
  • 错误
  1. 单选题 [NOIP普及组2006/NOIP提高组2006] 在 C++ 中,表达式 21^2 的值是( ) {{ select(77) }}
  • 441
  • 42
  • 23
  • 24
  1. 单选题 [NOIP普及组2007/NOIP提高组2007] 在 C++程序中,表达式 23|2^5 的值是( ) {{ select(78) }}
  • 23
  • 1
  • 32
  • 18
  1. 单选题 [NOIP普及组2008] 在 C++程序中,表达式 200|10 的值是( ) {{ select(79) }}
  • 20
  • 1
  • 220
  • 202
  1. 单选题 [GESP202306【4级】] 如果 a 为 int 类型的变量,且 a 的值为 6,则执行 a &= 3;之后,a 的值会是( )。 {{ select(80) }}
  • 3
  • 9
  • 2
  • 7
  1. 单选题 [GESP202309【4级】] 如果 a 为 int 类型的变量,且 a 的值为6,则执行 a = ~a; 之后, a 的值会是( )。 {{ select(81) }}
  • -6
  • 6
  • -7
  • 7
  1. 判断题 [GESP202406【3级】] 如果 为 int 类型的变量,且表达式 ((a | 3) == 3) 的值为 true ,则说明 在从0到3之间(可能为0、可能为3)。 {{ select(82) }}
  • 正确
  • 错误
  1. 判断题 [GESP202406【7级】] C++语言中,表达式 6 & 5 的结果类型为 int 、值为 1 。 {{ select(83) }}
  • 正确
  • 错误
  1. 单选题 [GESP202403【3级】] 下面C++代码执行后的输出是( )。
int main(){
    cout<<(3|16)<<endl;
    cout<<endl;
    return 0;
}

{{ select(84) }}

  • 3
  • 16
  • 19
  • 48
  1. 判断题 [GESP202403【4级】] 定义变量 int a=5 , 则 cout << &++a 会输出 6 。 {{ select(85) }}
  • 正确
  • 错误
  1. 单选题 [GESP202312【4级】] 下列C++语句执⾏以后结果是true的是( )。 {{ select(86) }}
  • 3&&false
  • 5&&2
  • 101&&000
  • 4&true
  1. 单选题 [GESP202403【3级】] 定义整型变量 int a=3, b=16 ,则 a|b 的值和 a+b 的关系是( )。 {{ select(87) }}
  • 大于
  • 等于
  • 小于
  • 等于或小于
  1. 单选题 [CSP-S2023] 假设我们有以下的 C++ 代码:
int a =5,b=3,c=4;
bool res=a&b||c^b&&a|c;

请问,res 的值是什么?() {{ select(88) }}

  • true
  • false
  • 1
  • 0
  1. 判断题 [GESP202403【3级】] 对整型变量 int a = 3 ,执行C++代码 a<<2 将把2输出到 a 中。 {{ select(89) }}
  • 正确
  • 错误
  1. 判断题 [GESP样题【3级】] 表达式(7 >> 2)的计算结果为 1.75,且结果类型为 double。 {{ select(90) }}
  • 正确
  • 错误 以下是按您要求格式化的题目(跳过96-99题,但保持题号不变):
  1. 判断题 [GESP202309【3级】/GESP样题【8级】] 在C++语言中,所有 int 类型的值,经过若干次左移操作( << )后,它们的值总会变为 0 。 {{ select(91) }}
  • 正确
  • 错误
  1. 判断题 [GESP202403【3级】] 在C++语言中, (010<<1) 执行结果是 100 。 {{ select(92) }}
  • 正确
  • 错误
  1. 判断题 [GESP202403【3级】] 一个 int 类型变量 a ,执行操作 (a<<2>>2) 后的值一定是 a 。 {{ select(93) }}
  • 正确
  • 错误
  1. 单选题 [GESP202309【3级】] 如果 a 是 int 类型的变量,下列哪个表达式的值一定为 true ?( ) {{ select(94) }}
  • a + 1000 - 1000 == a
  • a * 2 / 2 == a
  • (a & 1) == 1
  • (a | 1) == a + 1
  1. 单选题 [GESP202403【3级】] 定义整数 int x=-5 ,则执行C++代码 cout << (x == (x<<1>>1)) 输出是( )。 {{ select(95) }}
  • 0
  • 1
  • -5
  • 5
  1. 单选题 [GESP样题【3级】] 一个 int 类型的值乘以 8,等价于以下哪个位运算?( ) {{ select(100) }}
  • 左移 3 位
  • 右移 3 位
  • 左移 8 位
  • 右移 8 位
  1. 单选题 [GESP202306【3级】] 一个 int 类型的值,做以下哪个操作,一定会变回原来的值?( ) {{ select(101) }}
  • 左移 3 位,再右移 3 位。
  • 右移 3 位,再左移 3 位。
  • 按位或 7,再按位与-8。
  • 按位异或 7,再按位异或 7。
  1. 判断题 [GESP202309【3级】/GESP样题【3级】] 如果 a 为 int 类型的变量,且表达式 ((a & 1) == 0) 的值为 true ,则说明 a 是偶数。 {{ select(102) }}
  • 正确
  • 错误
  1. 判断题 [GESP202306【3级】] 如果 a 为 int 类型的变量,且表达式((a | 3) == 3)的值为 true,则说明 a 在从 0到 3 之间(可能为 0、可能为 3)。 {{ select(103) }}
  • 正确
  • 错误
  1. 单选题 [GESP样题【3级】] 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断"a 等于 0 且 b等于 0"的是() {{ select(104) }}
  • ((~a) && (~b))
  • ((a & b) == 0)
  • ((a | b) == 0)
  • ((a ^ b) == 0)
  1. 单选题 [GESP202306【3级】] 如果 a 和 b 均为 int 类型的变量,下列表达式不能正确判断" a 等于 b "的是( )。 {{ select(105) }}
  • ((a/b)==1)
  • ((a&b)==a)
  • ((a^b)==0)
  • ((a|b)==b)
  1. 单选题 [GESP202309【3级】] 如果 a 和 b 均为 int 类型的变量,下列表达式不能正确判断" a 等于 b "的是( )。 {{ select(106) }}
  • ((a >= b) && (a <= b))
  • ((a >> 1) == (b >> 1))
  • ((a + b) == (a + a))
  • ((a ^ b) == 0)
  1. 单选题 [GESP202309【5级】] 如果 a 和 b 均为 int 类型的变量,且 b 的值不为 0 ,那么下列能正确判断" a 是 b 的3倍"的表达式是()。 {{ select(107) }}
  • (a >> 3 == b)
  • (a - b) % 3 == 0
  • (a / b == 3)
  • (a == 3 * b)
  1. 单选题 [GESP202309【6级】] 如果 a 和 b 均为 int 类型的变量,且 b 的值不为 0 ,那么下列能正确判断" a 是 b 的3倍"的表达式是()。 {{ select(108) }}
  • (a >> 3 == b)
  • (a - b) % 3 == 0
  • (a / b == 3)
  • (a == 3 * b)
  1. 单选题 [GESP样题【3级】] 如果 a 为 int 类型的变量,下列哪个表达式可以正确求出满足"大于等于a 且是 4 的倍数"的整数中最小的? {{ select(109) }}
  • (a & (~3))
  • (a / 4 * 4)
  • ((a - 1) | 3) + 1
  • (a << 2)
  1. 单选题 [GESP202306【3级】] 如果 a 为 int 类型的变量,下列哪个表达式可以正确求出满足"小于等于 a 且是 4 的倍数"的整数中最大的?( ) {{ select(110) }}
  • (a & (~3))
  • ((a << 2) >> 2)
  • (a ^ 3)
  • ((a - 1) | 3) + 1
  1. 单选题 [GESP202406【3级】] 下列代码的输出结果是( )。
#include <iostream>
using namespace std;
int main() {
    int a = 12;
    int result = a >> 2;
    cout << result << endl;
    return 0;
}

{{ select(111) }}

  • 12
  • 6
  • 3
  • 1
  1. 判断题 [GESP202406【3级】] 执行下面C++代码后,输出的结果是8。
int a = 0b1010;
int b = 01100;
int c = a & b;
cout << c <<endl;

{{ select(112) }}

  • 正确
  • 错误
  1. 单选题 [GESP202406【3级】] 下列代码的输出结果是( )。
#include <iostream>
using namespace std;
int main() {
    int a = 5; int b = 10;
    a = a ^ b; b = a ^ b;
    a = a ^ b;
    cout << "a = " << a << ", b = " << b << endl;
    return 0;
}

{{ select(113) }}

  • a = 5, b = 10
  • a = 5, b = 5
  • a = 10, b = 5
  • a = 10, b = 10
  1. 单选题 [GESP样题【3级】] 在下列代码的横线处填写( ),可以使得输出是"17 11"。
#include <iostream>
using namespace std;
int main() {
    int a = 5; 
    int b = 10;
    a = ______; 
    b = a ^ b;
    a = a ^ b;
    cout << "a = " << a << ", b = " << b << endl;
    return 0;
}

{{ select(114) }}

  • a + b
  • a - b
  • a ^ b
  • a & b
  1. 单选题 [GESP202306【3级】] 在下列代码的横线处填写( ),可以使得输出是"24 12"。
#include <iostream>
using namespace std;
int main(){
    int a= 12, b = 24;
    ________//在此处填入代码
   a = a ^ b;
    b = a ^ b;
    cout << a << " " << b << endl;
    return 0;
}

{{ select(115) }}

  • a = a ^ b
  • b = a ^ b
  • a = a + b
  • b = a + b
  1. 单选题 [GESP202309【3级】] 在下列代码的横线处填写( ),可以使得输出是"20 10"。
#include <iostream>
using namespace std;
int main() {
    int a = 10, b = 20;
    a = (a << 8) | b;
    // 在此处填入代码
    cout << a << " " << b << endl;
    return 0;
}

{{ select(116) }}

  • a = a >> 8; b = a & 0xff
  • b = a >> 8; a = a & 0xff;
  • a = b; b = a & 0xff;
  • b = a; a = b;
  1. 单选题 [GESP202306【3级】] 在下列代码的横线处填写( ),可以使得输出不是"31"。
#include <iostream>
using namespace std;
int main(){
    int array[5]={1,2,4,8,16};
    int res =0;
    for(int i=0;i<5; i++)
        ________//在此处填写代码
    cout<< res<< endl;
    return 0;
}

{{ select(117) }}

  • res = res + array[i]
  • res = res & array[i]
  • res = res | array[i]
  • res = res ^ array[i]
  1. 单选题 [NOIP普及组2018/NOIP提高组2018] 为了统计一个非负整数的二进制形式中1 的个数,代码如下:
int CountBit(int x) {
    int ret = 0;
    while (x) {
        ++ret;
        (    );
    }
}

{{ select(118) }}

  • x >>= 1
  • x &= x - 1
  • x |= x >> 1
  • x <<= 1
  1. 填空题 [NOIP提高组2018] 方程 a*b = (a or b) (a and b),在 a,b 都取 [0, 31]中的整数时,共有_____组解。(∗ 表示乘法;or 表示按位或运算;and 表示按位与运算) {{ input(119) }}

       ret