GESP C++ 三级 模拟卷1
GESP C++ 三级模拟卷1(位运算、数组操作、进制转换、字符串处理、枚举法与模拟法)
// questions
题目预览
表达式 (3 & 5) 的值是( )
1
3
5
7
执行以下代码后,输出的结果是( )
string s = "abc123";
cout << s.length();
3
6
5
7
十进制数 -5 的 8 位二进制补码表示为( )
10000101
11111010
11111011
11111000
执行以下代码后,变量 s 的值是( )
int s = 0;
for (int i = 1; i <= 5; i++) {
s += i * i;
}
cout << s;
15
25
55
30
十进制数 13 转换为二进制数是( )
1011
1001
1110
1101
以下问题最适合使用枚举法解决的是( )
在一个有序数组中查找某个数
找出 100 以内所有的质数
计算一个正数的平方根
对一组数据进行排序
执行以下代码后,输出的结果是( )
int a[5] = {3, 1, 4, 1, 5};
int s = 0;
for (int i = 0; i < 5; i++) {
if (a[i] % 2 == 0) s += a[i];
}
cout << s;
0
4
5
14
执行以下代码后,输出的结果是( )
int add(int a, int b = 3) {
return a + b;
}
int main() {
cout << add(4);
return 0;
}
4
7
3
12
执行以下代码后,变量 x 的值是( )
int x = 5, y = 8;
int *p = &x;
*p = y;
cout << x;
5
0
13
8
表达式 (8 >> 1) 的值是( )
4
8
16
2
已知字符 'A' 的 ASCII 码为 65,以下代码的输出结果是( )
char c = 'C';
cout << (int)c;
65
66
67
68
执行以下代码后,变量 sum 的值是( )
int sum = 0;
for (int i = 1; i <= 8; i++) {
if (i % 3 == 0) continue;
sum += i;
}
cout << sum;
30
27
24
36
执行以下代码后,输出的结果是( )
int a[6] = {1, 2, 3, 4, 5, 6};
int s = 0;
for (int i = 0; i < 6; i += 2) {
s += a[i];
}
cout << s;
6
9
12
21
执行以下代码后,输出的结果是( )
string s = "Hello, World!";
cout << s.find("World");
5
6
7
8
十六进制数 A3 转换为十进制数是( )
163
150
172
160
在 C++ 中,int 类型的变量可以存储小数部分。( )
C++ 中数组的下标是从 1 开始的。( )
break 语句可以在 switch 语句中使用。( )
位运算符 | 表示逻辑或运算。( )
函数可以定义为 void 类型,即不返回任何值。( )
string 类型的 length() 方法返回字符串中字符的个数。( )
continue 语句的作用是跳过当前循环的剩余部分,直接进入下一次循环。( )
表达式 10 / 3 在 C++ 中的值为 3.333。( )
一维数组的数组名可以隐式转换为指向数组首元素的指针。( )
表达式 (3 < 5) && (2 > 4) 的值为 true。( )
试题名称:统计质数
时间限制:1.0 s | 内存限制:512.0 MB
给定 N 个正整数,请统计其中质数(素数)的个数。
质数定义:大于 1 的自然数,且只能被 1 和它本身整除。
输入格式 第一行,一个正整数 N(1 ≤ N ≤ 100)。 第二行,N 个正整数,每个数不超过 10000,数之间用空格分隔。
输出格式 一行,一个整数,表示质数的个数。
样例输入 #1
5
7 10 13 4 17
样例输出 #1
3
说明/提示 5个数中:7是质数,10不是,13是质数,4不是,17是质数,共3个。
试题名称:开关灯问题
时间限制:1.0 s | 内存限制:512.0 MB
有 N 盏灯,编号为 1 到 N,初始时全部关闭(熄灭)。按顺序进行 K 次操作,第 i 次操作(i 从 1 到 K)将所有编号为 i 的倍数的灯进行反向操作(开变成关,关变成开)。求最终亮着的灯的数量。
输入格式 一行,两个正整数 N 和 K(1 ≤ N ≤ 1000,1 ≤ K ≤ N)。
输出格式 一行,一个整数,表示最终亮着的灯的数量。
样例输入 #1
5 3
样例输出 #1
2
说明/提示 初始:全部熄灭。第1次操作(i=1):所有编号为1的倍数的灯(1~5全部)反向 → 全部点亮。第2次操作(i=2):编号2,4反向 → 灯1亮,2灭,3亮,4灭,5亮。第3次操作(i=3):编号3反向 → 灯1亮,2灭,3灭,4灭,5亮。最终亮着的灯:1和5,共2盏。