2024年信息素养大赛 C++小学组初赛 算法创意实践挑战赛 真题答案解析
2024年信息素养大赛初赛C++真题解析
选择题(共15题,每题5分,共75分)
1、运行下列程序段,输出的结果是( )
int n=572765;
cout <<n/10%10;
A、5
B、6
C、4
D、1
答案:B
考点分析:考察模运算和除法运算,输出的表达式先进行除法运算,除以10得到的n=57276,然后在取余10,得到最后一位6,答案B
2、假设有两个城市:城市A和城市8,每个城市的温度都在-50到50摄氏度之间。当且仅当只有一个城市的温度低于0时,输出1,也就是说,如果城市A的温度低于0而城市B大于等于0;或者如果城市A的温度大于等于0而B小于0,则输出1,否则输出0。补全①和②处的代码
#include<iostream>
using namespace std;
int main()
{ int a,b; cin>>a>>b; if(___1__) { if(___2___) { cout<<1; return 0; } } if(a>=0) { if(b<0) { cout<<1; return 0; } } cout<<0; return 0;
}
A、a<0 b>=0
B、a>0 b<=0
C、a>=0 b>=0
D、a<0 b<0
答案:A
考点分析:考察阅读程序能力,从给定的题目以及程序的后半部分可以得知,1和2处应该要填的是a的温度小于0,b的温度大于等于0;答案A
3、执行以下代码段,变量x和y的值分别是
int x=7;
int y=x/2*3;
A、 x=7, y=10.5
B、x=7,y=10
C、x=7,y=12
D、x=7, y=9
答案:D
考点分析:考察表达式计算能力,第一行x=7,第二行y=x/2*3,等价于y=7/2*3=3*3=9;除法运算如果左右两边都是整数返回整数,答案D
4、在C++中,输出指令是
A、cin
B、cout
C、clog
D、int
答案:B
考点分析:考察输入输出指令,输入是cin,输出是cout;答案B
5、小A有一个神奇口袋,里面可以装各个平方数,口袋的负载量就是口袋里所有数字之和。当负载量超过L的时候不能再装平方数,现在给定n个数,从左往右筛选其中的平方数,并依次将平方数放入口袋,编成程序,输出口袋里能装下几个平方数。平方数就是一个愁数乘以自己的结果(例如:1、4、9、16、…)。补全①、②和③处的代码。
例如:
输入L为100,n为5,接下来的5个数分别是49、19、36、25、73,则口袋里只装了49和36两个平方数,所以输出2。
#include<iostream>
using namespace std;
int main()
{int L,n,cnt = 0,sum = 0;cin >> L >> n;for(int i=1;i<=n;i++){int x;bool flag = false;cin >> x;for(int j=1;j<x;j++){if(__①__){flag = true;break;}}if(flag == true){if(__②__){sum += x;cnt++;}else{__③__}}}cout << cnt;return 0;
}
A、.j*j==x Sum +x<=L continue;
B、 j*j == x Sum +x<=L break;
C、x/j==i Sum <=L continue;
D、x/j==i sum <= L break;
答案:A
考点分析:考察阅读程序能力,题目明确要求的是要输出平方数,第一层for循环i只是输入数字个数,第二层for循环j是从1到x遍历,这里条件是平方数,所以应该是j*j=x,排除CD选项;序号2应该是前面数字之和要小于等于L;序号3是不满足就找下一个数,答案A
本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102
6、在C++中,表示布尔数据类型的关键字是()
A、int
B、bool
C、double
D、string
答案:B
考点分析:考察数据类型相关知识,四个选项对应的分别是:整型、布尔类型、浮点型、字符串;答案B
7、下列关于C++语言中变量的叙述,不正确的是()
A、变量定义时可以不初始化
B、变量被赋值之后的笑型不变
C、变量没有定义也能够使用
D、变量名必须是台法的标识符
答案:C
考点分析:考察变量相关知识,变量必须先定义后使用,答案C
8、在C++中,以下正确的变是命名是()
A、2things
B、_myVariable
C、my-variable
D、None of the above
答案:B
考点分析:考察变量命名规则,变量命名规则需要遵循四点:1、只能由数字、字母和下划线组成,2、数字不能是首字母,3、不可一世关键字,4、严格区分大小写;答案B
9、执行以下程序段,输出的结果是
for(int j=1;j<=6;j++)
{if(j%3 == 0){break;}count << j << ' ';
}
A、12
B、123
C、123456
D、12456
答案:A
考点分析:考察阅读程序能力,程序中当j的值是3的倍数也就是3的时候就终止循环,breka语句是退出当前循环;答案A
10、如果我们想在终端输出变量x的值,正确的代码是()
A、cin >> x
B、cout << x
C、cout >> x
D、cin << x
答案:C
考点分析:考察输入输出指令,输出用的是cout,输出流控制符是两个大于号,答案C
11、运行以下程序,输出的结果是()
#include<iostream>
using namespace std;
int man()
{cout << "Hello" << " ";cout << "World";return 0;
}
A、Hello,World!
B、Hello world
C、语法错误
D、无任何输出
答案:B
考点分析:考察输出指令,cout输出后面如果是字符串用双引号包括起来会原样输出,默认cout是不换行,答案B
12、输出1到10之间的所有偶数,请补全以下代码
#include<iostream>
using namespace std;
int man()
{for(int i=1;i<=10;i++){if(__①__){cout<<i<<endl;}}return 0;
}
A、i%2==0
B、i%2!=0
C、i%2=1
D、i%2
答案:A
考点分析:考察阅读程序能力,缺省的条件是判断偶数,偶数是能被2整除,没有余数,答案A
13、以下可以作为变量名的是
A、cnt_1
B、1_cnt
C、cnt1_#
D、@cnt
答案:A
考点分析:考察变量命名规则,变量命名规则需要遵循四点:1、只能由数字、字母和下划线组成,2、数字不能是首字母,3、不可一世关键字,4、严格区分大小写;答案A
14、运行以下程序,输出的结果是()
#include<iostream>
using namespace std;
int man()
{int a = 5;int b = a + 3;int c = b - 2;cout << c;return 0;
}
A、6
B、8
C、5
D、10
答案:A
考点分析:考察阅读程序能力,程序对应的表达式为:5+3-2=6;答案A
15、下面代码实现的是判断n是否是质数的功能,补全①和②处的代码
#include<iostream>
using namespace std;
int man()
{int n;cin >> n;_①_for(int i=2;i<n;i++){if(_②_){isprime = false;break;}}cout << isprime << endl;return 0;
}
A、bool ispime = true; n%i == 0
B、bool ispime = false; n%i != 0
C、bool ispime = true; n%i != 0
D、bool ispime = false; n%i == 0
答案:A
考点分析:考察阅读程序能力,程序是判断质数,质数是除了1和本身之外没有别的因数;从后续的程序可以得出1处应该是声明布尔变量,同时初值应该是true;2处对应的是条件也就是判断是否是因数,n能被i整除就是因数;答案A
本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102
二、判断题(共5题,每题5分,共25分)
16、在C++中,&&和||分别代表逻辑与和逻辑或运算
答案:正确
考点分析:考察逻辑运算符,&&是逻辑与运算,||是逻辑或运算;答案正确
17、在C++中,for 循环至少执行一次
答案:错误
考点分析:考察for循环中分为三部分,第一部分是自变量初始化,第二部分是条件判断,第三部分是自变量更新;如果要保证至少执行一次,条件判断必须返回真才行;答案错误
18、在C++中,cout 用于输入,而 cin 用于输出
答案:错误
考点分析:考察输入输出指令,刚好说反了,输入是cin,输出是cout;答案错误
19、在C++中,变是声明后,如果不初始化,其值是确定的
答案:错误
考点分析:考察变量相关知识,c++中变量声明如果不初始化是任意的一个值,我们在写c++程序的时候应该避免这种情况发生,变量使用前先赋值;答案错误
20、在C++中,所有变是都必须在使用前声明其数据类型
答案:正确
考点分析:考察变量相关知识,变量在使用前需要先声明,声明就是确定变量的数据类型;答案正确
推荐资料
- 所有考级比赛学习相关资料合集【推荐收藏】
1、C++资料
- 电子学会C++一级历年真题解析
- 电子学会C++二级历年真题解析
- 蓝桥杯C++选拔赛真题解析
2、Scratch资料
- Scratch3.0系列视频课程资料
- 零基础学习scratch3.0【入门教学 免费】
- 零基础学习scratch3.0【视频教程 114节 免费】
- 历届蓝桥杯scratch国赛真题解析
- 历届蓝桥杯scratch省赛真题解析
- 历届蓝桥杯scratch STEMA选拔赛真题解析
- 历届蓝桥杯科技素养计算思维真题解析
- 蓝桥杯专项训练考前集训100题
- 画图-scratch编程考级99图
- 电子学会历年scratch等级考试一级真题解析
- 电子学会历年scratch等级考试二级真题解析
- 电子学会历年scratch等级考试三级真题解析
- 电子学会历年scratch等级考试四级真题解析
3、Python资料
- 蓝桥杯python选拔赛真题详解
-
蓝桥杯python省赛真题详解
-
蓝桥杯python国赛真题详解
-
python等级一级真题解析【电子学会】
-
python等级二级真题解析【电子学会】
-
python等级三级真题解析【电子学会】
-
python等级四级真题解析【电子学会】