#717. GESP三级样题选择判断题
GESP三级样题选择判断题
满分:100 分 考试时间:90 分钟
一、单选题(每题 2 分,共 30 分)
- 下列关于负数的原码、反码、补码的描述中,正确的是( ) {{ select(1) }}
 
- 原码和反码互为按位取反(符号位除外),补码为反码加 1
 - 原码和反码互为按位取反(符号位除外),补码为原码加 1
 - 反码和补码互为按位取反(符号位除外),原码为反码加 1
 - 补码和原码互为按位取反(符号位除外),反码为补码加 1
 
- 一个 int 类型的值乘以 8,等价于以下哪个位运算?( )
 
{{ select(2) }}
- 左移 3 位
 - 右移 3 位
 - 左移 8 位
 - 右移 8 位
 
- 以下哪个属于 C++语言中的位运算符?( ) {{ select(3) }}
 
- +
 - -
 - *
 - &
 
- 若有以下代码,则数组 arr 的长度是( ) int arr[] = {1, 2, 3, 4, 5}; {{ select(4) }}
 
- 3
 - 4
 - 5
 - 6
 
- 在 C++语言中,可以定义一个一维整型数组的是( ) {{ select(5) }}
 
- int array[5];
 - int array[];
 - int[5] array;
 - int[] array;
 
- 枚举算法的主要特点是( ) {{ select(6) }}
 
- 以空间换时间
 - 逐个尝试所有可能的解
 - 动态规划
 - 贪心策略
 
- 对于一个十进制数 37,以下哪个是它的二进制表示( ) {{ select(7) }}
 
- 10101
 - 100101
 - 101001
 - 1000101
 
- 下列关于十六进制的描述中,正确的是( ) {{ select(8) }}
 
- 使用 0-9 和 A-F 表示
 - 使用 0-9 和 A-E 表示
 - 使用 1-9 和 A-F 表示
 - 使用 1-9 和 A-E 表示
 
- 下列哪个是 C++语言中用于获取字符串长度的函数( ) {{ select(9) }}
 
- length()
 - len()
 - getLength()
 - strlen()
 
- 通常用下列哪种方式来描述算法? {{ select(10) }}
 
- 汇编语言
 - 伪代码
 - SQL
 - CSS
 
- 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于 0 且 b等于 0”的是( ) {{ select(11) }}
 
- ((~a) && (~b))
 - ((a & b) == 0)
 - ((a | b) == 0)
 - ((a ^ b) == 0)
 
- 如果 a 为 int 类型的变量,下列哪个表达式可以正确求出满足“大于等于a 且是 4 的倍数”的整数中最小的? {{ select(12) }}
 
- (a & (~3))
 - (a / 4 * 4)
 - ((a - 1) | 3) + 1
 - (a << 2)
 
- 下面流程图,输入 1 2 3,会输出( )
{{ select(13) }} 
- 无输出
 - 1
 - 2
 - 3
 
- 在下列代码的横线处填写(),可以保证输出是“1357”,不会有多余字符。

 
{{ 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
 
- 在下列代码的横线处填写( ),可以使得输出是“17 11”。

 
{{ select(15) }}
- a + b
 - a - b
 - a ^ b
 - a & b
 
二、判断题(每题 2 分,共 20 分)
- 二进制数据编码中,负数的补码是通过对原码按位取反并加 1 得到的。( ) {{ select(16) }}
 
- 正确√
 - 错误×
 
- 在 C++语言中,数组的下标从 1 开始计数。( ) {{ select(17) }}
 
- 正确√
 - 错误×
 
- 在 C++语言中,字符串是以'\0'结尾的字符数组。( ) {{ select(18) }}
 
- 正确√
 - 错误×
 
- 在 C++语言中,可以使用浮点数(如 3.0)作为数组下标。( ) {{ select(19) }}
 
- 正确√
 - 错误×
 
- 枚举算法是一种暴力求解方法,逐个尝试所有可能的解。( ) {{ select(20) }}
 
- 正确√
 - 错误×
 
- C++语言中数字的符号位是不参与位运算的。( ) {{ select(21) }}
 
- 正确√
 - 错误×
 
- C++语言中的数组可以根据需要自动调整大小。( ) {{ select(22) }}
 
- 正确√
 - 错误×
 
- 在 C++语言中,表达式(0xff == 255)的值为 true。( ) {{ select(23) }}
 
- 正确√
 - 错误×
 
- 如果 a 为 int 类型的变量,且表达式((a & 1) == 0)的值为 true,则说明 a 是偶数。( ) {{ select(24) }}
 
- 正确√
 - 错误×
 
- 表达式(7 >> 2)的计算结果为 1.75,且结果类型为 double。( ) {{ select(25) }}
 
- 正确√
 - 错误×
 
三、编程题 (每题 25 分,共 50 分)
- 逛商场(请在P718题中提交答案)
 
小明是个不太有计划的孩子。这不,刚到手的零花钱,就全部拿着逛商场去了。小明的原则很简单,只要见到想买的物品而且能买得起,就一定会买下来之后才会继续往前走。一天下来,小明到底买了多少物品呢?
【输入格式】
输入共 3 行:
第一行是一个整数 N,表示商场中共有 N 种小明想买的物品(1≤N≤100); 第二行共有 N 个整数,分别表示小明先后见到想买的物品的价格; 第三行是一个整数 X,表示开始时小明共有 X 元零花钱。
【输出格式】
输出 1 行,包含一个整数,表示小明买到的物品数。
【样例输入】
6
7 5 9 10 7 4
30
【样例输出】
4
- 进制转换(请在P719题中提交答案)
 
【题目描述】
小美刚刚学习了十六进制,她觉得很有趣,想到是不是还有更大的进制呢?
在十六进制中,用‘A’表示 10、‘F’表示 15。如果扩展到用‘Z’表示 35,岂不是可以表示 36 进制数了嘛!
【输入格式】
输入 2 行,第一行包含一个正整数 N,第二行包含一个正整数 R。
保证 1≤N≤1000000,2≤R≤36
【输出格式】
输出 1 行,为 N 的 R 进制表示。
【样例输入】
123
25
【样例输出】
4N
Statistics
Related
In following contests: