2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案_第1页
2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案_第2页
2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案_第3页
2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案_第4页
2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案_第5页
已阅读5页,还剩4页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年NOIP全国青少年信息学奥林匹克联赛初赛试题(普及组)及详细答案考试时长:120分钟满分:100分注意事项:1.答卷前,考生务必将自己的姓名、准考证号填写在答题卡上。2.答案必须写在答题卡对应位置,写在本试卷上无效。3.考试结束后,将本试卷和答题卡一并交回。一、单项选择题(共15题,每题2分,共30分。每题仅有一个正确选项)1.下列不属于结构化程序设计基本结构的是()A.顺序结构B.分支结构C.递归结构D.循环结构2.二进制数110101对应的十进制数是()A.51B.53C.49D.553.已知一棵完全二叉树共有63个节点,则该树的叶子节点个数为()A.31B.32C.29D.304.在C++语言中,以下变量命名合法的是()A.3numB.num_1C.num#1D.int5.一个栈的入栈序列为1、2、3、4、5,则不可能的出栈序列是()A.12345B.54321C.45321D.431256.时间复杂度为O(nlogn)的排序算法是()A.冒泡排序B.快速排序C.选择排序D.插入排序7.已知inta=5,b=2;执行语句cout<<a/b+a%b;输出结果为()A.2B.3C.4D.58.图的广度优先搜索(BFS)通常借助的数据结构是()A.栈B.队列C.堆D.链表9.十六进制数2A转换为二进制数是()A.101010B.100110C.110010D.10110010.下列关于贪心算法的说法正确的是()A.一定能得到全局最优解B.仅能得到局部最优解C.部分场景可得到全局最优解D.时间复杂度一定高于动态规划11.在C++中,break语句的作用是()A.结束本次循环,进入下一次循环B.直接终止当前循环或switch语句C.终止整个程序运行D.无实际作用12.一棵二叉树的前序遍历序列为ABCDE,中序遍历序列为BADCE,则后序遍历序列为()A.BDECAB.BEDCAC.BDCEAD.BADEC13.长度为n的有序数组,二分查找的最坏时间复杂度为()A.O(n)B.O(n²)C.O(logn)D.O(1)14.下列数据结构中,支持随机访问的是()A.单链表B.顺序数组C.栈D.队列15.十进制数2026转换为二进制数的末尾数字为()A.0B.1C.2D.6二、不定项选择题(共5题,每题3分,共15分。多选、少选、错选均不得分)1.下列属于线性数据结构的有()A.栈B.队列C.二叉树D.数组2.以下排序算法中,属于稳定排序的有()A.冒泡排序B.归并排序C.快速排序D.选择排序3.关于递归算法,下列说法正确的有()A.必须设置递归终止条件B.递归层数过深会导致栈溢出C.递归效率一定优于循环D.斐波那契数列可通过递归实现4.下列运算符中,优先级高于赋值运算符(=)的有()A.+B.%C.>D.==5.图的存储方式包括()A.邻接矩阵B.邻接表C.哈希表D.二叉链表三、判断题(共10题,每题1.5分,共15分。正确选√,错误选×)1.完全二叉树一定是平衡二叉树。()2.栈和队列都可以在两端同时插入和删除元素。()3.C++语言中,char类型变量占用1字节内存空间。()4.动态规划算法可以解决所有贪心算法能解决的问题。()5.有序数组的二分查找效率一定高于顺序查找。()6.递归程序可以完全改写成非递归程序。()7.无向图的邻接矩阵一定是对称矩阵。()8.continue语句可以终止整个循环结构。()9.时间复杂度O(n²)的算法一定比O(nlogn)的算法运行慢。()10.空树的高度为0。()四、阅读程序写结果(共4题,每题5分,共20分)程序1PlainText

#include<iostream>

usingnamespacestd;

intmain(){

ints=0;

for(inti=1;i<=10;i++){

if(i%2==0)s+=i;

}

cout<<s<<endl;

return0;

}输出结果:__________程序2PlainText

#include<iostream>

usingnamespacestd;

intf(intn){

if(n<=1)return1;

returnf(n-1)*n;

}

intmain(){

cout<<f(5)<<endl;

return0;

}输出结果:__________程序3PlainText

#include<iostream>

usingnamespacestd;

intmain(){

inta=12,b=5;

cout<<(a/b)<<""<<(a%b)<<endl;

return0;

}输出结果:__________程序4PlainText

#include<iostream>

usingnamespacestd;

intmain(){

intres=0;

for(inti=1;i<=4;i++){

for(intj=1;j<=i;j++){

res++;

}

}

cout<<res<<endl;

return0;

}输出结果:__________五、完善程序(共2题,每题10分,共20分)1.题目:求斐波那契数列第n项斐波那契数列定义:F(1)=1,F(2)=1,F(n)=F(n-1)+F(n-2)(n≥3),补充完整以下程序,输入正整数n,输出对应项数值。PlainText

#include<iostream>

usingnamespacestd;

intmain(){

intn;

cin>>n;

inta=1,b=1,c;

if(n==1||n==2){

cout<<1<<endl;

return0;

}

for(inti=3;i<=n;____①____){

c=____②____;

a=b;

b=c;

}

cout<<____③____<<endl;

return0;

}①__________②__________③__________2.题目:数组最大值查找输入n个整数,查找并输出数组中的最大值,补充完整程序。PlainText

#include<iostream>

usingnamespacestd;

intmain(){

intn,maxn,x;

cin>>n;

cin>>maxn;

for(inti=2;____①____;i++){

cin>>x;

if(____②____){

maxn=x;

}

}

cout<<____③____<<endl;

return0;

}①__________②__________③__________2026年NOIP初赛普及组详细答案及解析一、单项选择题(每题2分,共30分)1.答案:C解析:结构化程序设计三大基本结构为顺序、分支、循环,递归是算法实现方式,不属于基础结构。2.答案:B解析:二进制110101=1×32+1×16+0×8+1×4+0×2+1×1=53。3.答案:B解析:63个节点的完全二叉树是满二叉树,层数为6,叶子节点数为2^(6-1)=32。4.答案:B解析:变量名不能以数字开头、不能含特殊符号、不能使用关键字,仅num_1合法。5.答案:D解析:入栈12345,出栈43125无法实现,弹出3后栈内为12,只能先弹2再弹1。6.答案:B解析:冒泡、选择、插入排序时间复杂度均为O(n²),快速排序平均时间复杂度为O(nlogn)。7.答案:B解析:整数除法5/2=2,取模5%2=1,相加结果为3。8.答案:B解析:广度优先搜索遵循先入先出规则,依托队列实现;深度优先搜索依托栈实现。9.答案:A解析:十六进制2对应二进制10,A对应1010,拼接为101010。10.答案:C解析:贪心算法仅在部分特定场景(如活动选择、最小生成树)可得到全局最优解,多数情况仅局部最优。11.答案:B解析:break终止当前循环或switch语句;continue仅结束本次循环,不终止整体循环。12.答案:C解析:由前序、中序遍历可推得二叉树结构,后序遍历为左右根,结果为BDCEA。13.答案:C解析:二分查找每次缩小一半查找范围,最坏时间复杂度为O(logn)。14.答案:B解析:顺序数组可通过下标随机访问元素,链表、栈、队列均不支持随机访问。15.答案:A解析:十进制偶数转换为二进制末位为0,2026是偶数,故末尾为0。二、不定项选择题(每题3分,共15分)1.答案:ABD解析:栈、队列、数组均为线性结构,二叉树属于树形非线性结构。2.答案:AB解析:冒泡、归并排序是稳定排序;快速排序、选择排序为不稳定排序。3.答案:ABD解析:递归必须有终止条件,层数过深会栈溢出,斐波那契数列可递归实现;递归存在重复计算,效率通常低于循环。4.答案:ABCD解析:算术运算符、关系运算符优先级均高于赋值运算符。5.答案:AB解析:图的主流存储方式为邻接矩阵和邻接表,哈希表用于键值存储,二叉链表用于存储二叉树。三、判断题(每题1.5分,共15分)1.√解析:完全二叉树左右子树高度差不超过1,满足平衡二叉树定义。2.×解析:栈仅能一端出入,队列两端分别负责入队、出队,均无法两端同时操作。3.√解析:C++中char类型固定占用1字节内存。4.×解析:动态规划可解决部分贪心问题,但并非全部,二者适用场景不同。5.√解析:有序数组二分查找最坏复杂度O(logn),远优于顺序查找O(n)。6.√解析:所有递归算法均可通过栈模拟改写成非递归形式。7.√解析:无向图中边双向连通,邻接矩阵行列对称。8.×解析:continue仅跳过本次循环剩余语句,继续下一次循环。9.×解析:时间复杂度为渐近复杂度,小数据范围下O(n²)程序可能运行更快。10.√解析:空树无节点,高度定义为0。四、阅读程序写结果(每题5分,共20分)1.答案:30解析:程序统计1-10所有偶数和,2+4+6+8+10=30。2.答案:120解析:函数为阶乘计算,5!=5×4×3×2×1=120。3.答案:22解析:12/5整数除法得2,12%5取模余数为2。4.答案:10解析:双层循环累加,1+2+3+4=10。五、完善程序(每空

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论