第 11 届蓝桥杯 C++ 青少组中 / 高级组省赛 2020 年真题答和案解析
一、选择题
第 1 题 单选题
题目:表达式 ‘6’ - ‘1’ 的值是 ( )
A. 整数 5
B. 字符 5
C. 表达式不合法
D. 字符 6
答案:A
解析:在 C++ 中,字符常量以 ASCII 码形式存储。'6' 的 ASCII 码为 54,'1' 的 ASCII 码为 49,二者相减结果为 5,是整数类型,因此选 A。
第 2 题 单选题
题目:若二维数组 a 有 n 列,则在 a [i][j] 前的元素个数为 ( )
A. in+j-1 B. in+j C. jn+i D. in+j+1
答案:B
解析:二维数组按行存储,假设数组索引从 0 开始,第 i 行(0≤i)前有 i 行,每行 n 列,共 in 个元素;第 j 列(0≤j)前有 j 个元素,因此总个数为 in+j,选 B。
第 3 题 单选题
题目:以下叙述正确的是 ( )
A. break 语句只能用于 switch 语句体中;
B. continue 语句的作用是使程序的执行流程跳出包含它的所有循环;
C. break 语句只能用在循环体内和 switch 语句体内;
D. 在循环体内使用 break 语句和 continue 语句的作用相同。
答案:C
解析:
- A 错误,break 也可用于循环体(如 for、while);
- B 错误,continue 仅跳过当前循环迭代,不跳出所有循环;
- C 正确,break 的合法使用场景是循环体和 switch 语句;
- D 错误,break 跳出当前循环,continue 跳过当前迭代,作用不同。
第 4 题 单选题
题目:按照 “先进后出” 原则组织数据的结构是 ( )
A. 队列
B. 栈
C. 双向链表 D. 二叉树
答案:B
解析:栈(Stack)遵循先进后出(LIFO)原则,队列是先进先出(FIFO),双向链表和二叉树无此特性,选 B。
第 5 题 单选题
题目:用 0、1、2、3、4 这五个数字,能组成多少个没有重复数字的多位偶数?
A. 144 B. 147 C. 160 D. 163
答案:B