GESP2024年3月认证C++二级( 第一部分选择题(1-8))


🌟 第一题:神秘流程图的成绩判断

1、这题是一个流程图判断输出什么。

答案是:B、 良好


2、🎬 流程分析:

小杨参加考试,老师画了一个"判断成绩"的机器:

  • 如果分数 ≥90 → 优秀

  • 如果分数 ≥60 → 良好

  • 否则 → 不及格

题目给的数刚好落在"良好"的区间。


3、💡 关键知识:

本流程图本质 = if-else 判断

cpp 复制代码
if(条件1)
    ...
else if(条件2)
    ...
else
    ...

这个流程图就是穿了西装的 if 语句!



🌟 第二题:变量名字大赛

1、问:哪个名字不合法?

答案:B 、2_from


2、🎬 变量命名:

(1)变量名字就像小朋友起名字。


(2)规则是:

✅ 可以有字母

✅ 可以有下划线

✅ 可以有数字(但不能开头)

❌ 不能数字开头!


(3)所以:

cpp 复制代码
2_from ❌(数字开头)

其他都合法。



🌟 第三题:谁不是分支结构?

1、下列选项中,不能用于表示分支结构的C++保留字是?

答案:B、 return


2、🎬 分支结构:

(1)程序王国里有"分叉路口":

  • if

  • else

  • switch

它们是选择道路的。


(2)但是:

cpp 复制代码
return

是"直接回家"的命令,不属于分支结构。



🌟 第四题:谁说错了?

1、说法错误的是?

答案:C 在C++中可以使用 foreach 循环


2、🎬 C++中循环有几种:

(1)C++王国里有:

  • for

  • while

  • do while


(2)但没有 foreach 这个关键字!(那是其他语言的)

所以 C 错。



🌟 第五题:谁不是 8?

1、谁不是 8

答案:B min(max(8,9),10)


2、🎬 我们算一算:

A️、 abs(-8) → 8

C️、 int(8.88) → 8

D️、sqrt(64) → 8


3、为啥B错了:

cpp 复制代码
max(8,9) = 9
min(9,10) = 9

所以 B = 9 ❌

这是函数的嵌套,要按照顺序一步一步的算。



🌟 第六题:神秘计算

1、下面C++代码执行后的输出是?

答案:C 、26


2、🎬 代码算一算:

这题代码是多次叠加计算。

(1)第一步:


cpp 复制代码
int n,a,m,i;
n=3, a = 5;
m = (a - 1) * 2;  //m = (5-1)*2 = 8

(2)第二步:

cpp 复制代码
for (i=0; i<n-1; i++)
    m = (m - 1) * 2;

循环2次:

第一次:m = (8-1)*2 = 14

第二次:m = (14-1)*2 = 26

结果算出来是 26。


(3)👉 这类题目一定要:

1️⃣ 写出每一步

2️⃣ 按照步骤进行模拟



🌟 第七题:平方魔法

1、下面C++代码执行后的输出是?

答案:D 、81


2、🎬 代码的含义:

(1)代码在找:

"n 的最大平方因子"

n = 81

81 = 9²

所以输出 81。


(2)💡 关键知识:

cpp 复制代码
while (i * i <= n){
    if (n % (i * i) == 0)
        result = i * i;
    i += 1;
}
cout << result;

是在找平方数因子!



🌟 第八题:循化有几次?

1、先看代码:

cpp 复制代码
int s,t,ans;
s = 2, t = 10;
ans = 0;
while (s != t){
    if (t % 2 == 0 && t / 2 >= s)
        t /= 2;
    else
        t -= 1;
    ans += 1;
}
cout << ans;

答案:B、3


2、🎬 我们一步步算:

(1)第一步:

cpp 复制代码
if (t % 2 == 0 && t / 2 >= s)
    t /= 2;    // t = 5

ans = 1


(2)第二步:

cpp 复制代码
if (t % 2 == 0 && t / 2 >= s)
    t /= 2;
else
    t -= 1;    // t = 4

ans = 2


(3)第三步:

cpp 复制代码
while (s != t){
    if (t % 2 == 0 && t / 2 >= s)
        t /= 2;  // t = 2

ans = 3


(4)第四步:

cpp 复制代码
while (s != t){   // s = t = 2  退出循环

(5)第五步:

cpp 复制代码
cout << ans;

输出: 3


相关推荐
库玛西1 小时前
深入浅出传输层:UDP 与 TCP 协议全景指南
linux·服务器·网络·c++·笔记·tcp/ip·udp
Chester_19997 小时前
CSP202203C.计算资源调度器
开发语言·数据结构·c++·蓝桥杯
裕晟资质规划9 小时前
武器装备科研生产单位保密资质申请方法论:条件模型与流程拆解
人工智能·算法
会周易的程序员9 小时前
给 PLC 写一个字节码虚拟机:STVM 虚拟机架构设计
开发语言·c++·虚拟机·软plc·iec61131·stvm
小灰灰搞电子9 小时前
完全驾驭 Qt 与数据库:C++ ORM 框架 QxOrm 原理与实践指南
数据库·c++·qt
QT界面美化性能优化9 小时前
QT+AI:使用AI技术为QT应用程序赋能
c++·人工智能·qt·opencv·qt教程·qt6.3
en.en..10 小时前
C语言 标准输入 / 输出缓冲区
算法
吃好睡好便好11 小时前
查找函数的使用
学习·算法·matlab·生活·查找函数
学习星球12 小时前
单调栈——从“找下一个更大的“到柱状图中的最大矩形
数据库·c++·算法·leetcode·xcode
小灰灰搞电子12 小时前
C++ 引用折叠详解
c++