蓝桥杯2020年省模拟选拔
高级组试题讲解
一 单选题
第1题
解题思路:
1. 计算顺序:1-10随机数>*3>-4
2. 取值范围:1-10>3-30>-1 - 26
3. 答案:D 29
第2题
解题思路:
1. block1-2执行结果:坐标(100,0),方向(90)
2. 循环模块执行结果:走出边长为10的正方形,回到坐标(100,0),方向(90)
3. block4-5执行结果:面向正上方,后退100步,即移动到坐标(100,-100),方向(0)
4. 答案:B x:100 y:-100
第3题
解题思路:
1. 选项A:画笔粗细设定为5,与图形明显不符,迅速排除。
2. 选项B:正多边形内角和=180*(边数-2),6边形内角和=720,每个内角=720/6=120,每次左转度数=180-120=60,排除。
3. 选项C:与选型B的解题思路一致,每次左转的度数=180-180*(8-2)/8=45,排除。
4. 选项D:ABC均排除,可以快速选择D。验证:该图形由8个正5边形组成,且在360度内平均分布,所以每次绘制完5边形后选择的度数=360/8=45,符合;绘制正5边形时每次旋转的度数为180-180*(5-2)/5=72,符合。
重点:正多边形的内角和=180*(边数-2),每个内角度数=内角和/边数
第4题
解题思路:
所以应该选择A
重点:SCRATCH的方向中,注意0点方向是正上方
第5题
解题思路:
没有学过桶排序的同学也不要灰心,通过题意可以分析出来。可以看到,10个数通过10个桶来排序,第一个列表是无序数组,第二个列表用来记录排序过程的桶,第三个列表是排序后的数组。关键是分辨出第二个列表即桶中记录的结果是什么。按照题目“例如3号桶中有一个标志表示3出现了一次,5号桶中有两个标志表示5出现了两次。”,所以每个桶记录的是其对应的数字出现了几次。我们来依次验证:1号桶记录的是1出现的次数,因为没有1,所以记录的值应该是0;2号桶记录的是2出现的次数,因为没有2,所以记录的值也是0;3号桶记录的是3出现的次数,可以看到有3个3,所以记录的值应该是3。以此类推,可以得出应该选择B。
有兴趣的同学可以参考下面的scratch程序,看看这个排序的写法是怎么样的。
桶排序的scratch实现
二 编程
第1题
解题思路:
1、程序初始化:
2、画出正6边形:转向角度=180-内角度数=180-120=60
3、画出题目要求图形:由6个正6边形组成,且在360度范围内平均分布,旋转角度=360/6=60
4、完整程序
5、重点:类似画图形题目的步骤都是先分析出重复的图形是什么,先画出原始图形再画出组合图形。建议将原始图形封装为自定义积木,程序更加灵活简洁。
第2题
解题思路:
1.确定角色:Cat2、Mouse1。Mouse1有2种造型,分别对应2种颜色。
2、确定变量:2个变量,分别记录得分和Mouse1碰到舞台边缘的次数。
3、确定广播的消息:抓到老鼠和游戏结束。
4、Cat2的代码:Cat2只负责移动,当收到抓到老鼠的消息时变大20,收到游戏结束消息时停止全部脚本。
5、Mouse1的代码:Mouse1的代码相对复杂,它需要通过得分判断造型和程序终止,通过检测碰到Cat2增加得分,通过碰到边缘增加次数。
注意:示例的程序中,为了调试更方便有些模块的参数与题目要求不符,理解后请自行修改。
第3题
解题思路:
1、确定角色和背景:角色Jaime和Kai,背景Chalkboard。
2、确定变量:4个,分别记录Jaime的数学、语文成绩和Kai的数学、语文成绩
3、由题意可知,先获得Jamie的成绩,再获得Kai的成绩。所以我们先编写Jamie的代码:
4、获取Kai的成绩:
5、根据成绩,双方说出指定的内容,Jaime的代码增加:
6、Kai的代码增加:
7、注意:其实判断的方法是一样的,双方根据结果说出不同的内容,5/6部分的代码可以继续优化。
8、实现题目中的最后一个要求,角色被点击时说出自己的总成绩和平均分:
第4题
解题思路:
1、确定变量:年、月、日、闰年标记、天数(输入的日期是这一年的第几天)、i(计算天数时使用)
2、确定列表:每月天数(如果要计算某一天是这一年的第几天,要获得该年每月的天数)
3、初始化:
4、获得日期:
5、判断是否闰年:
6、根据是否闰年定义每月的天数:也可以在初始化时按照正常年份的天数先加入,如果是闰年将列表的第2项替换为29。
7、计算天数:
8、完整程序:
更多试题讲解,敬请期待~
END