2026年全国青少年信息素养大赛初赛真题(算法应用主题赛C++初中组初赛真题1:文末附答案和解析)
一、单项选择题(每题5分)
1、小乐定义了一个整型变量用于表示学校的班级数目:int nums;现在小乐要根据实际情况给nums赋值,以下选项中正确的有( )。
A.true
B.12
C.A’
D.12.5
2、在定义变量时,我们需要指定变量的数据类型,现在需要定义一个小数变量,可以使用以下哪种数据类型( )。
A.char
B.long
C.int
D.float
3、一个长方形的长为p,宽为q,则其面积的计算表达式为( )。
A.p+q
B.p-q
C.p/q
D.p*q
4、校园会要选拔护旗队,要求身高超过160厘米,体重不超过60千克,以下哪个逻辑表达式可以用于选拔要求( )。(备注:shenGao表示身高,tiZhong表示体重)
A.(shenGao>160) || (tiZhong<60)
B.(shenGao>160) && (tiZhong<60)
C.(shenGao>160) && (tiZhong<=60)
D.(shenGao>160) || (tiZhong<=60)
5、阅读以下代码:
for(inti=1;i<=5;i++){for(intj=1;j<=5;j++){cout<<"*";}cout<<endl;}以下哪种说法是错误的( )。
A.第2行代码代表的是内循环。
B.当第5行代码运行完以后,程序就会将i的值加上1。
C.第1行代码代表的是外循环。
D.在每一轮内循环中,第3行代码的运行次数都是不一样的。
6、阅读以下代码:
intcount=0;for(inti=1;i<=20;i++){if(i%2==0)count++;}程序运行结束后,count的值为( )。
A.9
B.5
C.10
D.20
7、以下C++数组定义中,正确的是( )。
A.int d[3] = {1, 2, 3, 4, 5};
B.int a[3.0] = {1, 2, 3};
C.int b[4] = {1, 2, 3, 4};
D.int c[-2] = {1, 2};
8、执行以下代码后,a[2]的值为( )。
inta[5]={10,20,30,40,50};a[2]=99;A.50
B.30
C.20
D.99
9、定义数组 int nums[6] = {5, 15, 25, 35, 45, 55}; 以下哪行代码能输出数值45( )?
A.cout << nums[6];
B.cout << nums[3];
C.cout << nums[4];
D.cout << nums[5];
10、阅读以下代码:
chars[5]={'h','e','l','l','o'};for(inti=0;i<5;i++){cout<<char(s[i]-32);}程序输出的结果是( )。
A.hello
B.HELLO
C.hELLO
D.Hello
二、多项选择题(每题5分,全对得5分,错选、多选、少选均不得分)
11、幸运5游戏:如果数字是5的倍数,或者十位或个位上含有5,则跳过。对于变量m(10<=m<100),以下哪些条件可以用于判断需要跳过( )?(5 分)
A.m / 5 = = 5 m/5==5m/5==5
B.m / 10 = = 5 m/10==5m/10==5
C.m%10 == 5
D.m%5 == 0
12、闰年的判断规则为:能被4整除但不能被100整除,或者能被400整除。请你完善以下代码:
intnian;cin>>nian;if(((①)&&(②))||(③))cout<<"闰年";elsecout<<"平年";请选择能填在填空①②③处的选项( )。
A.nian%100 == 0
B.nian%400 == 0
C.nian%4 == 0
D.nian%100 != 0
13、
inta[8]={1,2,3,4,5,6,7,8};a[1]=15;a[4]=25;a[7]=35;以上代码运行后,以下说法正确的有( )。
A.数组a中第七个元素的值为35
B.数组a中第二个元素的值为2
C.数组a中第四个元素的值为4
D.数组a中第五个元素的值为25
14、
inta[9]={1,1,2,3,5,8,13,21,34};for(inti=0;i<9;i++){if(i%3==0)cout<<a[i]<<" ";}运行上述程序,输出的数字有( )。
A.13
B.1
C.9
D.3
15、在C++中,以下关于cout输出语句的写法,正确的有( )。
A.cout>>x>>endl;
B.print(x);
C.cout<<x<<endl;
D.cout<<“Hello”;
三、判断题(每题5分)
16、在C++中,表达式 10 % 3 的结果是 1。
正确 错误
17、小乐定义了一个数组int a[6] = {1, 2};则这个数组的长度为2。
正确 错误
18、在C++中,语句a ∗ = 3 a*=3a∗=3; 等价于a = a ∗ 3 a=a*3a=a∗3; 。
正确 错误
19、阅读以下C++代码:
if(score>=60)cout<<"及格";elsecout<<"不及格";若score的值为60,则程序输出及格。(备注:score表示成绩)
正确 错误
20、在不知道要循环多少次的情况下,优先使用while循环。
正确 错误
参考答案与解析
1. 答案:B
解析:整型变量可以接收整型常量(12)、字符常量(‘A’,转换为ASCII 65)、布尔常量(true,转换为1)。浮点常量12.5也可以隐式转换为整数(截断为12)。但根据题意是单选,并且说根据实际情况赋值,所以选B。
2. 答案:D
解析:float是单精度浮点型,用于存储小数。char字符型,long和int都是整型。
3. 答案:D
解析:长方形面积 = 长 × 宽,即 p * q。
4. 答案:C
解析:身高超过160:shenGao>160;体重不超过60(≤60):tiZhong<=60;两个条件需同时满足,用&&。
5. 答案:D
解析:内循环每轮执行5次cout << “*”,次数固定,故D错误。A、B、C均正确。
6. 答案:C
解析:1~20中偶数有2,4,6,8,10,12,14,16,18,20,共10个,count值为10。
7. 答案:C
解析:A数组大小3但初始化5个元素,错误;B下标必须为整型常量;D下标不能为负数;C正确。
8. 答案:D
解析:a[2] = 99; 将索引2的元素修改为99,故a[2]值为99。
9. 答案:C
解析:数组索引从0开始,45是第5个元素(索引4),故nums[4]输出45。
10. 答案:B
解析:小写字母ASCII码减32得到对应大写字母,‘h’->‘H’,‘e’->‘E’,‘l’->‘L’,‘l’->‘L’,‘o’->‘O’,输出HELLO。
11. 答案:B、C、D
解析:跳过条件:5的倍数(m%5 == 0);十位为5(m/10 == 5);个位为5(m%10 == 5)。A选项 m/5 == 5仅当m=25时成立,不全面。
12. 答案:①C ②D ③B
解析:闰年条件:(nian%4 == 0 && nian%100 != 0) || (nian%400 == 0),故①C,②D,③B。
13. 答案:C、D
解析:修改后数组:a[0]=1, a[1]=15, a[2]=3, a[3]=4, a[4]=25, a[5]=6, a[6]=7, a[7]=35。第七个元素(索引6)为7,A错;第二个元素(索引1)为15,B错;第四个元素(索引3)为4,C对;第五个元素(索引4)为25,D对。
14. 答案:A、B、D
解析:i%3==0时输出a[i]:i=0→1,i=3→3,i=6→13,输出1、3、13。
15. 答案:C、D
解析:cout使用<<运算符,A错误;B是Python或C的printf,C++标准输出用cout;C和D正确。
16. 答案:正确
解析:10除以3余数为1。
17. 答案:错误
解析:数组定义为int a[6] = {1,2}; 表示有6个元素,未初始化的元素自动补0,长度为6,不是2。
18. 答案:正确
解析:复合赋值运算符a ∗ = 3 a*=3a∗=3等价于a = a ∗ 3 a=a*3a=a∗3。
19. 答案:正确
解析:score=60满足score>=60,执行cout << “及格”。
20. 答案:正确
解析:while循环适合循环次数未知、仅知条件的情况,for循环通常用于已知次数。
关注老师的专栏,查看完整版全国青少年信息素养大赛C++备赛资料(初赛+复赛):
https://blog.csdn.net/weixin_66461496/category_12969975.html
相关课程《全国青少年信息素养大赛C++初赛真题试卷及答案解析》(视频课)
https://www.bilibili.com/cheese/play/ss447406764
相关课程《全国青少年信息素养大赛C++复赛真题试卷及答案解析》(视频课)
https://www.bilibili.com/cheese/play/ep2532538
各种学习资料,助力大家一站式学习和提升!!!
#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"########## 一站式掌握信奥赛知识! ##########";cout<<"############# 冲刺信奥赛拿奖! #############";cout<<"###### 课程购买后永久学习,不受限制! ######";return0;}【秘籍汇总】(完整csp信奥赛C++学习资料):
1、csp/信奥赛C++,完整信奥赛系列课程(永久学习):
https://edu.csdn.net/lecturer/7901 点击跳转
2、CSP信奥赛C++竞赛拿奖视频课:
https://edu.csdn.net/course/detail/40437 点击跳转
https://edu.csdn.net/course/detail/41081 点击跳转
3、csp信奥赛高频考点知识详解及案例实践:
CSP信奥赛C++动态规划:
https://blog.csdn.net/weixin_66461496/category_13096895.html点击跳转
CSP信奥赛C++标准模板库STL:
https://blog.csdn.net/weixin_66461496/category_13108077.html 点击跳转
信奥赛C++提高组csp-s知识详解及案例实践:
https://blog.csdn.net/weixin_66461496/category_13113932.html 点击跳转
4、csp信奥赛冲刺一等奖有效刷题题解:
信奥赛C++普及组CSP-J一等奖通关刷题题单及题解:
https://blog.csdn.net/weixin_66461496/category_12673810.html 点击跳转
信奥赛C++提高组csp-j初赛&复赛真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12808781.html 点击跳转
信奥赛C++提高组csp-s初赛&复赛真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13125089.html 点击跳转
5、GESP C++考级真题题解:
GESP(C++ 一级+二级+三级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12858102.html 点击跳转
GESP(C++ 四级+五级+六级)真题题解(持续更新):https://blog.csdn.net/weixin_66461496/category_12869848.html 点击跳转
GESP(C++ 七级+八级)真题题解(持续更新):
https://blog.csdn.net/weixin_66461496/category_13117178.html 点击跳转
· 文末祝福 ·
#include<bits/stdc++.h>usingnamespacestd;intmain(){cout<<"跟着王老师一起学习信奥赛C++";cout<<" 成就更好的自己! ";cout<<" csp信奥赛一等奖属于你! ";return0;}