A.
B.
C.
D.
A.
B.
C.
D.
A.
B.
C.
D.
A.
B.
C.
D. 第
14 届蓝桥杯 C++青少组中 /高级组选拔赛 (STEMA)2022 年10 月30 日真
题
题目总数: 10
总分数:223
一、选择题
第 1 题
单选题
执行 cout<<(5%3); 语句后,输出的结果是(
)。
0
1
2
3
第 2 题 单选题
以下选项中,哪一个是 C++注释符号?(
)。
*
//
;
#
第 3 题
单选题
以下关于在 C++中,对形式参数描述不正确的是(
)。
形式参数可以为空
形式参数必须有类型说明
多个形式参数之间以分号隔开
函数有无形式参数,函数名后的小括号都不能省略
第 4 题
单选题
可以正确判断 char类型变量 c是小写字母的是(
)。
'a'<=c<='z'
('a'>=c) && ('z'<=c)
(c>='a') && (c<='z')
('a'>=c) || ('z'<=c)
第 5 题 单选题
A.
B.
C.
D.
以下说法正确的是(
)。
可以通过 &p来间接访问指针变量 p所指向的数据内容
指针变量里面存放变量的地址,指针变量里面的值初始化之后不可改变
定义为指向 int型变量的指针,可以指向 double类型的变量
C++中,通过函数名称可以获取到函数的地址
二、编程题
第 6 题
问答题
百位上的数字
题目描述:
给定一个三位数,输出其百位上的数字。
输入描述:
输入一个三位数
输出描述:
输出三位数百位上的数字
样例输入:
样例输出:
第 7 题
问答题
开关
题目描述:
一盏台灯的开关可以控制三种灯光状态。初始状态为关闭状态,第一次按下开关为冷光状态,第二次按下开关
为暖光状态,第三次按下开关为关闭状态,第四次按下开关继续为冷光状态,以此类推。请计算出按下 N次开
关后,台灯为何种状态。
输入描述:
输入一个正整数 N( 1<N<1000 ),表示按下台灯开关的次数(初始状态为关闭状态)
输出描述:
输出一个大写字母,当按下台灯开关 N次后,灯光为冷光状态则输出大写字母 “L”,为暖光状态则输出大写字母
“N” ,为关闭状态则输出大写字母 “G”
样例输入:
123
1
5
样例输出:
第 8 题
问答题
对折纸张
题目描述:
现要对一张纸张进行反复对折,纸张的单页厚度为 0.2毫米,请问最少对折几次后,纸的厚度超过 N毫米( N为
正整数, 1<N<1000 )。
输入描述:
输入一个正整数 N( 1<N<1000 )
输出描述:
输出一个整数,表示纸张最少对折几次后,纸的厚度超过 N毫米(大于 N毫米)
样例输入:
样例输出:
第 9 题
问答题
分糖果
题目描述:
现有 N罐糖果,且已知每罐糖果的初始数量。现给出两个数值 L和 R( L≤R ),需要把每罐糖果的数量调整为:
L≤ 任意一罐糖果的数量 ≤R。调整的方式是每次从其中一罐糖果中拿出 1块放到其他糖果罐中。请你计算出最少
调整几次才能使每罐糖果的数量都在 L到 R范围之间,如果不能将每罐糖果都调整到 L到 R范围之间则输出 -1。
例如: N = 2,2罐糖果的初始数量为 3和 8, L = 3 ,R = 6 ,通过调整使得: 3≤任意一罐糖果的数量 ≤6,调整
方式如下:
第一次从初始数量为 8的罐中拿 1块放到初始数量为 3的罐中,调整后为( 4, 7);
第二次从数量 7的罐中拿 1块放到数量为 4的罐中,调整后为( 5, 6);
故最少调整 2次。
输入描述:
第一行输入一个正整数 N( N<30 ),表示糖果的罐数
第二行输入 N个正整数( 1≤正整数 ≤100),表示每罐糖果的初始数量,每个正整数之间以一个空格隔开
第三行输入两个正整数 L, R( 1≤L≤R≤100 ),表示每罐糖果的数量所要调整的范围,两个正整数之间以一个
空格隔开
输出描述:
输出一个整数,表示最少调整几次才可以使 N罐糖果数量都在 L和 R范围之间,如果不能将 N罐糖果调整到 L到 R
范围之间则输出 -1
N
2
4
样例输入:
样例输出:
第 10 题
问答题
最长路线
题目描述:
有一个 N*M的矩阵,且矩阵中每个方格中都有一个整数( 0≤整数 ≤100 ) ,小蓝需要按照以下要求从矩阵中找
出一条最长的移动路线,且输出最长路线的长度( 1个方格为 1个长度)。
要求:
1. 小蓝可以从矩阵中任意一个方格开始向它的上、下、左、右相邻的任意一个方格移动,且移动的路线不能有
交叉;
2. 小蓝每次所要移动到的方格中的整数都要小于当前所在方格中的整数(如当前所在的方格中的整数为 3,那
么可以移动到数字为 0, 1, 2的格子里,不可以移动到数字为 3, 4, 5... 的格子里);
例如: N=3,M=3 ,矩阵方格如下:
最长路线为 4 -> 3 -> 2 -> 1 ,故路线长度为4。
输入描述:
第一行输入两个正整数 N, M( 1< N≤1000 ,1< M≤1000 ),N表示矩阵的行数, M表示矩阵的列数,两个正整
数之间以一个空格隔开
第二行开始输入 N行,每行包含 M个整数( 0≤每个整数 ≤100),表示每个方格中的整数,每个整数之间以一个
空格隔开
输出描述:
输出一个整数,表示最长路线的长度
样例输入:
样例输出:
2
3 8
3 6
2
3 3
1 1 3
2 3 4
1 1 1
4
第14届蓝桥杯C++青少组中_高级组选拔赛(STEMA)2022年10月30日真题,第14届蓝桥杯青少组STEM考试C++真题 2022年10月