简介:这份资料围绕全国中小学信息技术创新与实践大赛(NOC)指导教师认证真题整理而成,面向备考该认证的指导教师及竞赛辅导人员,覆盖编程基础、机器人、人工智能、算法与数据结构等核心考点,适合用于考前自测与查漏补缺。资源以Word文档形式收录多道选择题与判断题,并附带简要解析,能帮助读者快速掌握循环、递归、二分查找、二维列表、EV3连接方式、灰度传感器、语音识别与图像识别等高频知识点,同时理清大赛主办单位、报名渠道及宗旨等常识性问题。整份资料包含1个doc文件,压缩包大小约34KB,内容精炼、携带方便。目前已有6706人学习下载,该份真题历经较多用户验证,对考生把握出题思路具有较高参考价值。文档题目按知识点分层呈现,既可用于系统性刷题,也可针对薄弱环节重点复习,是一份实用、紧凑的备考辅助材料。
1. NOC指导教师认证真题:为什么刷完七十道题,你还要回头补概念
这套NOC指导教师认证题库,表面上是七十道填空、判断和选择题,实际考的是你对编程教学边界的理解。我拿到题的第一反应是:出题人没有为难你,真正的问题在于太多人只背答案,不读选项——比如递归的出口和关系式,题目换个写法你还能不能认出来。题库范围覆盖Python基础、递归递推、二分枚举、机器人硬件、人工智能基础和大赛规则,适合正在准备认证的信息技术教师、机构讲师和赛队教练。这篇笔记不替你做题,而是把题库按模块拆开,告诉你每类题背后的原理、考法,以及哪些地方按答案背反而会翻车。
2. Python与算法模块:递归、二分、枚举的高频考点拆解
2.1 for/while循环与Python语法细节:死循环、迭代次数与二维列表
循环结构是整套题库里出现频率最高的考点,但出题方式不是让你写代码,而是让你判断边界行为。比如那道“for 循环与 while 循环的叙述错误的是”的题目,错误项写的是“while 循环可以不设置循环条件”。从语法上讲,while 后面确实可以只写一个True或直接省略显式条件写成死循环,但在正常的教学语境里,循环条件就是用来控制退出时机的。如果不设置任何可变的退出条件,代码会一直跑下去,这在考试里就是判错。实际编程中,我见过不少新手把条件写在循环体里用break强行跳出,这不是严谨的写法,出题人要考的正是你对“条件”的理解。
另一个高频题是t=1; for i in range(1,11): t=t*i的循环次数和输出结果。range 的右边界是开区间,所以range(1,11)实际迭代的是 1 到 10 这十个数,循环体执行 10 次。最后t得到的是 10 的阶乘,也就是 3628800,不是题目乱序选项里那个“10次,56”。这类题值得注意的边界陷阱是:把range(1,11)看成 1 到 11、循环 11 次,这是最容易丢分的地方。
t = 1 for i in range(1, 11): # i 依次取 1,2,...,10,共 10 次 t = t * i # 每次累乘 print(i, "! =", t) # 输出 10 ! = 3628800这段代码里,range(1, 11)的第二个参数 11 不被包含,所以循环次数是 10 而非 11。如果你把右边界改成 12,结果就会变成 11 的阶乘,数值会明显不同。后面那道“显示你好”的题则是最简单的print("你好!"),字符串必须用引号包裹,写成print(你好!)会直接语法报错,这个基础点也是送分题里翻车率最高的。
二维列表的考法更有意思。题库里要求“存储一个 3*3 的表格数据格式正确的是”,答案区给出的是一串类似[1,2,3][4,5,6][7,8,9]的写法,而提取“第二行第三列的值”答案是lst[2][3]。这里有个明显的坑:Python 的下标从 0 开始,lst[2][3]实际访问的是第三行第四列。如果你真想取第二行第三列,应该写lst[1][2]。出题人用lst[2][3]作为标准答案,至少说明考核点是“二维列表的行列下标访问方式”,而不是具体数值。建议你在写代码时养成统一下标的习惯,否则换个题目就可能踩中行列偏移的坑。
lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] print(lst[1][2]) # 第二行第三列,输出 6对应的参数说明很简单:第一个下标是行号,第二个是列号,都是从 0 开始计数。这道题如果只背答案,你就错过了理解索引机制的机会,而索引机制正是后面递归和二分查找的基础。另外题库里那道“Python 二维列表的索引值是从几开始的”,答案就是 0,与这里的判断完全一致。顺带提一句,原题里有一问“二维列表必须通过行下标和列下标访问”被判为错误,这个说法本身有歧义,我猜出题人想表达的是“不能只用单个下标”,但在二维列表里访问元素时,行下标和列下标是同时参与的,唯一要小心的是边界从 0 开始。
2.2 递归与递推:出口、关系式与求和问题的递归改写
递归是整套题库里概念密度最高的部分,出题人反复用同一个函数f(n)=f(n-1)+n(n>1)换着角度考。第一问问递归出口,标准答案是f(1)=1;第二问问递归关系式,答案里有f(0)=1这个选项;第三问给f(1)=0,让你判断递归体是f(n)=f(n-1)+n。把这些题拼在一起,你会发现出题人其实在反复强调两件事:递归必须有一个明确的终止条件,以及递归体必须能把大问题逐步缩小。如果你只背“出口是 f(1)”这种零散记忆,遇到f(1)=0这种变体就会犹豫。
def f(n): if n <= 1: # 递归出口:n 为 1 时停止 return 1 return f(n - 1) + n # 递归体:把问题缩小到 n-1这个实现里,n <= 1是终止条件,防止无限递归;f(n - 1) + n是递归体,每次调用都把规模减一。如果去掉 if 分支,Python 会一直递归到超出递归深度上限,报RecursionError,这就对应了题库里“递归必须满足递归关系式和递归出口两个条件”的判断题。还有一道求和题:把f=1+1/2+1/3+...+1/n转成递归函数,判断递归出口是f(n)=f(n-1)+1/n。理论上真正的出口应该是f(1)=1,题干那种写法是递归体而不是出口。但原题给的答案是“对”,这就很微妙了,说明出题人把“递推式”和“出口”混在一起表述了。备考时别较真,掌握概念更重要。
与递归经常放在一起考的是递推算法。题库里有道大题专门解释递推的特点:在已知条件和所求问题之间存在某种相互联系的关系,计算时如果能找到前后过程之间的数量关系,就能把复杂运算化为若干步重复的简单运算。这其实就是递归的迭代版本。题库里那道“为什么要使用递推算法”的答案,说的也是“使复杂运算化为若干步重复的简单运算”。这两个概念的关系可以这样理解:递归是自顶向下分解,递推是自底向上累加,实现同一个求和问题,递推只需要一个循环,而递归需要函数栈。如果你带的参赛学生基础较弱,优先教递推,逻辑更直观。
2.3 二分查找与枚举算法:有序前提与三要素
二分查找在题库里只出过一道概念题:要求查找的内容必须有序。这个前提条件来自二分查找的核心操作——每次取中间值比较,然后决定向左还是向右继续查找。如果数据本身无序,中间值的大小比较就没有意义,算法直接失效。这里我要多说一句:很多初学者会忽略“有序”这个前提,直接对未排序列表写二分,结果查不到数据还以为自己边界写错了。实际工程里,我会先用sorted()排序再查,或者在维护数据时就保证插入后的次序。
枚举算法的考点则更偏向概念:枚举对象、枚举范围和判定条件。题库里那道“枚举对象的判定条件由循环结构实现”判断为对,意思是枚举过程通常需要循环来一遍遍尝试所有可能的值,判定条件负责筛出符合要求的解。另一道题问“利用枚举算法思想解决问题时,哪个选择会影响解题思路”,原题的四个备选项是枚举对象、枚举范围、判定条件、对正确解的处理方法。按我的理解,判定条件的设定最能体现解题思路,因为同样的枚举范围,判定条件不同,得到的解就完全不同。比如找水仙花数,枚举范围是 100 到 999,判定条件是“各位数字立方和等于自身”,如果你把判定条件写成“等于两位数”,结果自然为空。
递归、二分、枚举这三类算法在竞赛辅导里属于基本功,就算不参与认证考试,你带学生参加任何编程类赛事都会遇到。题库里还考了欧氏距离公式,两个点 A(1,3) 和 B(2,3) 的距离是 1,因为纵坐标相同,横坐标差 1,代入sqrt((2-1)^2+(3-3)^2)就能得到结果。这类计算题直接套公式,不需要任何优化思维。
3. 机器人软硬件考点:EV3连接、灰度传感器与比例巡线
3.1 LEGO EV3 与 Arduino 的硬件边界:哪些连接支持,哪些不支持
机器人部分的题目有明显的“记忆型”特征,不需要多少推导能力,但需要你把硬件规格记清楚。比如乐高 EV3 支持 USB、蓝牙、Wi-Fi 等连接方式,但不支持红外连接。为什么是这个选项?因为 EV3 的红外传感器是作为传感器接入的,而 EV3 主机本身并不具备红外通信模块,和消费级遥控器用的红外协议不是一回事。如果你之前用过 NXT,也不会支持红外直连,这个硬边界是固定规格。
灰度传感器的组成更是基础中的基础:发光二极管加光敏电阻。发光二极管负责发出光线,光敏电阻负责接收反射光,通过反射光的强弱判断当前灰度值。很多辅导老师在带巡线机器人时,用的就是灰度传感器读回的值去判断“当前是白还是黑”。这里有一个常被忽略的细节:光敏电阻和发光二极管如果封装在一起,传感器的读数会受环境光影响,校准就成了巡线调试里第一个要做的事。
Arduino 相关的两题也属于硬件知识硬记范畴。无源蜂鸣器接在“5V 电源端口与 GND 接地端口”,这句话看着像接线说明,实际上考点是蜂鸣器必须有电源和地才能工作。另一题考tone(pin, frequency, duration)函数的参数含义,题干把duration问成“频率”,答案是错的,duration表示持续时间,单位是毫秒,频率由frequency参数决定。我一般会补充说明:tone()是有源驱动的替代方案,不需要额外放大电路就能让无源蜂鸣器发出特定频率的声音,但一个引脚同一时间只能输出一个频率,多音调时要轮询切换。
3.2 比例巡线与反馈控制:光值差乘以系数到底在调什么
题库里有两道比例巡线的判断题,一道说的是“在巡线中某时刻,机器人最后连续测量的光值差为(5,3,1),下次光值差可能是 5,说明速度调整偏大,可以将光值差变化量乘以系数计入速度调整”判为对;另一道说的是“左白右黑分界比例巡线时,机器人运行至偏白位置,光值差大于零,将光值差乘以系数增加左马达速度,减少右马达速度”判为对。这两道题放在一起,其实是同一个控制思想:用当前偏差来修正速度,而不是等偏差积累大了再纠偏。
我拆一下第二道题。假设左边是白色区域,灰度值大;右边是黑色区域,灰度值小。机器人偏白,说明左侧传感器读到了更大的白色值,右侧传感器读到的黑色值相对小,光值差为正。此时系统应该让机器人向左转回分界线——也就是增加左马达速度、减少右马达速度。用系数乘以光值差,得到的是一个比例控制量。系数太小,机器人的纠偏速度跟不上弯道;系数太大,机器人会在分界线附近左右震荡。这就是为什么我说它是“玄学调参”:不同场地、不同速度、不同传感器高度,系数都要重新试。
这类题目不会让你直接写 PID 控制代码,但你需要理解“偏差—调整量—执行”这条链路。在 NOC 的机器人赛项里,巡线是最常见的任务之一,如果你只带孩子用开关式巡线(光值差的正负直接决定转向),过弯一旦遇到光线不稳定的环境就会疯狂抖动。理解了比例控制,你至少能在现场给队伍解释为什么要把偏差乘以系数,而不是问学生“你程序哪里写错了”。
3.3 图形化编程与文本编程:Scratch 的边界在哪里
题库涉及图形化编程的判断有两道:一是 “Scratch 是图形化编程软件” 判对;二是 “机器人图形化编程环境一般都不支持自定义模块” 判错。Scratch 作为麻省理工开发的图形化语言,确实通过积木拼搭实现编程,但图形化的局限也很明显:自定义模块在 Scratch 里叫“自制积木”,这是支持的,所以第二道判断题的答案是错。另一道选择题问“图形化编程的缺点”,标准答案是“功能没有字符编程全”。这个说法符合绝大多数图形化环境的现状:复杂的文件操作、并发控制、底层库调用,图形化做起来要么不直观,要么根本做不到。
这里我建议带赛队的老师做一个比较:同一道“绘制正五边形”的题,Scratch 用画笔积木推进,Python 用 turtle 库写循环,让学生感受两种方式的差别。对比的关键点不是“哪个更好”,而是“哪种方式更适合当前学段”。小学生用 Scratch 做动画和简单交互非常顺畅,但到了需要维护复杂逻辑的算法题,文本编程的调试手段(断点、单步、日志输出)远胜于图形化。题库里的那几道图形化题目,本质是帮你确认一件事:图形化是启蒙工具,不是终身依赖。判断题里那句“图形化环境不支持自定义模块”判错,也是提醒你别把图形化的能力边界说得太死。
4. 人工智能基础考点:视觉、语音与专家系统的概念边界
4.1 图灵测试与专家系统:容易被刷过的定义题
人工智能基础部分的题目,概念辨析比技术实现更重要。题库里有道判断题提到 1950 年图灵提出的测试机器是否具备人类智能的方法,这就是经典的图灵测试。图灵测试的核心思路是:如果机器能在对话中让人类无法区分它是人还是机器,就说它具备智能。这个概念在 NOC 认证里考得比较浅,你只需要记住年份、提出者和测试形式即可。值得注意的反而是专家系统那道题:四个选项中错误的描述是“专家系统就是专家们联合开发的软件系统”。专家系统的准确定义是基于知识库和推理机来模拟专家决策能力的程序,它不一定由真人专家直接参与开发,更关键的是系统内部要有知识表示和推理规则。如果你只按字面理解“专家+系统”,这道题很容易选错。
另外题库里还有一道“人工智能核心要素包括数据、算法和算力,新一代人工智能核心要素迭代进化为大数据、超级算法和云计算”的判断题,标准答案判对。这道题考的其实是时政概念,而不是技术定义。真正的 AI 技术体系还涉及机器学习、深度学习等,但认证考试的定位是“指导教师应知应会”,所以停留在要素层面就够了。我辅导老师时经常建议:这种题目不用深挖,记准题干表述,考试时原样填回去就行。
4.2 图像识别与语音识别的应用边界:别把语音转文字当图像
图像识别相关的题目有一道很典型:以下场景中没有使用图像识别技术的是“微信语音转文字”。语音转文字属于语音识别技术,输入是声学信号,输出是文本,它不涉及图像处理。而图像识别的定义是让计算机理解图像内容,常见应用包括人脸识别、文字识别、物体检测等。题库里那道“要赋予计算机看文识字的能力,需要经历文字特征提取、文字定位与分割和文字识别”的填空题,标准答案是“文字识别”,也就是 OCR 的三个环节:提取特征、定位分割、识别结果。
自然语言处理部分有一道题问“不属于自然语言理解基础技术的是”,答案是“自动文摘”。自然语言理解的基础技术通常包括分词、词性标注、句法分析、语义角色标注等,而自动文摘属于自然语言生成或信息抽取方向,属于更上层的应用,不算是“基础”。另一道问“自然语言处理技术在生活中的应用”,选项里有机器翻译、智能语音音箱、英语口语机考,答案是“以上都是”。这类题没有技术难度,关键是别漏选。
语音识别和语音合成两题也值得说。一题判断“语音识别是将人类语音中的词汇内容转换为计算机可读的输入”,判对;另一题判断“智能语音技术包括语音识别技术和语音合成技术”,判对。语音合成的方法里还考了“波形拼接法类似于活字印刷技术”,这个类比很有趣:活字印刷是把字模拼成版面,波形拼接是把预录的语音片段拼接成完整句子。理解了这一个类比,你就掌握了语音合成最直观的实现思路。反过来,语音合成中的声学参数生成方法(如 HMM、神经网络)在考题里反而不怎么出现,因为面向教师的认证更关注概念理解而不是底层原理。
图像处理里还有一道色彩模式的题:“又被称为色光减色法的模式是 CMYK 模式”,标准答案判对。严格从光学角度讲,RGB 是加色法,CMYK 是减色法,印刷领域用CMYK。出题人用“色光”这个词可能只是想强调它是一种颜色模式。这里考场上有争议,但按题库答案备考就选对。顺带把“色调在冷暖方面分为暖色调与冷色调,红色为暖色调”判对也收进去,这类美术基础题属于常识判断,不必展开。
4.3 大赛背景常识:主办方、宗旨与报名通道
这套题库里还混着一部分大赛规则题,看似与编程无关,但分值占比不小。NOC 的全称是“全国中小学信息技术创新与实践大赛”,题库里专门有一题问简称是什么,答案就是 NOC 大赛。主办方相关的那道题,答案是“中国人工智能学会”——这个考点属于官方信息,备考时直接背诵即可,没有推导空间。大赛的宗旨是“以赛促学、以赛促用”,公众号和官方通知里反复出现,判断题里直接照抄就对。
报名方式问的是“选手通过何种渠道进行参赛报名”,答案是“大赛官网”。还有一题问“恩欧希教育信息化发明创新奖是 NOC 大赛的最高荣誉”判对。恩欧希奖听起来像人名,实际上是一个专项奖名称,不少老师看到陌生名词就蒙,但只要记住“最高荣誉”这四个字就不会错。作为一名合格的大赛指导教师需要指导哪些内容的题,答案是“以上皆是”——这条不是送分题,它提醒你:指导师的职责不只是辅导编程,还包括赛前训练、规则解读、临场策略、心理辅导等都是工作内容。
5. 避坑笔记:这套题库里最容易翻车的三类题
5.1 递归出口与关系式的答案倒挂:同一个函数,三个结论
现象:题库里同一道f(n)=f(n-1)+n(n>1)被考了三次,一次问递归出口答案是f(1)=1,一次问递归关系式答案是f(0)=1,第三次给f(1)=0问递归体。考生经常背串,导致把出口答成关系式。
原因:题目本身有两种可能的定义域写法。当n>1时,如果出口是f(1)=1,那么f(0)=1只能算是一个递推延伸;但如果出题人把边界设为f(0)=1,那么f(1)=1+1=2,两种情况得到的数列完全不同。这套题库没有统一定义域,答案才会出现“出口和关系式互相对不上”的表象。
解决:备考时只抓住一个判断标准——递归出口必须让递归调用停止,递归关系式必须能由前项推出后项。不管题目怎么改写法,你先问自己:n 小到什么程度就不需要再递归了?那就是出口。至于f(0)=1还是f(1)=1,考试按原题答案来,但理解上不要再混。
5.2 判断题里那些“对一半”的长句:程序能否通过语音变成指令
现象:题库里有一句“程序能通过语音变成可以在计算机上执行的指令”判错,很多老师第一反应是语音编程确实存在,为什么判错?
原因:原句的漏洞在于“程序”这两个字。语音输入只是把语音转成文本,再由编译或解释器把文本转换成可执行指令,实际执行的是文本代码,不是声音本身。平时我们说的“语音编程”省略了中间的识别和转写过程,不能说程序能直接通过语音变成可执行指令。这种题考的是概念的严谨性,而不是现实技术的可行性。
解决:做题时把长句拆成主谓宾。主语是“程序”,谓语是“变成指令”,方式是通过“语音”——立刻抓住荒谬点:变成指令的是转写后的代码,不是程序这个对象。同类题的还有“声音的高度和整体声音的大小有关”判错,声音的高度是音调,由频率决定,大小是响度配音强决定,两者无关。
5.3 二维列表访问下标的行列偏移:答案本身可能带病
现象:题库里的二维列表提取答案是lst[2][3],而题面问的是“第二行第三列”。按 Python 下标从 0 开始的标准,这其实是第三行第四列。
原因:中文表述里“第二行”可能指从 1 计数的行号,也可能指下标为 2 的行。出题人写答案时显然直接用了下标值 2 和 3,没有考虑与中文序数的偏移。
解决:如果你是奔着通过考试去的,按题库给的答案背;但如果你是准备给学生讲清楚,麻烦多讲一句下标偏移。带赛队时自己写代码演示一遍lst[1][2]和lst[2][3]的区别,学生就不会再犯“行列数不清”的毛病。这是整套题库里我唯一不认可的标准答案,建议你用代码验证之后再决定怎么教,别把错误的知识传递下去。
5.4 欧氏距离选择答案与计算结果的信任度:为什么有人选 4 个选项都不对
现象:A(1,3) 和 B(2,3) 的距离计算结果是 1,但题库里这道题的选项没有明确列出 1,考生看到一堆数值就开始猜。
原因:OCR 导入题目时选项被切碎,比如“1、7、9、4”混在一起,或者选项本身被误写。计算题只需要自己演算一遍,算出结果再回头对题目,不要按选项反推。
解决:用math.sqrt((x2-x1)**2 + (y2-y1)**2)手算一遍,直接得到答案。如果选项里没有 1,说明这个题目的选项排版有问题,跳过即可,不要为了凑选项改公式。这类经验在考试现场很管用:计算题是唯一能完全脱离题库记忆的题型,遇到就先算。
5.5 年份和纪年法的常识盲点:格里高利历元年不是 0 年
现象:题库里最后一道判断题“格里高利历的元年是 0 年”判错,不少老师平时写代码用时间戳习惯了,对 0 年没概念。
原因:现行公历基于格里高利历,公元纪年从 1 年开始,没有 0 年。西方文化里 1 年之前是公元前 1 年,所以“0 年”这个说法在历法上不成立。计算机的时间戳是从 1970 年开始的,那是信息技术特例,和历法无关。
解决:这种跨学科常识题没有训练技巧,只能靠平时积累。备考时把题库里所有涉及“判断对错”的常识句单独摘出来通读一遍,不用背,混个眼熟即可。
6. 用三遍刷题法把真题吃透:错题归因才是唯一捷径
这套题库唯一的正确用法,不是背答案,而是通过错题归因把知识盲区补上。我习惯把做错的题按四类分别归档,四类复习策略完全不同。整理成表如下:
| 题目类型 | 特征 | 典型题分布 | 复习策略 |
|---|---|---|---|
| 概念边界型 | 选项里出现绝对化表述 | 递归定义、专家系统、语音转文字 | 回到教材找原文表述,把“必须是”“一定”这类关键词圈出来 |
| 记忆常识型 | 大赛背景、硬件规格、年份 | 主办方、EV3 连接、图灵测试 | 考前一周集中背,做眼熟即可 |
| 计算推导型 | 能通过代码或公式算出 | 欧氏距离、阶乘循环次数 | 把公式和代码手写一遍,考试时直接演算 |
| 表述陷阱型 | 题干有歧义或答案存疑 | 二维列表下标、递归出口 | 做对后打上“存疑标记”,考试按题库答案,教学按正确逻辑 |
我第一次带考师资团队时,两位老师拿着题目直接背答案,结果模拟考试里换了个序号就出错。后来让他们把错题按上述四类归因,每一类只留 5 道代表性题目,考前只复习这些关键题,通过率明显提升。从那以后我每次备考都和搭档强制走一遍这个流程:第一遍按模块做题,第二遍只看错题并写出错误原因,第三遍只看归因表不再看题目本身。
这套方法不需要重新买复习资料,题库就是唯一的复习材料。NOC 认证不只考你会不会写代码,更考你能不能把这些概念讲得清楚明白,毕竟你的学生正在用这套体系学编程。还剩下最后一件事——把题库里那些存疑的答案标注出来,等你真正走进考场时,心里就有底了。希望帮到你。
本文还有配套的精品资源,点击获取