6月27日考试在即,真题刷完?刚上传了一套模拟供大家练习!
试卷说明:本套模拟卷共27题(25道选择/判断 + 2道编程),满分100分,建议用时90分钟。
💡 在线答题:支持在线作答、自动判分!👉小鱼编程题库模拟测
第1题
在8位二进制补码表示中,能表示的最小整数是( )
A.-127
B.-128
C.-255
D.-256
第2题
二进制数 101.101 转换为十进制是( )
A.5.625
B.5.5
C.5.75
D.6.625
第3题
十六进制数 0x2A8 等价的八进制数是( )
A.0520
B.0524
C.1250
D.5250
第4题
已知字符 '0' 的ASCII码十进制为48,则表达式 '3' + '1' - '2' 的值是( )
A.50
B.51
C.52
D.'a'
第5题
执行下列代码后,变量 x 的值是( )
```cpp
int x = -5;
x = x << 2 >> 2;
```
A.-5
B.5
C.-1
D.不确定
第6题
下列位运算表达式中,值为0的是( )
A.5 & 3
B.5 | 3
C.5 ^ 3 ^ 3 ^ 5
D.~0
第7题
若要"取整数 a 的低4位(其余位置0)",下列位运算表达式正确的是( )
A.a & 0xF
B.a | 0xF
C.a ^ 0xF
D.a << 4
第8题
数组定义为 char str[] = "GESP2026";,则 sizeof(str) 的值是( )
A.8
B.9
C.10
D.9或10(取决于编译器)
第9题
下列 string 成员函数中,会修改字符串本身的是( )
A.find
B.substr
C.length
D.replace
第10题
执行下列代码后,s 的值是( )
```cpp
string s = "abcdef";
s.replace(1, 2, "XY");
```
A."aXYdef"
B."aXYcdef"
C."abXYef"
D."abXYcdef"
第11题
关于"枚举算法",下列说法正确的是( )
A.枚举算法的时间复杂度一定是O(n²)
B.枚举算法通过逐个尝试所有可能的解来找到答案
C.枚举算法必须配合排序使用
D.枚举算法的时间效率一定高于动态规划
第12题
模拟算法解决日期问题时,如果用变量w表示当前是周几,用变量days表示过了的天数,推"星期几"( 0~6 )常用的表达式是( )
A.w = (w + days) % 7
B.w = (w + days - 1) % 7 + 1
C.w = (w * days) % 7
D.w = (w ^ days) % 7
第13题
下列描述中,不属于算法描述方式的是( )
A.自然语言
B.流程图
C.伪代码
D.思维导图
第14题
凯撒密码要求将大写字母 A~Z 按字母表循环向后偏移 k 位。如果当前字符为用变量c1表示,偏移公式是( )
A.char c2 = c1 + k;
B.char c2 = (c1 - 'A' + k) % 26 + 'A';
C.char c2 = (c1 + k) % 'Z';
D.char c2 = c1 - 'A' + k % 26;
第15题
阅读以下程序,输出结果是( )
```cpp
#include <iostream>
#include <string>
using namespace std;
int main() {
string s = "GESP";
int n = s.length();
for (int i = 0; i < n; i++){
s[i] = (s[i] - 'A' + n) % 26 + 'A';
}
cout << s << endl;
return 0;
}
```
A.GESP
B.KIWT
C.KIWS
D.KIVS
第16题
在C++中,使用 unsigned char 类型可以避免负数补码带来的理解困扰。
A.正确
B.错误
第17题
八进制数 0123 转换为二进制的结果是 1010011。
A.正确
B.错误
第18题
在C++中,定义数组时如果省略大小,必须同时给出初始化列表,编译器才能确定数组长度。
A.正确
B.错误
第19题
字符常量 '\0' 和 '0' 的值不同,前者ASCII码为0,后者为48。
A.正确
B.错误
第20题
switch 语句中,如果某个 case 分支没有写 break,程序会继续执行下一个 case,这种现象称为"贯穿(fallthrough)"。
A.正确
B.错误
第21题
string::npos 是一个很大的正整数,代表"未找到"的标记值。
A.正确
B.错误
第22题
表达式 c >= 'A' && c <= 'Z' 既能判断大写字母,也能判断小写字母。
A.正确
B.错误
第23题
一个负数的原码,对其符号位除外的所有位取反,再加上1,就得到它的补码。
A.正确
B.错误
第24题
由于浮点数的存储精度问题,直接使用 == 比较两个 double 型数值可能因舍入误差导致结果不准确,即使数学上相等的值也可能不相等。
A.正确
B.错误
第25题
在进行按位运算时 011 & 010运算结果用二进制表示为010
A.正确
B.错误
第26题
小杨有一个 n × n 的数字方阵(下标从0开始),他想做如下操作:
对每个格子 (i, j),若其值 a[i][j] 大于阈值 T,则将其替换为方阵中所有元素的最大值;若其值小于阈值 T,则将其替换为所有元素的最小值;等于 T 的保持不变。
请你帮他完成变换,并输出变换后的方阵。
输入包含多行。第一行两个正整数 n, T,含义如题面所述(1 ≤ n ≤ 100,|T|, |a[i][j]| ≤ 10⁴)。
接下来 n 行,每行 n 个整数,代表原始方阵。
输出 n 行,每行 n 个整数,代表变换后的方阵,相邻整数用一个空格分隔。
第27题
小杨拿到了一个仅由小写英文字母组成的字符串 s(长度 n ≤ 1000)。
请你统计 s 中长度恰好为 k 的回文子串的个数。
两个子串如果起始位置或结束位置不同,则视为不同的子串。
回文串:从前往后读和从后往前读完全相同,例如 aba、aa。
输入包含两行。第一行一个字符串 s(长度 1 ≤ n ≤ 1000)。
第二行一个正整数 k(1 ≤ k ≤ n)。
输出一行,为一个整数,表示长度恰好为 k 的回文子串个数。
样例输入:
ababa
样例输出:
3
在线答题 自动判分 逐题解析 错题收藏