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 s[5]; 没有a[5],已经越界,输出的是不可预料的数字。也有可能是1


2、🎯结论

❌ 错



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

题目:

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

✅ 答案:


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

四位数范围:

复制代码
1000 ~ 9999

一个一个试:

1️⃣ 切开前后两半

2️⃣ 相加

3️⃣ 平方

4️⃣ 看是否等于原数

这就是 枚举法


2、🎯例如3025

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

成功!


3、🎯结论

✔ 对


🌟考点总结:

✅ 编程能力 vs 编程语言

✅ 补码

✅ 字符 '\0''0'

✅ 数组存储

✅ 位运算

✅ 随机数

✅ 枚举算法


相关推荐
不会编程的懒洋洋9 小时前
C# P/Invoke 基础
开发语言·c++·笔记·安全·机器学习·c#·p/invoke
24白菜头9 小时前
【无标题】
c++·笔记·学习·harmonyos
charlie11451419110 小时前
嵌入式C++实践开发第21篇(单片机实践):按钮输入 —— 硬件原理、消抖与HAL API
开发语言·c++·单片机
AKDreamer_HeXY10 小时前
QOJ 12255 - 36 Puzzle 题解
数据结构·c++·数学·算法·icpc·qoj
AI进化营-智能译站10 小时前
ROS2 C++开发系列13-运算符重载让ROS2消息处理更自然
java·开发语言·c++·ai
zhouwy11310 小时前
Poco 与 libevent 网络编程
c++
叼烟扛炮10 小时前
C++第四讲:类和对象(下)
c++·算法·类和对象
Rabitebla10 小时前
vector 的骨架:三根指针、模板陷阱与迭代器失效的第一现场
开发语言·数据结构·c++·算法
晚风吹红霞11 小时前
C++异常处理核心知识点全解析
开发语言·c++
CoderCodingNo11 小时前
【信奥业余科普】C++ 的奇妙之旅 | 17:面的铺展与文本的本质——二维数组与字符串
开发语言·c++