
───── ✨ 第1题 ✨ ─────
📖 题目
2026年春节联欢晚会上一个武术表演节目《武BOT》。节目中多个人形机器人会表演空翻,它们落地可能会有微微踉跄,但都会迅速调整姿态站稳,并适当移动来和前后左右的其他机器人保持原来队列。如果将机器人视作一个计算机系统,那么在该计算机系统中下面哪一项不能作为输入设备 ( )。
A. 检测重心的重力传感器
B. 预装的AI算法程序
C. 接收动作指令的遥控器
D. 拍摄其他机器人的摄像头
📌 大纲对应知识点:C++二级 计算机基础知识 - 计算机硬件组成 🎯 考查目标:考查计算机系统输入设备的概念,区分输入设备与软件/程序的不同功能。
📋 选项详解
⭐ 答案:B 📌 知识点:计算机硬件组成 - 输入设备
💡 解题小贴士:输入设备的核心功能是向计算机系统输入外部数据/信号,而程序属于软件范畴,是处理数据的逻辑,不是硬件输入设备。
───── ✨ 第2题 ✨ ─────
📖 题目
下面代码用来找出输入的N个正整数中最大的一个。如果将代码段用流程图来表示,则L1标记的代码行(if(val > max))应该使用的图形是( )。
A. 圆形框 B. 椭圆形框 C. 平行四边形框 D. 菱形框
📌 大纲对应知识点:C++二级 流程图 - 流程图的概念与基本表示符号 🎯 考查目标:考查流程图不同图形符号的用途,能够识别判断逻辑对应的流程图符号。
📋 选项详解
⭐ 答案:D 📌 知识点:流程图基本符号
💡 解题小贴士:流程图符号记忆口诀:起止椭圆、处理矩形、输入输出平行四边形、判断菱形,遇到条件分支就选菱形准没错。
───── ✨ 第3题 ✨ ─────
📖 题目
下面C++代码可以执行,有关说法正确的是 ( )。
double PI = 3.1415926;cout << (PI);
A. 为了方便初学者,cout << (PI)和cout << (pi)效果相同,即变量的大小写不敏感
B. cout << (PI)修改为cout << (Pi)能正常执行
C. 不能用PI做变量名,因为要保存圆周率这个常量
D. 将程序中全部PI都改写为Pai,将能正常执行,不会报错
📌 大纲对应知识点:C++一级 程序基本概念 - 标识符、变量的定义与使用 🎯 考查目标:考查C++标识符的大小写敏感规则,以及变量名的命名规范。
📋 选项详解
⭐ 答案:D 📌 知识点:C++标识符命名规则
💡 解题小贴士:C++大小写敏感是基础语法规则,只要标识符由字母、数字、下划线组成,且不以数字开头、不是关键字,就可以合法使用,语义上的命名习惯不影响语法正确性。
───── ✨ 第4题 ✨ ─────
📖 题目
下面选择项中,与C++表达式!(x > 5 && y <= 10)等价的是 ( )。
A. x <= 5 && y > 10
B. x > 5 || y <= 10
C. x <= 5 || y > 10
D. ! x > 5 && ! y <= 10
📌 大纲对应知识点:C++一级 基本运算 - 逻辑运算、关系运算 🎯 考查目标:考查逻辑运算的德摩根定律的应用,能够对复杂逻辑表达式进行等价转换。
📋 选项详解
⭐ 答案:C 📌 知识点:逻辑运算 德摩根定律
💡 解题小贴士:德摩根定律记忆:非与等于或非,非或等于与非,即!(A&&B) = !A||!B,!(A||B) = !A&&!B,遇到逻辑取反的嵌套直接套用即可。
───── ✨ 第5题 ✨ ─────
📖 题目
某同学执行C++代码cout << ((0.1 + 0.2) == 0.3)时输出0,下面最可能的原因是 ( )。
A. C++的+运算符在处理小数时存在bug
B. 0.1、0.2和0.3在计算机中无法用二进制浮点数精确表示,导致0.1 + 0.2的结果与0.3存在微小误差
C. ==运算符不能用于比较浮点数,只能用于整数
D. 因为0.1 + 0.2的数学结果不等于0.3
📌 大纲对应知识点:C++一级 基本数据类型 - 实数型(float、double) 🎯 考查目标:考查浮点数的二进制存储特性,理解浮点数精度误差的原因。
📋 选项详解
⭐ 答案:B 📌 知识点:浮点数精度特性
💡 解题小贴士:浮点数比较绝对不要直接用==,正确做法是判断fabs(a - b) < 1e-6这样的近似相等,避免精度误差导致的逻辑错误。
───── ✨ 第6题 ✨ ─────
📖 题目
下面的C++代码段执行后其输出是 ( )。
int tnt = 0;for (int i = 0; i < 5; i++){ for (int j = 0; j < i; j++) tnt += 1; cout << tnt << "#";}cout << tnt;
C. 10#10
D. 10
📌 大纲对应知识点:C++二级 多层循环结构 - for循环嵌套 🎯 考查目标:考查双重循环的执行流程,能够逐步跟踪变量的变化过程。
📋 选项详解
⭐ 答案:A 📌 知识点:双重循环执行流程
💡 解题小贴士:遇到循环嵌套的题目,第一轮循环一定要手动推演,确认初始值是否正确,再找规律,避免直接跳步导致错误。
───── ✨ 第7题 ✨ ─────
📖 题目
下面的C++代码执行之后的输出是 ( )。
for ( int i = -2; i < 2; i++) if (not i % 3) cout << i << "#";
A. 0#
B. -2#-1#1#
C. -1#0#
📌 大纲对应知识点:C++一级 基本运算 - 算术运算、逻辑运算;循环结构 🎯 考查目标:考查取余运算的正负特性,以及not运算符的优先级规则。
📋 选项详解
⭐ 答案:A 📌 知识点:运算符优先级、取余运算
💡 解题小贴士:C++中逻辑非!(即not)的优先级高于算术运算符,取余%的优先级高于关系/逻辑运算符,不确定优先级的时候可以加括号明确,避免逻辑错误。
───── ✨ 第8题 ✨ ─────
📖 题目
下面的C++代码执行后其输出是 ( )。
int cnt = 0, i, j;for (i =1; i < 5; i++){ for (j =0; j < i; j++) cout << j << "#"; break;}if(i >= 5) cout << (i*j);
C. 0#
D. 1#
📌 大纲对应知识点:C++二级 多层循环结构 - break语句的使用 🎯 考查目标:考查break语句在循环中的作用,能够识别break对循环流程的影响。
📋 选项详解
⭐ 答案:C 📌 知识点:break语句的作用
💡 解题小贴士:break语句只会跳出当前所在的那一层循环,如果外层循环中直接写break,会直接终止整个外层循环,注意和continue的区别。
───── ✨ 第9题 ✨ ─────
📖 题目
下面C++代码执行后其输出是 ( )。
int count = 0;for (int i = 1; i < 4; i++) for (int j = 1; j < 5; j++){ if (j == 3) continue; if (i == 2) break; count += 1; }cout << (count);
A. 2 B. 4 C. 6 D. 8
📌 大纲对应知识点:C++二级 多层循环结构 - break与continue的区别 🎯 考查目标:考查break和continue在嵌套循环中的不同作用,能够准确跟踪计数变量的变化。
📋 选项详解
⭐ 答案:C 📌 知识点:break与continue的区别
💡 解题小贴士:continue是跳过本次循环剩余语句,直接进入下一次循环,而break是直接终止当前整个循环,两者作用完全不同,遇到嵌套循环时一定要分清楚作用的层级。
───── ✨ 第10题 ✨ ─────
📖 题目
下面4个选项中,与下面C++代码段具有相同效果的是 ( )。
i = 0;while (i < 5){ cout << i; i += 1;}
A.
for (i = 0; i < 5; i++) cout << i;
B.
for (i = 1; i < 5; i++) cout << i;
C.
for (i = 0; i < 6; i++) cout << i;
D.
for (i = 1; I < 6; i++) cout << i;
📌 大纲对应知识点:C++一级 循环结构 - while循环与for循环的转换 🎯 考查目标:考查while循环和for循环的等价转换,理解两种循环的执行逻辑。
📋 选项详解
⭐ 答案:A 📌 知识点:while与for循环的等价转换
💡 解题小贴士:for循环的三部分for(初始化;条件;增量)完全等价于while循环的初始化;while(条件){ 代码; 增量; },转换时只要对应三部分一致,执行效果就完全相同。
───── ✨ 第11题 ✨ ─────
📖 题目
下面C++代码执行后输出是( )。
int n = 10;while (n > 0){ n -= 1; if (n % 3 == 0) continue; if (n == 5) break;}cout << n;
A. 0 B. 5 C. 6 D. 7
📌 大纲对应知识点:C++一级 循环结构 - break与continue的使用 🎯 考查目标:考查while循环中break和continue的执行流程,能够跟踪变量的变化直到循环终止。
📋 选项详解
⭐ 答案:B 📌 知识点:循环中break与continue的流程
💡 解题小贴士:遇到这种循环里有多个跳转语句的题目,一定要逐轮写变量值,不要凭感觉跳步,很容易出错。
───── ✨ 第12题 ✨ ─────
📖 题目
下面C++代码段执行后,其输出是( )。
int i, j, cnt;cnt = 0;for (i = 0; i < 5; i++){ i = -i; for (j = i; j < -i; j++) cnt += 1; i = -i;}cout << cnt;
A. 5 B. 15 C. 20 D. 30
📌 大纲对应知识点:C++二级 多层循环结构 - 复杂嵌套循环的执行 🎯 考查目标:考查循环变量的动态修改对循环流程的影响,能够准确计算内层循环的执行次数。
📋 选项详解
⭐ 答案:C 📌 知识点:嵌套循环执行次数计算
💡 解题小贴士:循环中如果修改了循环变量,一定要注意修改是临时的还是会影响外层循环的迭代,本题中i在循环内被修改后最后又恢复,所以不影响外层循环的i递增。
───── ✨ 第13题 ✨ ─────
📖 题目
某学校图书馆的借阅卡号由6位整数组成。前5位是顺序编号,第6位是校验码,用于防止输错。校验码规则如下:将前5位数字相加,然后除以10的余数,就是第6位数字。如卡号123455的前5位之和为15,除以10的余数是5,故第6位为5。下面的C++代码段用于判断卡号是否正确,横线处应填入的代码是 ( )。
cout << " 请输入卡号: ";cin >> N;order_num = N / 10; // 获得前5位顺序号,假设录入一定为6位正整数check_num = N % 10; // 获得最后一位tnt = 0; // 保存前5位之和for (i = 0; i < 5; i++){ ; order_num /= 10;}if () cout << " 符合校验规则 ";else cout << " 不符合校验规则 ";
A.
tnt += order_num / 10tnt / 10 == check_num
B.
tnt += order_num % 10tnt % 10 == check_num
C.
tnt = order_num / 10 + tnttnt % 10 == check_num
D.
tnt = order_num % 10tnt / 10 == check_num
📌 大纲对应知识点:C++二级 循环结构 - 数位提取算法 🎯 考查目标:考查通过取余和整除提取整数数位的方法,以及校验逻辑的实现。
📋 选项详解
⭐ 答案:B 📌 知识点:数位提取、校验算法
💡 解题小贴士:提取整数的各位数字固定套路是:循环中x%10取个位,然后x /=10去掉个位,直到x为0,这个是二级考试的高频考点。
───── ✨ 第14题 ✨ ─────
📖 题目
下面的C++代码段正常执行后其输出的数字图形是( )。
for (i = 1; I < 5; i++){ for (j = 1; j < i+1; j++) cout << j; cout << endl;}
A.
1121231234
B.
1223334444
C.
1213214321
D.
4342341234
📌 大纲对应知识点:C++二级 多层循环结构 - 图形打印 🎯 考查目标:考查双重循环打印图形的逻辑,能够根据循环变量判断输出内容。
📋 选项详解
⭐ 答案:A 📌 知识点:双重循环打印图形
💡 解题小贴士:图形打印题的核心是看外层循环控制行数,内层循环控制每行的输出内容,先看每行输出多少个字符,再看每个位置的字符和行号、列号的关系。
───── ✨ 第15题 ✨ ─────
📖 题目
某学校举办 “校园演讲比赛”,每位选手由8位评委打分(分数为0~10的整数),且每位评委必须打分。计分规则:若至少有5位评委给出大于等于6分,则成绩有效,最终得分为所有8位评委的总分;如给出低于6分的评委数量超过5位,则记为0分。以下核心程序段依次输入8个分数,并计算最终得分。横线处应填入( )。
total_score = 0; // 所有分数之和high_count = 0; // ≥6 分的评委数量for (i = 0; i < 8; i++){ cout << " 请输入评委分数 : "; cin >> score; ; if (score >= 6) ;}if (high_count >= 5) cout << total_score;else cout << 0;
A.
total_score += scorehigh_count += 1
B.
total_score += scorehigh_count += score
C.
high_count += 1total_score += score
D.
total_score *= scorehigh_count *= 1
📌 大纲对应知识点:C++二级 分支与循环结构的综合应用 🎯 考查目标:考查根据业务逻辑补全代码的能力,理解累加计数的实现方式。
📋 选项详解
⭐ 答案:A 📌 知识点:循环累加、条件计数
💡 解题小贴士:补全代码题首先要理解每个变量的含义,total_score是总和,肯定用+=累加;high_count是计数器,符合条件时用+=1计数,这是最基础的编程模式。
📝 学习建议
本次二级考试的单选题核心考点集中在多层循环的执行流程、break/continue的区别、逻辑运算规则、数位提取、基础算法逻辑,这几个部分是二级考试的高频考点,大家复习时要多做循环嵌套的练习题,手动推演循环执行过程,避免逻辑错误。