赞
踩
第十四届蓝桥杯大赛青少年国赛C++组试题真题(2023年5月28日)
一、选择题
第 1 题 单选题
以下选项中,没有利用“比较”操作的算法是( )。
A.选择排序
B.冒泡排序
C.插入排序
D.桶排序
第 2 题 单选题
假设入栈顺序为a、b、c、d、e,则出栈序列不可能是( )。
A.a、b、d、c、e
B.b、a、d、c、e
C.d、c、a、b、e
D.c、b、a、d、e
第 3 题 单选题
执行以下代码,输出的结果是( )。
#include <iostream>
using namespace std;
int f(int k)
{
if(k<= 2) return 1;
return 2 * f(k - 2) + f(k - 1);
}
int main()
{
int n = 7;
cout << f(n);
return 0;
}
A.21
B.41
C.43
D.45
第 4 题 单选题
已定义字符串 string s ="Let lt Be" ,下列哪个选项可以获得字符串 的长度( )。
A.s.size()
B.len(s)
C.sizeof(s)
D.strlen(s)
第 5 题 单选题
以下关于C++类的说法,正确的是( )。
A.析构函数和构造函数一样可以进行重载
B.析构函数里不能使用return语句
C.构造函数不需要返回值时,需要定义为返回void类型
D.如果自定义构造函数的参数都是默认参数,则不能再定义一个无参数的构造函数
二、编程题
第 6 题 问答题
八进制回文平方数
提示:
八进制数:指逢8进位的一种进位计数制,以0、1、2、3、4、5、6、7共八个数码表示。例如:十进制数8等于八进制数10,十进制数64等于八进制数100,以此类推。
回文数:反向排列与原来一样的数。例如,12321是回文数,1231不是回文数。
平方数:可以写成某个整数的平方的数。例如,9 = 3^2,9 是一个平方数。
题目描述:
给定一个十进制正整数N(1≤N≤109),请从小到大输出1~N之间(含1和N)所有满足以下要求的数:
1. 这个数转换为八进制后是一个回文数;
2. 这个数是一个平方数。
例如:N=20,在1~20之间满足要求的数有1、4、9,因为有,
1转换为八进制为1,是一个回文数;且1 = 1^2,是一个平方数;
4转换为八进制为4,是一个回文数;且4 = 2^2,是一个平方数;
9转换为八进制为11,是一个回文数;且9 = 3^2,是一个平方数。
故输出1 4 9
输入描述
输入一个十进制正整数N(1≤N≤109)
输出描述
输出一行,包含若干个十进制正整数,表示满足题目要求的数。结果从小到大输出,两个正整数之间用一个空格隔开
样例输入
20
样例输出
1 4 9
答案和更多内容请查看网站:
青少年软件编程历年真题模拟题实时更新
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。