1
十四届蓝桥杯省赛 C++试卷
一、选择题
第一题
C++中,bool类型的变量占用字节数为( )。
A、1
B、2
C、3
D、4
第二题
以下关于数组的说法,不正确的是( )。
A、数组中所有元素的类型必须相同
B、数组中各元素在内存中是顺序存放的
C、数组最后一个元素的索引是数组的长度
D、数组名的第一个字符可以是下划线
第三题
设只含根结点的二叉树高度为 1,共有62个结点的完全二叉树的高度为( )。
A、4
B、5
C、6
D、7
第四题
以下关于 C++结构体的说法,正确的是 ( )。
A、结构体中只能 包含成员变量,不能 包含成员函数
B、结构体不能从另一个结构体继承
C、结构体里面可以包含静态成员变量
D、结构体里面不能包含构造函数
2
第五题
执行以下代码,输出 的结果是( )。
#include <iostream>
using namespace std;
int f(int k)
{
if (k == 1)
{
return 3;
}
return 2 * f(k - 1) + 1;
}
int main()
{
int n = 6;
cout << f(n);
return 0;
}
A、127
B、97
C、63
D、126
二、编程题
第一题
编程实现:特殊运算符
题目描述:
假定有一个运算符“ >>>”,它的功能如下所示 :
>>>257 = 25
>>>182 = 18
>>>933 = 93
3
给定一个正整数 N(100<N<1000),请计算 N – (>>>N)的结果。
例如:N=257时,
257 – (>>>257)
= 257 – 25
= 232
输入描述: 输入一个正整数N(100<N<1000)
输出描述: 输出一个整数,表示 N - (>>>N)的结果
样例输入: 257
样例输出: 232
第二题
编程实现:四叶玫瑰数
题目描述:
四叶玫瑰数是指一个四位数,其各位上的数字的四次方之和等于本身的数。
给定两个正整数 N和M,请将N~M(1≤N≤M≤1000000)之间(含N和M)的四叶玫瑰数按从小到大的顺序输
出。
例如:N=1234,M=2345时,有一个四叶玫瑰数 1634,因为1^4 + 6^4 + 3^4 + 4^4 = 1634,故输出
1634。
输入描述:
第一行输入两个正整数 N、M(1≤N≤M≤1000000)
输出描述:
输出一行,包含若干个 用一个空格隔开的 正整数,表示 N~M之间的四叶玫瑰数按从小到大的顺序的输出结果
注意:
题目数据保证给定的 N~M范围内至少有一个 四叶玫瑰数
样例输入:
1234 2345
样例输出:
1634
4
第三题
编程实现:质因数的个数
提示信息:
因数:又称为约数, 如果整数a除以整数b(b≠0) 的商正好是整数而没有余数,我们就说 b是a的因数。
质
2023年第十四届省赛真题(C++),第十四届蓝桥杯青少组省赛C++真题试卷