GESP2024年6月认证C++三级( 第二部分判断题(1-10))


🏰 第1题:编程语言不同,能力也能通用吗?

题目:

GESP测试是对认证者的编程能力进行等级认证,同一级别的能力基本上与编程语言无关。

✅ 答案:


1、🌟故事时间:武器不同,功夫相通

两个小朋友参加比赛:

  • 小明用 C++

  • 小红用 Python

虽然武器不同,但他们都会:

✅ 思考问题

✅ 设计算法

✅ 写循环

✅ 用判断

✅ 解决题目

所以考的是 编程能力,不只是语言按钮!


2、🎯结论

✔ 对



🏰 第2题:-6 的16位补码是 FFFA 吗?

题目:

整数 -6 的16位补码是 FFFA。

✅ 答案:


1、🌟故事时间:负数变装术

计算机里负数要穿"补码斗篷"。

(1)6 的二进制(16位):

复制代码
0000 0000 0000 0110

(2)取反:

复制代码
1111 1111 1111 1001

(3)加1:

复制代码
1111 1111 1111 1010

(4)这就是:

复制代码
FFFA

2、🎯结论

✔ 对



🏰 第3题:补码能让减法变加法吗?

题目:

补码的优点是可以将减法运算转化为加法运算,从而简化硬件设计。

✅ 答案:


1、🌟故事时间:减法机关变简单

比如:

复制代码
7 - 3

在计算机里可以变成:

复制代码
7 + (-3)

只需要会做加法机器,就能顺便做减法!

太省事啦!🤖


2、🎯结论

✔ 对



🏰 第4题:'\0' 和 '0' 一样吗?

题目:

字符常量 '\0' 表示字符串结束,和 '0' 相同。

✅ 答案:


1、🌟故事时间:两个长得像的兄弟

它们看起来像,但其实不同!


2、👦 '0'

字符数字0,能显示出来。

ASCII编码:

复制代码
48

3、👻 '\0'

空字符,看不见。

常用来表示:

复制代码
字符串结束

编码是:

复制代码
0

4、🎯结论

❌ 错



🏰 第5题:数组元素可以乱放吗?

题目:

数组的所有元素在内存中可以不连续存放。

✅ 答案:


1、🌟故事时间:整齐排队的宿舍

数组像一排宿舍房间:

复制代码
[0][1][2][3][4]

每个房间紧挨着下一个房间。

不能一个在楼上,一个在操场,一个在食堂 😂

数组必须连续存放!


2、🎯结论

❌ 错



🏰 第6题:数组能直接整体赋值吗?

题目:

C++中可以对数组和数组的每个基础类型元素赋值。

✅ 答案:


1、🌟故事时间:整箱苹果不能直接换

数组元素可以一个个赋值:

复制代码
a[0]=1;
a[1]=2;

但整个数组不能这样:

复制代码
a = b;   // 普通数组不行

所以题目说数组整体也能赋值,不准确。


2、🎯结论

❌ 错



🏰 第7题:如果 (a|3)==3,说明a在0到3之间?

题目:

((a | 3) == 3) 为真,则 a 在 0 到 3 之间。

✅ 答案:


1、🌟故事时间:按位或魔法门

数字3的二进制:

复制代码
11

如果:

复制代码
a | 3 = 3

说明 a 的二进制不能多出更大的1。

可能是:

复制代码
0 = 00
1 = 01
2 = 10
3 = 11

正好是 0~3。


2、🎯结论

✔ 对



🏰 第8题:位运算结果是8吗?

题目给代码,问输出是否为8。

❌️ 答案:错误


1、🌟故事时间:二进制碰撞术

题目代码:

复制代码
a = 0b1010
b = 01100
c = a & b

第一步:看清数字

复制代码
1010(二进制)
01100(八进制)= 2进制 001001000000 //最后四位是0000

第二步:按位与

cpp 复制代码
1010
0000
----
0000

所以:

cpp 复制代码
int a = 0b1010;
int b = 01100;
int c = a & b;
cout << c <<endl;   输出为 0

2、🎯结论

❌️ 答案:错误



🏰 第9题:随机数结果不可能是89781?

题目:

执行代码后,输出结果不可能是89781。

❌️ 答案:错误


1、🌟故事时间:随机数字扭蛋机

程序不停生成随机数,只要满足条件就放进数组。

看看89781是否有可能性:

(1)第一位8:( i=1 )

cpp 复制代码
int a = rand() % 10;
if(a % 3 == (i + 1) % 3)
s[i++] = a;

8%3 =2 i+1=2 2%3=2 符合条件


(2)第二位9:( i=2 )

9%3 =0 i+1=3 3%3 =0 符合条件


(3)第三位7:( i=3)

7%3 =1 3+1=4 4%3 =1 符合条件


(4)第四位8:( i=4)

8%3 =2 4+1=5 5%3 =2 符合条件


(4)第五位1:( i=5)

数组为int s5; 没有a5,已经越界,输出的是不可预料的数字。也有可能是1


2、🎯结论

❌ 错



🏰 第10题:雷劈数可以用枚举法求吗?

题目:

四位雷劈数可以使用枚举法求出所有符合条件的数。

✅ 答案:


1、🌟故事时间:侦探逐个排查

四位数范围:

复制代码
1000 ~ 9999

一个一个试:

1️⃣ 切开前后两半

2️⃣ 相加

3️⃣ 平方

4️⃣ 看是否等于原数

这就是 枚举法


2、🎯例如3025

复制代码
30 + 25 = 55
55 × 55 = 3025

成功!


3、🎯结论

✔ 对


🌟考点总结:

✅ 编程能力 vs 编程语言

✅ 补码

✅ 字符 '\0''0'

✅ 数组存储

✅ 位运算

✅ 随机数

✅ 枚举算法


相关推荐
夜悊9 小时前
C++代码示例:进制数简单生成工具
c++
郝学胜_神的一滴10 小时前
CMake 021: IF 条件判据详诠
c++·cmake
_wyt0011 天前
洛谷 B3930 [GESP202312 五级] 烹饪问题 题解
c++·gesp
玖玥拾1 天前
C/C++ 数据结构(七)栈、容器适配器
c语言·数据结构·c++··容器适配器
один but you1 天前
constexpr函数
c++
凡人叶枫1 天前
Effective C++ 条款41:了解隐式接口和编译期多态
java·开发语言·c++·effective c++
凡人叶枫1 天前
Effective C++ 条款42:了解 typename 的双重意义
java·linux·服务器·c++
小胖xiaopangss1 天前
BRpc使用
c++·rpc
-森屿安年-1 天前
63. 不同路径 II
c++·算法·动态规划
chase_my_dream1 天前
Cartographer详细讲解
c++·人工智能·自动驾驶