2021年信息学奥赛初赛模拟题_第1页
2021年信息学奥赛初赛模拟题_第2页
2021年信息学奥赛初赛模拟题_第3页
2021年信息学奥赛初赛模拟题_第4页
2021年信息学奥赛初赛模拟题_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

2021年信息学奥赛初赛模拟题

1.娅慧和海婷编写了一段脚本,打算用于观察Scratch中的克隆体功能。点击

小绿旗运行这段脚本,屏幕上会出现一行克隆体。这些克隆体说出的数值从左往右

依次为()。

A.00000

B.246810(正确答案)

C.13579

D.12345

答案解析:解析:这是一道考察克隆、循环结构和变量综合运用的题目。根

据脚本,我们可以知道,当小绿旗被点击后,“报数”变量为0,角色本体会移到

舞台左侧,将“报数”变量增加2,接着执行克隆脚本。新克隆出来的克隆体会说

“报数”变量,此时的“报数”变量是0+2=2,所以第一个克隆体会说2。紧接

着,程序会进行第二轮循环,继续将“报数”变量增加2,并克隆出新的克隆体,

此时的“报数”变量是2+2=4,所以第二个克隆体会说4。剩余三轮循环,克隆体

从左到右依次会报出“6、8、10”。因此,答案为B。

4.点击小绿旗,运行下图脚本,如果角色的坐标为(45,60),那么角色会说

A.200

B.100

C.700(正确答案)

D.-200

答案解析:解析:这是一道考察函数、变量和选择结构综合运用的题目。

根据脚本运行,当小绿旗被点击时,“零花钱”变量为50,接着程序会开始调用

我们自制的“计算”函数开始计算最终要说的“零花钱”变量。根据题干我们可以

知道,X坐标为45,所以X坐标除以2的余数是1【(45+2)=22.....1],满

足双分支条件语句的条件,所以执行那么里的脚本,将“零花钱”变量增加50,

“零花钱”变量变为100。紧接着继续执行单分支语句判断,Y坐标为60,所以Y

坐标Y坐标=3600,大于800,满足单分支条件语句的条件,所以执行那么里的脚

本,将'‘零花钱"变量设为0-零花钱,“零花钱”变量变为-100。因此,答案为

Co

娅慧和海婷为冰淇淋角色编写了图1中的脚本,如果想要得到图2的效果,那

么冰淇淋造型的中心点应该大致位于()。

C(正确答案)

娅慧和海婷在学校里学习了冒泡排序法,打算对8,3,7,2,9进行升序排列

(从小到大排列),经过第一轮排序后,数字排列结果应该是()。

A.3,7,2,8,9(正确答案)

B.3,7,8,2,9

C.2,3,7,8,9

D.2,3,8,7,9

答案解析:解析:这是一道考察冒泡排序算法的题目。冒泡排序法会依次

比较两个相邻的数字,如果它们不符合排序要求,那么交换它们的位置。这样的比

较工作会重复循环,直到所有数字都符合排序要求,程序才会停止。根据题目要

求,我们需要让“8,3,7,2,9”这组数字从小到大进行排序,使用冒泡排序法

进行第一轮比较时,程序会先比较这组数字的第一个数和第二个数,也就是“8”

和“3”,“3”比“8”小,所以程序会交换它们俩的位置,把小一些的“3”放到

“8”的前面。接着继续用“8”和下一位数比较,直到一轮比完,数字的排列结果

为“3,7,2,8,9”。因此,答案为Ao

在盒子角色中,有下图所示脚本,点击小绿旗运行程序后,关于运行结果描述

正确的是()。

A.数字列表中会一直添加1到10之间的随机数字,并说“内存已满”2秒

B.数字列表中会一直添加1到10之间的随机数字,不会说任何内容(正确答

案)

C.数字列表中会添加6个1到10之间的随机数字,并说“内存已满”2秒

D.数字列表中会添加6个1到10之间的随机数字,不会说任何内容

答案解析:解析:这是一道综合考察列表和单分支语句以及阅读预测脚本

效果的题目。图中脚本的作用是每隔1秒就将一个1到10之间的随机数字添加到

一个叫做【数字】的列表中,添加的同时还会判断列表中的项目数,左边脚本的判

断为如果数字列表的项目数大于5,那么停止该角色的其他脚本,也就是停止右边

的脚本,因此,如果数字列表的项目数大于5,右边的脚本并不会运行,那么选项

A、C排除,数字列表项目数大于5时,虽然停止了右边的脚本,不够将数字加入

列表的程序并不会停止,所以,数字列表中会一直添加1到10之间的随机数字。

因此答案选B。

8.下方流程图背后的算法思路来源于我国古代数学名著《九章算术》中的“更

相减损术”。按照下方流程图,如果输入的a是22,b是28,那么最终输出的a

B.1

C.-1

D.2(正确答案)

答案解析:解析:这是一道考察流程图应用的题目。“更相减损术”是出

自《九章算术》的一种求最大公约数的算法,适用于任何需要求最大公约数的场

合。除了“更相减损术”以外,质因数分解法、短除法和辗转相除法也可以用于求

出最大公约数。如果我们输入的a,b分别是22和28,根据流程图,22不等于28

且不大于28,所以b会变成b-a,也就是28-22=6。紧接着进入第二次循环,此时

a为22,b为6,因为22不等于6,但是大于6,所以a会变成a-b,也就是22-

6=16。紧接着进入第三次循环,此时a为16,b为6,16不等6,但是大于6,所

以a会变成a-b,也就是16-6=4。接下来进入第四次循环,此时a为4,b为6,4

不等于6且不大于6,所以b会变成b-a,也就是6-4=2。接着进入第五次循环,

此时a为4,b为2,4不等于2,但是大于2,所以a会变成a-b,也就是4-2=2。

进入第六次循环,此时a为2,b也为2,两者相等,所以输出a,也就是2。因

此,答案为Do

9.运行下图脚本后,角色会说出列表中的()。

A.12

B.5

C.3(正确答案)

D.7

答案解析:解析:这是一道考察列表、变量等知识点综合应用的题目。根

据脚本,我们可以知道当小绿旗被点击后,序号为1,学号列表的项目数为7,因为

1<7,所以程序会开始判断学号列表的第一项是否为5,列表第一项内容是12,不

符合条件,所以程序会将序号增加1,接着进入第二次循环。第二次循环时,序号

为2,程序会判断列表的第二项是否为5,列表第二项为33,不符合条件,所以程

序会将序号增加1,进入第三次循环。第三次循环时,序号为3,程序会判断列表

的第三项是否为5,列表的第三项为5,满足条件,所以程序会说此时的“序号”

变量,也就是说3,说完后程序停止运行。因此,答案为C。

10.想要利用Scratch中的画笔工具绘制出如图所示的图案,以下关于绘制图

形分解,用编程实现最容易的是(

A.1个正方形和2条线段

B.4个正方形(正确答案)

C.2个长方形和1条线

D.2个长方形和1个正方形

答案解析:解析:这是一道结合画笔模块考察考生拆解问题的能力。这道

题目的问题是如何用编程绘制出图示的图案,那么,就需要从编程的角度分析这个

问题,仔细观察图案,我们可以发现,它是由四个大小相同的正方形组成的,而绘

制一个小正方形需要重复执行4次移动一定的步数、旋转90度的脚本,由于绘制

每一个小正方形的脚本都是一样的,想要绘制出图示的图案,那么在绘制了一个小

正方形后,只需要旋转90度后继续绘制小正方形的操作,也就是说,还需要将绘

制小正方形和旋转90度的脚本重复执行4次就可以了;选项A的拆解虽然也可以

绘制出图案,不过,按照这样拆解的方法绘制图案时,在绘制出一个正方形后,接

着绘制线段时,还需要确定开始绘制的位置,所以比较复杂;选项CD中描述的拆

解方法,除了确定绘制位置外,长方形的绘制也会比正方形的绘制更加复杂。因此

答案选B。

11.使用插入排序算法对下列数据从小到大排序,比较次数最少的是()。

A.90,30,40,80,70

B.20,30,50,40,80(正确答案)

C.30,40,20,70,50

D.90,70,80,50,20

答案解析:解析:插入排序其实有点像现实生活中的小朋友排队列。要求从

低到高排队,我们会以第一个小朋友为基准,让第二个小朋友和第一个比较,如果

第二个小朋友比较高,那么将这个小朋友插入到第一个小朋友的前面,如果比较

矮,那么就插入到第一个小朋友的后面。第三个小朋友需要和前两个小朋友比较身

高,并插入到合适位置。插入排序适用于已经有部分数据已经排好,并且排好的

部分越多越好的情况。这道题要求从小到大排序,B选项排好的数字最多,因此答

案选B。

12.使用二分查找法在有序序列9,10,20,27,39,46,49,50,67中查找

元素27,需要比较()。

A.2次

B.3次

C.4次(正确答案)

D.5次

答案解析:解析:二分查找需要的数据必须是有序的,如题目中的9,10,

20,27,39,46,49,50,67o使用二分法找数字,可以先找这组数字的中间数

值,然后将它和目标数值比对。如果大于目标数值,接下来我们可以继续找到中间

数值之前所有数字的中间值,用新的中间值和目标数字继续比较,直到找到目标数

字。使用这个方法想在9,10,20,27,39,46,49,50,67中找到27,需要比

较4次。因此答案选C。

点击小绿旗,运行下图脚本,角色会说()。

A.2(正确答案)

B.3

C.4

D.5

答案解析:解析:这是一道考察递归调用和函数等知识综合运用的题目。

递归调用是一种特殊的嵌套调用,是某个函数调用自己或者是调用其他函数后再次

调用自己,只要函数之间互相调用能产生循环的则一定是递归调用。图中的这段脚

本在定义“运算数字”函数时直接调用了自己刚定义好的“运算数字”函数,具备

递归调用的特征,属于递归调用。根据脚本,我们可以知道,当小绿旗被点击后,

得分变量初始为0,在定义“运算数字”函数的过程中,因为我们输入的数字是3,

既不等于1也不等于2,所以跳出如果那么这一条件分支语句,进行“数字7”的

函数运算,此时运算的内容是“数字7”也就是37=2,满足条件,所以得分变量

会增加1,变成0+1=1。完成“数字7”的函数运算后,程序开始进入“数字-2”

的函数运算,此时运算的内容是“数字-2”也就是3-2=1,满足条件,得分增加

1,编程1+1=2。完成“运算3”这个函数的计算后,程序会说此时的得分,也就是

说2。因此,答案为Ao

利用Scratch编程可以模拟停车场的停车统计系统,脚本如下图所示,点击小

绿旗运行脚本,如果回答依次为“别克”“大众”“奥迪”以及空,那么系统依次

A.别克已完成停车大众已完成停车奥迪已完成停车已完成停车车位还剩

6个

B.别克已完成停车大众已完成停车奥迪已完成停车车位还剩7个(正确

答案)

C.别克已完成停车大众已完成停车奥迪已完成停车车位还剩6个

D.别克已完成停车大众已完成停车奥迪已完成停车已完成停车

答案解析:解析:这是一道综合考察考生编程技术能力的题目,要求考生

能够阅读、理解复杂程序,并且能够对程序运行结果进行预测。根据题目描述,点

击小绿旗运行程序,变量i的初始值为10,系统询问后,前三次回答分别为“别

克”“大众”“奥迪”,此时条件判断“回答”不为空成立,系统会朗读“别

克”“大众”“奥迪”已完成停车,i会从10减到7。第四次回答为空,脚本会

执行否则里面的程序。此时i的值为上一轮的值,也就是7,因此系统会说并朗读

“车位还剩7个”,然后停止全部脚本。综上所述,系统会依次朗读“别克已完成

停车”“大众已完成停车”“奥迪已完成停车”“车位还剩7个”。因此答案选

Bo

图1中的脚本用于数字加密,图2列表中的各项依次为数字0~9。点击绿旗

后,若回答的内容为“56789!”,则角色说出的内容为()。

♦长*10■

A.12345

B.12345!

C.78901

D.78901!(正确答案)

答案解析:解析:这道题目考察的是数字加密。程序会将输入的明文内容拆

分成单个的字符,再逐一进行判断。从明文中的第一个字符开始,如果该字符存在

于数字列表中,那么程序会记录下列表中【该字符的项目号加2】之后的项目号。

由于列表中一共只存储了10个数据,所以【该字符的项目号加2】还不能大于

10,如果大于10,那么记录的项目号要再减去10,从列表的第一项重新算起。确

保了程序记录的项目号不会大于10后,我们就可以将这个记录的项目号上的内容

获取出来,此时我们也就获取到了明文中第一个字符的加密状态。继续使用此方法

就可以获取到密文中其他加密文字,通过连接积木块就能实现密文连接,生成密文

内容。而不存在于列表中的字符不需要生成加密内容,直接和密文连接就好。题目

给出的“56789!”中,前三个字符对应到列表中后移两位后的内容就是“789”;

而“8”对应的项目号为9,我们要记录的项目号应该是“9+270”,也就

是”1“,项目号1所对应的内容为“0",同理可以求出“9”对应的内容应该为

“1”。“!”不存在于数字表中,所以直接和其他加密内容连接就好。因此答案

为“78901!”。这道题选Do

1.某市医院打算做一个“病患健康分析系统”,并对这个系统进行需求调研,

以下需求合理的是()。

A.医院院长可以查看医院所有病患的健康报告(正确答案)

B.病患可以查看自己以及其他人的健康报告

C.医生可以查看自己病患的健康报告(正确答案)

D.病患可以查看自己的健康报告(正确答案)

答案解析:解析:这是一道考察需求分析的题目。利用编程编写程序时,

除了实现必要的功能外,还需要从用户需求出发进行需求分析。题中所述的“病患

健康分析系统”是立足于更好的了解病患的健康状况,医院院长和医生具有了解自

己辖区病患情况的权力,那么选项AC需求合理,作为健康报告的所有人,病患可

以查看自己的健康报告,但是并没有权力查看其他人的健康报告,因此选项B需求

不合理,选项D需求合理。因此答案选ACD。

2.使用选择排序法对47,89,10,77,50,29这6个数字进行降序排列,会

出现在某一趟排序结果中的有()。

A.89,47,10,77,50,29(正确答案)

B.89,77,47,10,50,29

C.89,77,10,47,50,29(正确答案)

D.89,77,50,47,10,29(正确答案)

答案解析:解析:这是一道考察选择排序算法的题目。选择排序法是在要

排序的一组数中,选出最小(或最大)的数与第一个位置的数交换;在剩下的数当

中找最小的数与第二个位置的数交换,如此循环,直到全部数据元素排完为止。根

据题目描述,我们知道需要对47,89,10,77,50,29降序排列,也就是从大到

小进行排列。利用选择排序法,我们可以先找到最大的数字89,将它与第一个数

字交换,此时为89,47,10,77,50,29;接着找到第二个最大的数字77,将它

与第二个数字交换,此时为89,77,10,47,50,29;然后找到第三个最大的数

字50,将它与第三个数字进行交换,此时为89,77,50,47,10,29;接着找到

第四个最大数字47,此时不需要交换;继续找到第五个最大数字29,将它和第五

个数字进行交换,此时为89,77,50,47,29,10,排序完成。综上所述,答案

选ACD。

3.在Scratch某个作品中,舞台上有小女孩、橡皮擦、笔记本和画笔4个角

色,每个角色中都有对应的脚本(如图所示)。点击小绿旗运行脚本,以下关于舞

台上的作品效果描述不正确的是()。

小女

孩:

橡皮擦:

笔记本:画笔:

A.橡皮擦、笔记本、画笔同时说出各自的内容,接着小女孩会说“总价格为

3元”2秒(正确答案)

B.橡皮擦、笔记本、画笔同时说出各自的内容,接着小女孩会说“总价格为

12元”2秒

C.橡皮擦、笔记本、画笔以2秒为间隔先后说出各自的内容,接着小女孩会

说“总价格为12元”2秒(正确答案)

D.橡皮擦、笔记本、画笔以2秒为间隔先后说出各自的内容,接着小女孩会

说“总价格为3元”2秒(正确答案)

答案解析:解析:这是一道综合考察广播和变量的题目。【广播消息并等

待】积木与【广播消息】积木的区别在于,【广播消息并等待】积木在消息发送完

成后,会等到所有接收消息下方的脚本执行完成后才继续向下执行。让我们先来阅

读一下脚本,点击小绿旗后,变量总价格的初始值为0,接着会广播【报价格】的

消息并等待,此时,小女孩的脚本并不会向下执行,而是先执行接收消息的脚本,

橡皮擦、笔记本、画笔接收的都是报价格的消息,因此,会在接收到消息后,同说

出对应的内容,并将变量总价格增加一定的数值,也就是0+2+7+3=12,此时变量

总价格为12,接着小女孩会说“总价格为12元”。那么只有选项B描述正确,题

目要求选择不正确的,因此,答案选ACD。

4.为了方便统计本班同学的体检数据,小兰制作了一个简易的数据系统。班级

同学的体侧数据如下图列表所示。点击小绿旗,运行小码君编写的程序,角色会说

的内容是()。

A.赵六身高:1.85体重:82(正确答案)

B.李四身高:1.56体重:60

C.王五身高:1.62体重:55

D.张三身高:1.75体重:70(正确答案)

答案解析:解析:这是一道考察列表变量等知识点综合运用的题目。根据

脚本可知,当小绿旗被点击后,i变量数值为1,程序会开始判断性别列表的第一

项是否为男,性别列表的第一项是男生,所以程序会将身高变量设为身高:和身高

列表的第一项数据“1.75”,将体重变量设为体重:和体重列表的第一项:

“70”,接着说出姓名列表的第一项:张三身高:1.75体重:70,也就是

选项D;性别列表的第四项也是男生,所以程序会将身高变量设为身高:和身高列

表的第四项数据“1.85”,将体重变量设为体重:和体重列表的第四项:“82”,

接着说出姓名列表的第四项:赵六身高:1.85体重:82,也就是选项A。

因此,答案为ADo

娅慧和海婷新学习了自制积木,觉得非常方便。于是在自己的作品里自定义了

一个''离谁更远?”的函数,用于比较角色中心点和XY这两条坐标轴的距离大

小。点击小绿旗,执行下图脚本后,下列选项描述正确的是()。

A.当角色的坐标为(50,-30)时,说“我距离y轴更远,差值为20”(正

确答案)

B.当角色的坐标为(10,20)时,说“我距离y轴更远,差值为10”

C.当角色的坐标为(40,0)时,说“我距离X轴更远,差值为40”

D.当角色的坐标为(-20,-30)时,

温馨提示

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

评论

0/150

提交评论