蓝桥杯Scratch省赛卷

蓝桥杯Scratch省赛卷
蓝桥杯Scratch省赛卷

单选题(每题20分)

第一题(难度系数1)

小猫迷路了,它必须沿着地面的标记才能走出迷宫。下面哪段程序能帮助它呢?

A B

C D

如上图所示,“气球”角色有三种造型,运行如下程序,哪种颜色气球不会出现?

A B

C D 都有可能会出现

小巫师挥舞着手里的魔棒,当他念了下面哪段程序咒语后能让自己从舞台上消失呢?

A B

C D

第四题(难度系数4)

角色小猫在运行上图程序5秒后,舞台上能看到几只小猫?

A 1

B 2

C 3

D 4

你制作了一款天气预报软件,能够根据天气情况,提示如何安排衣着。

按下空格键,天气角色会随机显示“雪花”或“太阳”的造型。同时,衣着角色会根据天气角色的造型,变换成不同的服装。比如当天气角色是“雪花”造型时,衣着角色就是“帽子”造型;当天气角色是“太阳”造型时,衣着角色就是“短袖”造型。

角色及其造型如下图所示。

天气角色衣着角色

天气角色的程序如下所示。

衣着角色的程序中,有一组是不正确的,请将其挑选出来。

A B

C D

第六题(难度系数5)

执行完上面程序,会得到哪种图形?

第七题(难度系数5)

执行这段程序后,说话的内容是什么?

A3B6C7D8

第八题(难度系数6)

有一棵光滑的葡萄树高18分米,一只蜗牛从底部向上攀,每分钟爬3分米,但每爬一分钟后都要休息一分钟,休息期间又要滑下1分米。

请问下面哪段程序可以计算出蜗牛多少分钟(向上取整)才能爬到树顶?

A B

C D

编程题(每题50分)

第一题(难度系数1)

准备工作:

导入角色库中的两个角色小女孩“Anna”和足球“Ball-Soccer”。

编程实现:

小女孩正在表演用头托住足球。为了把足球一直托在头顶,小女孩需要不停地晃动双手。小女孩还可以跟着鼠标一起移动。

具体要求:

1、程序运行后,小女孩要跟随鼠标一起移动。

2、小女孩可以不停地切换造型(切换造型的间隔时间参考值为 0.2 秒)。

3、无论小女孩是否移动,足球都始终处于小女孩的头顶。不用考虑足球是否遮挡住小女孩的头部,只

要靠着就可以。参考下图所示。

将程序保存到桌面,命名为“1.sb2”。

评判标准:

10 分:程序开始,未移动鼠标时,球在小女孩头上;

30 分:在 10 分的基础上,小女孩在跟随鼠标移动的过程中没有明显卡顿现象,小女孩可以一直切换造型;

50 分:在 30 分的基础上,球始终在小女孩头部,如果存在足球脱离小女孩头顶的情况,只能得 30 分。

第二题(难度系数3)

准备工作:

背景改为白色背景,保留小猫角色,导入角色库中角色螃蟹“Crab”;自行绘制子弹角色,颜色和大小可

自行设定。

编程实现:

一只在舞台左下角的小猫,发射子弹射击一只在舞台顶部的水平移动的螃蟹,击中螃蟹5次后程序结束!

具体要求:

1、程序运行后,小猫一直固定在舞台左下角,螃蟹在舞台上部进行最左->最右->最左的循环移动。

注意:移动速度不要太快。

2、按下空格键,小猫发射一颗子弹,子弹须沿着鼠标方向发射出去,碰到螃蟹或者舞台边缘后消

失。

3、子弹击中螃蟹5次后,小猫说:“我赢啦”2 秒钟,游戏结束。要求击中的次数在舞台的左上角实时显

示。

将程序保存到桌面,命名为“2.sb2”。

评判标准:

10 分:程序运行后,有一只螃蟹在舞台顶部水平左右移动。

30 分:在 10 分标准基础上,按下空格键,小猫会发射一颗面向鼠标的子弹,且子弹碰到螃蟹或者边缘能够消失。

50 分:在 30 分标准基础上,子弹击中螃蟹 5 次后小猫说“我赢啦!”2 秒钟,之后游戏结束。

第三题(难度系数4)

编程实现:

你要参加运动会,每天都刻苦练习游泳,并给自己的游泳时间做了精确的计时(本题中的计时都按24小时

制计算)。你只要说出自己从a时b分一直游泳到当天的c时d分,你的小鱼教练就能计算出你这天一共游了多少时

1、程序开始运行时,小鱼教练询问游泳开始时间(分别询问 24 小时制的时和分)和结束时间(分别询问

24 小时制的时和分)。

2、小鱼教练计算并说出游了多长时间。但如果你输入的结束时间早于开始时间,小鱼教练就会说“输入

错误!结束时间早于开始时间”。程序结束。

将程序保存到桌面,命名为“3.sb2”。

小鱼教练询问游泳开始时的时和分

小鱼教练询问游泳结束时的时和分

说出计算结果如果你输入的时间错误

评判标准:

10 分:程序运行后,能够询问开始时间和结束时间(时和分);

40 分:在 10 分的基础上,能够正确计算出游泳的时间;

测试两种情况:

1)结束时间的分大于开始时间的分

2)结束时间的分小于开始时间的分

50 分:在 40 分的基础上,如果输入结束时间早于开始时间,能够提示“输入错误,结束时间早于开始时间”,需要多次以

不同情况输入来验证。

第四题(难度系数5)

编程实现:

以坐标(0,0)点为中心绘制一把扇子:扇面和扇把都是三分之一圆,扇面的半径为100左右,扇把的半径

为20左右。

具体要求:

1、每次点击绿旗后,舞台背景为白色,舞台上不显示任何内容。然后连贯地画出扇子图案,中间不可停

顿;

2、画出的扇子颜色为黑色,画笔粗细为1,扇面和扇把的张角都为三分之一圆(120 度),扇面的半径

为100左右,扇把的半径为20左右;

3、坐标(0,0)点是构成扇子的这些线段的相交点。

将程序保存到桌面,命名为“4.sb2”。

评判标准:

10 分:设置背景为白色,每次运行程序都会清空屏幕。

30 分:在 10 分标准基础上,能够连贯地画出扇面;但是:颜色不是黑色,或者扇面、扇把的长度明显不合乎要求,或者扇

子的张角明显不是120度。

50 分:完全符合题目要求。

第五题(难度系数5)

编程实现:

将舞台背景改为“blue-sky”背景,在舞台上设置1个小车“Car-Bug”角色,并保留默认的小猫角色。

小车从舞台左侧向右行驶。当小车快要碰到小猫时,小车能自动停止移动,而小猫被吓到了。

具体要求:

1、每次点击绿旗后,舞台背景和小车角色的初始位置都要如下图所示,小猫角色的 x 坐标值为从100到200 范围内的一个随机数值,y坐标参考图中位置来大致设置;

2、小车开始自动向右行驶。小猫的位置则始终保持不动;

3、小车在行驶到车头距离小猫一个车身范围以内时,小车能自动停止。视觉观察时,小车不能碰到小猫,两者之间留有一段距离。如下图所示;

4、在小车停下后,小猫说“哇!!!”2秒钟,程序结束。

将程序保存到桌面,命名为“5.sb2”。

评判标准:

10 分:每一次点击绿旗后,小车在舞台左边,而小猫的位置则是随机的(需要多次点击绿旗来验证随机位置);

40 分:在 10 分的基础上,小车在行驶到距离小猫一个车身范围内停止。但是,以下两种情况均不符合要求:

1)小车碰到小猫,如下图所示。

2)小车停下时,车头距离小猫的距离明显大于一个车身宽度,或者不论小猫的位置如何变化,车停下的位置都相同(即小车停下的位置并没有根据小猫的位置随机变化而变化),如下图所示。

50 分:完全符合题意,即在 40 分的基础上,实现了小车停下后,小猫说“哇!!!”2 秒钟。

第六题(难度系数5)

编程实现:

老师给小猫出了一道题:在列表1中生成5个在1~99范围内的随机整数,然后按照从大到小的顺序将它

们依次移到列表2中。

例如:在列表1中随机生成的整数依次是“12,3,1,13,17”,在处理之后列表2中的整数依次是“17,13,12,3,1”。

图-1图-2

具体要求:

1、每次点击绿旗后,在屏幕中都显示如图-1 所示的列表 1 和列表 2,且在列表 1 中随机生成5个在1~99 范围内的随机整数,而列表2中内容为空。然后小猫说“5秒钟后开始处理”,并等待5秒钟。

2、处理数据时,每间隔 1 秒钟,都将列表1中当前最大的一个数字移动到列表2中,注意:是移动,不

3、当处理到列表 1 为空后,列表 2 中的数据应从大到小排列,如图-2 所示,然后小猫说“处理完啦。”2秒钟,然后程序结束。

将程序保存到桌面,命名为“6.sb2”。

评判标准:

10 分:点击绿旗后,在列表 1 中正确生成了 5 个随机的整数(裁判可多次点击绿旗来验证是否随机)。且小猫说“5 秒钟后

开始处理”,并等待5秒钟;

30 分:在 10 分标准的基础上,开始处理后,每 1 秒钟都将列表 1 中当前最大的数字移动到列表 2 中,但不是每次都移动最

大数字或者移动到列表2中后顺序不是从大到小,或者处理完成后小猫没有说“处理完啦。”2秒钟。

50 分:完全符合题意。

第七题(难度系数6)

准备工作:

将舞台背景设置为“spotlight-stage”,添加一个“Bellerina”角色、两个“Drum1”角色和两个“Drum2”

角色,并按照图7-1的位置摆放。角色“Bellerina”的造型和颜色的设置须如图7-1所示,五个造型的裙子颜色顺序为:白、红、蓝、绿、黄;四个鼓的颜色分别设置为:红、蓝、绿、黄。

图7-1

编程实现:

舞台中央的小女孩会随机变换造型及衣服颜色4次,游戏玩家要记住衣服颜色出现顺序,并按顺序敲击相

应颜色的鼓,颜色顺序正确则可得1分,并开始下一轮变换颜色;直到某一轮敲鼓顺序错误则游戏结束,更新最高得分。

图7-2图7-3

图7-4图7-5

图7-6图7-7

图7-8图7-9

具体要求:

1、每次点击绿旗后,舞台左上角的“得分”(显示位置见图-2)都为0;

2、小女孩为造型1(白色裙子);并说“请观察颜色序列!”2 秒钟(图-2);

3、小女孩切换4次造型,每次都是随机切换为造型2到造型5中的一个(这 4 次切换的造型之间允许重

复);而且第一次切换后要说“1”1秒钟,第二次说“2”1秒钟,第三次说“3”1秒钟,第四次说“4”1秒

钟(图-3至图-6);

4、在 4 次造型切换完成后,小女孩切换回造型1(白色裙子),表示一轮切换结束。小女孩说:“请按顺

序点击相应颜色鼓!”(图-7);

5、游戏玩家根据刚刚小女孩 4 次切换造型中衣服颜色的顺序,依次点击(敲击)相应颜色的鼓,在敲击的

第一次鼓后小女孩说“1”,第二次后说“2”,第三次后说“3”,第四次后说“4”;如果玩家敲击的顺序与

衣服颜色切换的顺序相一致,小女孩就说“正确!”2秒钟,且得分加1(图-8),并从步骤2开始下一轮游

戏;如果敲击的顺序错误,小女孩就说:“游戏结束”,并根据当前得分的情况更新舞台右上角的最高得分(显示位置如图-9所示),程序结束。

将程序保存到桌面,命名为“7.sb2”。

评判标准:

10 分:背景、角色和造型的设置符合准备工作中的要求,鼓和小女孩衣服的颜色与题目中图示接近即可得分,只要改变鼓面

颜色即视为改变了鼓的颜色。

20 分:在 10 分基础上,能正确地开始游戏,并且每轮小女孩的造型和衣服颜色都是随机的序列,需要多次点击绿旗来验证

随机性。

30 分:在 20 分基础上,颜色变化结束,切换为白色裙子和造型 1。

60 分:在 30 分基础上,能实现小女孩说出在本轮中敲击鼓的次数,并实现在点击鼓顺序正确时,得分加 1。

70 分:在 60 分基础上,能实现点击鼓的顺序正确时,正确地循环进行下一轮游戏。

80 分:在 70 分基础上,当点击鼓顺序错误,小女孩说“游戏结束”。

100 分:在 80 分基础上,在游戏结束前,可以更新最高得分并结束游戏。

15

蓝桥杯c c 省赛试题及答案解析

2016蓝桥杯c-c++B组省赛试题及解析 第一题 煤球数目 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。

答案:171700 #include<> int main() { int a[101] ={0}; for(int i = 1 ; i < 101 ; i ++) a[i] = a[i-1] + i; int ans = 0; for(int j = 1 ; j < 101 ; j ++) ans += a[j]; printf("%d\n",ans); return 0; }

第二题 生日蜡烛 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。 现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 答案:26 #include<> int main()

{ int start,end; for(start = 1 ; start < 236 ; start ++) { for( end = start ; end < 236 ; end ++ ) { int sum = 0; for(int i = start; i <= end; i ++) sum += i; if( sum == 236) { printf("start : %d end : %d\n",start,end); } } }

(完整版)计算机竞赛蓝桥杯有关知识

1. 入门训练Fibonacci数列 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。 值得注意的是运算符%的左右操作数必须都为int型。 运算符%最基本的应用就是判断奇偶性(a%2),还有就是用在循环链表和循环队列中,用于判断节点的位置。 问题描述:Fibonacci数列的递推公式为:Fn=Fn-1+Fn-2,其中F1=F2=1。当n比较大时,Fn也非常大,现在我们想知道,Fn除以10007的余数是多少。 输入格式:输入包含一个整数n。 输出格式:输出一行,包含一个整数,表示Fn除以10007的余数。 说明:在本题中,答案是要求Fn除以10007的余数,因此我们只要能算出这个余数即可,而不需要先计算出Fn的准确值,再将计算的结果除以10007取余数,直接计算余数往往比先算出原数再取余简单。 #include int main() { int n; scanf("%d",&n); double a[n]; a[0]=0; a[1]=a[2]=1; for(int i=3;i<=n;i++) { a[i]=a[i-1]+a[i-2]; } printf("%d",(int)a[n]%10007); return 0; } #include int main() { unsigned long s=0,f1=1,f2=1,f3=1,n=0; scanf("%d",&n); if(n>2) for(s=3;s<=n;s++) { f3=(f2+f1)%10007; f1=f2; f2=f3; } printf("%d",f3); return 0; } a与b的和除以c的余数(a、b两数除以c在没有余数的情况下除外),等于a,b分别除以c的余数之和(或这个和除以c的余数)。a与b的乘积除以c的余数,等于a,b分别除以c的余数之积(或这个积除以c的余数)。 2.入门训练圆的面积 后缀应该是.c而不是.cpp后果:不准确; const double pi=4*atan(1.0);╳应该去掉const tan(PI/4)=1 PI=4*arctan(1); arctan()在C语言里表示为atan() 即pi=4.0*atan(1.0) 这里保证了精度。 3.入门训练序列求和 Scanf中不能有\n long long类型输出格式%I64d(是I大写i不是1) 4. 入门训练A+B问题 5.基础练习V矩阵乘法——二维数组循环矩阵 memset是计算机中C/C++语言函数。将s所指向的某一块内存中的前n个字节的内容全部设置为ch指定的ASCII值,第一个值为指定的内存地址,块的大小由第三个参数指定,这个函数通

蓝桥杯哦2010第一届大赛试题

第一题,以下函数的功能是将任意整数进行因式分解, 请完成该程序的空缺使函数能够正常运算 void f(int n) { for(int i=2; i1) printf(“%d\n”, n); } 第二题,以下函数的功能是将给定字符串进行倒序输出,请完成该函数空缺部分。 char* p = “abcdef”; char* q = (char*)malloc(strlen(p)+1); for(int i=0, int len=strlen(p); i

第三题,(这题的题目到底是要干啥,本人到现在沿未明了,数学学统计好,但可以确定原题给出的代码就是如此) int f(int m, int n) { int a = 1; int m1 = m; //—–(3)—- a *= m1–; int b = 1; while(n>1) b *= n–; return a / b; } 第四题,任意给出一个四位数, 把它重新组成一个四位的最大数和一个最小数, 算出两者间的差。 例如:3721这个数,可以重组成:7321和1237,相数之差为7321-1237 请完善下面这个函数,以实现此功能 int f(int n) { int N[4]; for(int i=0; i<4; i++) { N[3-i] = n % 10;

蓝桥杯比赛心得

蓝桥杯比赛心得 首先想说的是,这次做的太糟糕了吧。第一是时间没有分配好,第二是太过心急。 做第一题时,很快写出了公式,心想咋出这么简单的题目。本想自己不敲代码了,直接拿笔算算得了。后来发现用笔也不是太容易,就敲了代码,刚开始不知道怎么回事不出结果,后来用了个double 来保存结果,然后就输出结果了。后来查了查才知道之前用了这句 If(i*2.3+j*1.9==82.3)cout<然后Iffabs((i*2.3+j*1.9-82.3)<0.0000001)cout<

迷茫了会,后来就用了四个for循环,将结果用a,b分别表示出来,然后很快结果就出来了,开始会考虑用的double不会有误差,然后还特意将编译出来的结果一个一个的看看,确认是对的,然后就稳稳当当的提交了86!后来和学姐他们讨论的时候才发现自己有个问题忘了考虑了,2/2 *3/3这样的情况是要除去的!!!好吧,就这么错了!很多时候都会觉得自己太粗心大意了,然后就想到了曾经看到的一篇文章,说是所谓的粗心是你对知识的理解不透彻掌握的不扎实。往往以为自己做出来了就完事大吉了,然而最后才发现自己顾此失彼了! 做完分子分母问题当时觉得前面三道题做的必定是对的,然后就又把后面的题目有都看了一遍,同时决定后面的三道答题放弃不做了。接着我看来看7进制问题,发现题目没有看懂。。然后我觉得数字填数挺有意思就看看手写能不能搞定,当时看到了上下两个三角形一共六条边,一共12个数1-12,平均每条线上的值的和为26,然后觉得那两个空就是10或者5,15+11==26,然后在本子上划了划,感觉做不出来,就放那了,其实可以先随便蒙一个的,很大可能就对了呀。。。总之还是没有思路吧。 接着就是随便看其他的题目了瞄到了最后一题,当时感觉是可以做出来的,只是时间会用的比较长。好像是从11点多点开始做的,一直做到1点,太死心塌地了,,,感觉差一点就做出来了吧,后来和老师讨论才发现自己的思路还是错的。。。若是拿最后放弃最后一道题检查一下也不至于搞的这么惨。。。。。 比赛的时候还是有点紧张的吧,,心态调的不是太好,最重要的

第七届蓝桥杯大赛2016年蓝桥杯个人赛 (电子类) 省赛 单片机设计与开发科目

准考证号 工位号 注意:只填写准考证号和工位号,否则试卷作废 密 封 线 ----------------------------------------------------------------------------- 第七届蓝桥杯全国软件和信息技术专业人才大赛个人赛 (电子类)省赛 单片机设计与开发科目 竞赛时间:5小时 题 号 一 二 三 总 分 配 分 10 30 60 100分 得 分 “模拟风扇控制系统”设计任务书 功能简述 “模拟风扇控制系统”能够模拟电风扇工作,通过按键控制风扇的转动速度和定时时间, 数码管实时显示风扇的工作模式,动态倒计时显示剩余的定时时间,系统主要由数码管显示、单片机最小系统、按键输入和电机控制保护电路组成,系统框图如图1所示: 图1. 系统框图 单总线驱动程序、CT107D 单片机考试平台电路原理图以及本题所涉及到的芯片数据手册,可参考计算机上的电子文档。程序流程图及相关工程文件请以考生号命名,并保存在计算机上的考生文件夹中(文件夹名为考生准考证号,文件夹保存在监考员指定位置)。 DS18B20 MCU 按键输入 LED 指示灯 数码管显示 PWM 输出

设计任务及要求 1.工作模式 设备具有“睡眠风”、“自然风”和“常风”三种工作模式可以通过按键切换,通过单片机P34引脚输出脉宽调制信号控制电机运行状态,信号频率为1KHz。 1.1“睡眠风”模式下,对应PWM占空比为20%; 1.2“自然风”模式下,对应PWM占空比为30%; 1.3“常风”模式下,对应PWM占空比为70%; 2.数码管显示 数码管实时显示设备当前工作模式和剩余工作时间(倒计时),如图2所示。 - 1 - 80 0 5 0 工作模式:睡眠风熄灭剩余工作时间:50秒 图2.工作模式和剩余工作时间显示 “睡眠风”状态下,对应数码管显示数值为1,自然风模式下,显示数值为2,常风模式下,显示数值为3。 3.按键控制 使用S4、S5、S6、S7四个按键完成按键控制功能。 2.1 按键S4定义为工作模式切换按键,每次按下S4,设备循环切换三种工作模式。 工作过程如下: 睡眠风自然风常风 2.2 按键S5定义为“定时按键”每次按下S5,定时时间增加1分钟,设备的剩余 工作时间重置为当前定时时间,重新开始倒计时,工作过程如下: 0分钟1分钟2分钟 设备剩余工作时间为0时,停止PWM信号输出。 2.3 按键S6定义为“停止”按键,按下S6按键,立即清零剩余工作时间,PWM 信号停止输出,直到通过S5重新设置定时时间。 2.4 按键S7定义为“室温”按键,按下S7,通过数码管显示当前室温,数码管显 示格式如图3所示,再次按下S7,返回图2所示的工作模式和剩余工作时间

第十一届蓝桥杯大赛软件类省赛第三场 CC++

第十一届蓝桥杯大赛软件类省赛第三场C/C++大学B组 第十一届蓝桥杯大赛软件类省赛第三场 C/C++大学B组 【考生须知】 考试开始后,选手首先下载题目,并使用考场现场公布的解压密码解压试题。 考试时间为4小时。考试期间选手可浏览自己已经提交的答案,被浏览的答案允许拷贝。时间截止后,将无法继续提交或浏览答案。 对同一题目,选手可多次提交答案,以最后一次提交的答案为准。 选手必须通过浏览器方式提交自己的答案。选手在其它位置的作答或其它方式提交的答案无效。 试题包含“结果填空”和“程序设计”两种题型。 结果填空题:要求选手根据题目描述直接填写结果。求解方式不限。不要求源代码。把结果填空的答案直接通过网页提交即可,不要书写多余的内容。 程序设计题:要求选手设计的程序对于给定的输入能给出正确的输出结果。考生的程序只有能运行出正确结果才有机会得分。 注意:在评卷时使用的输入数据与试卷中给出的示例数据可能是不同的。选手的程序必须是通用的,不能只对试卷中给定的数据有效。 对于编程题目,要求选手给出的解答完全符合GNU C/C++标准,不能使用诸如绘图、Win32API、中断调用、硬件操作或与操作系统相关的API。 代码中允许使用STL类库。 注意:main函数结束必须返回0 注意:所有依赖的函数必须明确地在源文件中#include,不能通过工程设置而省略常用头文件。 所有源码必须在同一文件中。调试通过后,拷贝提交。 提交时,注意选择所期望的编译器类型。 第十一届蓝桥杯大赛软件类省赛第三场1

第十一届蓝桥杯大赛软件类省赛第三场C/C++大学B组 试题A:数青蛙 本题总分:5分 【问题描述】 “一只青蛙一张嘴,两只眼睛四条腿。两只青蛙两张嘴,四只眼睛八条腿。三只青蛙三张嘴,六只眼睛十二条腿。……二十只青蛙二十张嘴,四十只眼睛八十条腿。” 请问上面这段文字,如果完全不省略,全部写出来,从1到20只青蛙,总共有多少个汉字。 约定:数字2单独出现读成“两”,在其他数里面读成“二”,例如“十二”。10读作“十”,11读作“十一”,22读作“二十二”。 请只计算汉字的个数,标点符号不计算。 【答案提交】 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。 试题A:数青蛙2

历年蓝桥杯省赛B组真题试题

(1) 煤球数目 有一堆煤球,堆成三角棱锥形。具体:第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形),.... 如果一共有100层,共有多少个煤球?题解:纯粹的数学题而已 int a[101] ={0}; for(int i = 1 ; i < 101 ; i ++) a[i] = a[i-1] + i; int ans = 0; for(int j = 1 ; j < 101 ; j ++) ans += a[j]; printf("%d\n",ans);

(2) 生日蜡烛 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 题解:暴力枚举。 第一重循环枚举刚开始过生日时候的岁数。 第二重循环是枚举现在的岁数 第三重循环就是将刚开始过生日的岁数和现在的岁数加起来。 int start,end; for(start = 1 ; start < 236 ; start ++) { for( end = start ; end < 236 ; end ++ ) { int sum = 0; for(int i = start; i <= end; i ++) sum += i; if( sum == 236) printf("start : %d end : %d\n",start,end); } }

B DEF A + — + —— = 10 C GHI (如果显示有问题,可以参见【图1.jpg】) 这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。 比如: 6+8/3+952/714 就是一种解法, 5+3/1+972/486 是另一种解法。 这个算式一共有多少种解法?//29 题解:DFS+回溯 由于计算机中5/2会等于2,而且如果打算采用精度方面的处理的话,会很麻烦,而且很容易错。 所以,把这些式子全部变成乘法形式就好了。 A*C*GHI+B*GHI+DEF*C=10*C*GHI

第五届蓝桥杯计算比赛省赛真题

标题:武功秘籍 小明到X山洞探险,捡到一本有破损的武功秘籍(2000多页!当然是伪造的)。他注意到:书的第10页和第11页在同一张纸上,但第11页和第12页不在同一张纸上。 小明只想练习该书的第81页到第92页的武功,又不想带着整本书。请问他至少要撕下多少张纸带走? 这是个整数,请通过浏览器提交该数字,不要填写任何多余的内容。 标题:等额本金 小明从银行贷款3万元。约定分24个月,以等额本金方式还款。 这种还款方式就是把贷款额度等分到24个月。每个月除了要还固定的本金外,还要还贷款余额在一个月中产生的利息。 假设月利率是:0.005,即:千分之五。那么, 第一个月,小明要还本金1250, 还要还利息:30000 * 0.005,总计1400.00 第二个月,本金仍然要还1250, 但利息为:(30000-1250) * 0.005 总计1393.75 请问:小明在第15个月,应该还款多少(本金和利息的总和)? 请把答案金额四舍五入后,保留两位小数。注意:32.5,一定要写为:32.50 通过浏览器提交答案,这是一个含有小数点和两位小数的浮点数字。不要写多余内容(例如:多写了“元”或添加说明文字) 标题:猜字母 把abcd...s共19个字母组成的序列重复拼接106次,得到长度为2014的串。 接下来删除第1个字母(即开头的字母a),以及第3个,第5个等所有奇数位置的字母。 得到的新串再进行删除奇数位置字母的动作。如此下去,最后只剩下一个字母,请写出该字母。 答案是一个小写字母,请通过浏览器提交答案。不要填写任何多余的内容。 标题:大衍数列 中国古代文献中,曾记载过“大衍数列”, 主要用于解释中国传统文化中的太极衍生原理。 它的前几项是:0、2、4、8、12、18、24、32、40、50 ... 其规律是:对偶数项,是序号平方再除2,奇数项,是序号平方减1再除2。 以下的代码打印出了大衍数列的前100 项。 int main() { int i; for(i=1; i<100; i++){ if(__________________) //填空 printf("%d ", i*i/2); else printf("%d ", (i*i-1)/2); }

蓝桥杯比赛相关事项

蓝桥杯比赛相关事项 1.竞赛时间 省赛时长:4小时,6个组别同时进行。 决赛时长:4小时。决赛详细赛程安排另行通知。 详细赛程安排另行通知。 2.竞赛形式 个人赛。 一人一机,全程机考。 选手机器通过局域网连接到各个考场的竞赛服务器。选手答题过程中不允许访问互联网,也不允许使用本机以外的资源(如USB连接)。 以“服务器-浏览器”方式发放试题、回收选手答案。 3.c/c++ 语言开发环境: ·Dev-cpp 5.4.0 支持ANSI C,ANSIC++,STL ·c/c++ API 帮助文档(中文,chm格式) 4.试题形式 竞赛题目完全为客观题型。 根据选手所提交答案的测评结果为评分依据。 5.1.结果填空题 ·题目描述一个具有确定解的问题。要求选手对问题的解填空。 ·不要求解题过程,不限制解题手段(可以使用任何开发语言或工具,甚至是手工计算),只要求填写最终的结果。 5.2.代码填空题 ·题目描述一个具有确定解的问题。 ·题目同时给出该问题的某一解法的代码,但其中有缺失部分。 要求选手读懂代码逻辑,对其中的空缺部分补充代码,使整段代码完整。只填写空缺部分,不要填写完整句子。 不要写注释、说明或其它题目中未要求的内容。 5.3.编程大题 题目为若干具有一定难度梯度、分值不等的编程题目。 这些题目的要求明确、答案客观。 题目一般要用到标准输入和输出。要求选手通过编程,对给定的标准输入求解,并通过标准输出,按题目要求的格式输出解。题目一般会给出示例数据。 一般题目的难度主要集中于对算法的设计和逻辑的组织上。理论上,选手不可能通过猜测或其它非编程的手段获得问题的解。 选手给出的解法应具有普遍性,不能只适用于题目的示例数据(当然,至少应该适用于题目的示例数据)。 为了测试选手给出解法的性能,评分时用的测试用例可能包含大数据量的压力测试用例,选手选择算法时要尽可能考虑可行性的问题。

蓝桥杯比赛要求

七、奖项设置及评选办法 7.1 省赛 1.参赛选手奖 省赛每个组别设置一、二、三等奖,比例分别为10%、20%、30%,总比例为实际参赛人数的60%,零分卷不得奖。省赛一等奖选手获得直接进入全国总决赛资格。所有获奖选手均可获得由工业和信息化部人才交流中心及大赛组委会联合颁发的获奖证书。 2.指导教师奖 省赛中获奖的参赛选手的指导教师将获得“蓝桥杯全国软件和信息技术专业人才大赛(××赛区)优秀指导教师”称号。 3.参赛学校奖 参赛组织工作表现突出、经审批符合相关条件的单位,将获得“蓝桥杯全国软件和信息技术专业人才大赛(××赛区)优秀组织单位”称号; 参赛选手成绩优异,经审批符合相关条件的学校将获得“蓝桥杯全国软件和信息技术专业人才大赛(××赛区)优胜学校”称号。 7.2 总决赛 全国总决赛按参赛项目和成绩,为获奖学生、教师和组织单位颁发相应证书和奖 励。其中: 1.参赛选手奖 个人赛根据相应组别分别设立特、一、二、三等奖及优秀奖。在决赛奖项设置中, 每个组别设置特等奖1名,一等奖不高于5%,二等奖占20%,三等奖不低于25%,优秀奖 不超过50%,零分卷不得奖。 所有获奖选手均可获得由工业和信息化部人才交流中心及大赛组委会联合颁发的获 奖证书。 大学组总决赛三等奖及以上选手,如果获得本校免试推研资格,将获得北京大学软 件与微电子学院等院校的面试资格,并优先录取为该院普通硕士研究生。 大学组总决赛三等奖及以上选手,可免除笔试,直接获得百度、IBM等企业在员工 招聘及实习生招聘中的面试机会。 2.指导教师奖 所有获奖选手的指导教师,均可获得“蓝桥杯全国软件和信息技术专业人才大赛优秀 指导教师”证书。 3.参赛学校奖 参赛组织工作成绩突出、经审批符合相关条件的单位,获“蓝桥杯全国软件和信息技 术专业人才大赛优秀组织单位”称号; 参赛选手成绩优异、经审批符合相关条件的学校,获“蓝桥杯全国软件和信息技术专 业人才大赛优胜学校”称号。

蓝桥杯省赛学习笔记

数码管 另外要写蜂鸣器初始化函数,关闭蜂鸣器void Init() { HC138_Selection(5); P0=0xBF; HC138_Selection(6); P0=0; } 数码管动态显示作业

按键作业 #include "reg52.h" sbit S7=P3^0; sbit S6=P3^1; sbit S5=P3^2; sbit S4=P3^3; sbit LED1=P0^0; sbit LED2=P0^1; sbit LED3=P0^2; sbit LED4=P0^3; sbit LED5=P0^4; sbit LED6=P0^5; sbit LED7=P0^6; sbit LED8=P0^7; unsigned char c1,c2=1; unsigned char d1,d2=1; void Key_Scan(); void HC138_Select(unsigned char a); void FMQ_Init(); void Delay(unsigned int t); void main() { FMQ_Init(); HC138_Select(4);

P0=0xFF; while(1) { Key_Scan(); } } void Key_Scan() { if(S7==0&&d2) { while(!S7); LED1=~LED1; } if(LED1==0) { c1=1; c2=0; } if(LED1==1) { c1=0; c2=1; } if(c1) { if(S5==0) { Delay(100); LED3=0; while(!S5); LED3=1; } if(S4==0) { Delay(100); LED4=0; while(!S4); LED4=1; } } if(S6==0&&c2) {

(完整)蓝桥杯大赛青少年创意编程Scratch初级组模拟题

一、单选题(每题20分) 1、(难度系数1)在舞台添加小猫角色,它的所有设置均为默认设置。舞台布局和程序运行舞台布局程序运行结果 运行以下哪段程序后,可以得到以上结果。() A B C D以上程序都不对 2、(难度系数2)小猫看到远处好久不见的朋友,于是跳起来说“你好!”想引起朋友的注意,执行以下程序后,小猫说“你好!”一共几秒?() A 0 B 2 C4 D 8

3、(难度系数3)当角色执行完这段程序后,舞台可能出现的图形是?() A、正三角形 B、正四边形 C、正六边形 D、正八边形 4、(难度系数4)执行完这段程序后,变量b的值可能是?() A、11 B、65 C、130 D、6065

5、(难度系数5)小红想做一个月亮围绕地球旋转的动画,如图,舞台有两个角色:“地球”“月球”,并写如下程序,小红希望运行程序后,月球以地球为中心做圆周运动。() A、B、 B、D、

1、难度系数2,满分50分 准备工作:导入背景库中的“bedroom2”,并导入角色库中的“Abby”“Candy”角色。 编程实现: Abby打扫完房间,房间停电了,Abby点上了一根蜡烛。想象停电后,点上蜡烛的效果。 图1.“关灯以前” 图2.“关灯后”

1、程序开始运行时,显示如图1.“关灯以前” 2、2秒以后,背景变暗,屏幕左边的墙上出现比小猫自身还要大的影子,如图2.“关灯后”。 3、之后一直保持图2效果 4、蜡烛、Abby、影子之间和大小应大致正确。 将程序保存在桌面,命名为“1.sb2” 评判标准: 10分:程序运行后,按图1的效果显示并保持至少2秒钟; 30分:在10分的基础上,能按图2的要求背景变暗,出现Abby阴影; 50分:在30分的基础上,背景中的圣诞树仍可见,蜡烛、Abby、影子之间的位置关系 基本正确,Abby和影子的大小关系符号逻辑。 2、难度系数3,满分50分 编程实现:今天天气多云,小熊在海边散步,他的头顶飘来一朵云,一阵风吹来,云飘走了,越飘越远,最后消失在空中。 具体要求: 1、舞台背景选择图示背景,增加云朵、小熊角色。 2、程序开始运行时,“小熊”“云朵”角色出现在图1所示的位置。 3、“云朵”角色能实现“从小熊头顶飘离,并向右上角平滑地漂移,越飘越高,越飘越小,直到最后消失”的动画效果。 将程序保存在桌面,命名为“2.sb2” 图1 图2 图3 图4

2016蓝桥杯c-c++省赛试题及答案解析

2016蓝桥杯c-c++B组省赛试题及解析第一题 煤球数目 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 答案:171700 #include int main() { int a[101] ={0};

for(int i = 1 ; i < 101 ; i ++) a[i] = a[i-1] + i; int ans = 0; for(int j = 1 ; j < 101 ; j ++) ans += a[j]; printf("%d\n",ans); return 0; } 第二题 生日蜡烛 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 答案:26

#include int main() { int start,end; for(start = 1 ; start < 236 ; start ++) { for( end = start ; end < 236 ; end ++ ) { int sum = 0; for(int i = start; i <= end; i ++) sum += i; if( sum == 236) { printf("start : %d end : %d\n",start,end); } } } return 0; } 第三题 凑算式

第十一届蓝桥杯Python规则及样题

蓝桥杯大赛青少组竞赛规则及样题蓝桥杯大赛青少年组对外发布文档邮件pugongying@https://www.360docs.net/doc/1b5530293.html, 网站https://www.360docs.net/doc/1b5530293.html, 蓝桥杯大赛组委会北京万寿路27号工业与信息化部8号楼文档编号L00205对本文档的疑问及修正意见,请直接发送至上列邮箱。蓝桥杯大赛青少年创意编程Python 组竞赛规则及样题版本190901目录竞赛时长............................................................................................................................2竞赛形式. (2) 参赛选手设备环境............................................................................................................2试题形式............................................................................................................................2试题涉及的Python 知识................................................................................................3试题涉及的学科知识........................................................................................................4样题....................................................................................................................................4其他注意事项....................................................................................................................5联系方式............................................................................................................................6附录:蓝桥杯大赛青少年组简介.................................................................................... 6

2017年蓝桥杯省赛赛前集训题(共14题)

第1题:星系炸弹(2015年省赛C/C++B组第2题)在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。 有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。 ?结果:2017-08-05 ?解决方法:用Excel拖 这个题会了的同学们把上课讲过的,课件上的,其他几道Excel拖动题都做一遍。 第2题:(2015年校内选拔赛C/C++B组第3题)如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗? 显然,这个值是介于2和3之间的一个数字。 请把x的值计算到小数后6位(四舍五入),并填写这个小数值。 注意:只填写一个小数,不要写任何多余的符号或说明。 #include #include

#include using namespace std; int main() { double x; for(x=2;x<=3;x+=1e-7) { if (abs(pow(x,x)-10)<1e-6) cout<

第十届蓝桥杯青少赛Scratch组试题

上表由裁判填写,请参赛选手及阅卷裁判签名确认上述成绩准确无误,选手_________、裁判_________ 注意事项: 1.赛场内应保持安静,参赛选手间严禁互相交谈,违者将被取消比赛资格; 2.比赛过程中,笔记本计算机不得开启WLAN或蓝牙等各种无线通讯功能,违者将被取消比赛资格; 3.比赛过程中,应将准考证及身份证件放置桌子左上角,以备监考人员随时核对、检查; 4.参赛选手的手机在检录后必须保持关闭状态直至比赛结束,违者将被取消比赛资格; 5.比赛过程中,笔记本电脑须调为静音; 6.请在做题之前认真阅读题目,编程题目设置有步骤分,即只完成部分功能也可以得到相应的分数; 7.比赛答卷时间为90分钟; 8.比赛结束后,请自行整理所有自带设备及配件,并妥善带出赛场,尤其不要遗漏电源、连线或其他零部 件; 9.比赛结束时裁判现场判卷结束后,本赛卷一律交给判卷裁判,比赛选手不得自行带走,否则取消比赛成 绩。

一、单选题(每题20分) 第一题(难度系数1) 看,前方有一个苹果!想一想,下面哪段程序能帮助小猫拿到它呢? A B C D 第二题(难度系数2) 以下哪个选项不是说积木的结果? A: 7 B: 18 C: 3 D: 21

小法师被挡在墙外面,他要施展法术穿墙而过。除了“隐藏”积木块之外,还有哪个积木块可以帮他穿墙而过?A: B: C: D: 第四题(难度系数4) 角色小猫在运行如下程序5秒后,舞台上能看到几只小猫? A: 2 B: 3 C: 4 D: 5

运行上面的程序,角色说的结果为? A: 1 B: 2 C: 3 D: 4 二、判断题(每题20分,在括号里画“×”或“√”)第一题(难度系数1) 执行完这段程序后,可以在舞台上画出一条蓝色的直线。()

第七届蓝桥杯Java B组省赛答案

package com.diqijie.shengsai; /** * @author leibaobao * 煤球数目 * 解:100层为1+2+3....+100 = 5050 */ publicclass _1 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int sum = 0; for(int i = 1; i <= 100; i++){ for(int j = 1; j <= i; j++) sum += j; } System.out.println(sum); } }

package com.diqijie.shengsai; /** * @author leibaobao * 生日蜡烛 * 解:人最大也不过100岁,不要想太多。暴力一点 */ publicclass _2 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int sum = 0; for(int i = 0; i < 100; i++){ for(int j = i; j < 100; j++){ sum += j; if(sum == 236) System.out.println(i); } sum = 0; } }

}

package com.diqijie.shengsai; import java.util.HashSet; /** * @author leibaobao * 凑算式 * 解:前几题不要多想,暴力一点。但是Java能不用大数不要去用大数 * 麻烦,慢。这题通分加for循环不就OK了吗 */ publicclass _3 { publicstaticvoid main(String[] args) { // TODO Auto-generated method stub int count = 0; for(int a = 1; a < 10; a++) for(int b = 1; b < 10; b++) for(int c = 1; c < 10; c++) for(int d = 1; d < 10; d++) for(int e = 1; e < 10; e++)

第七届蓝桥杯程序设计大赛题目及答案

第七届省赛 1.网友年龄 某君新认识一网友。 当问及年龄时,他的网友说: “我的年龄是个2位数,我比儿子大27岁, 如果把我的年龄的两位数字交换位置,刚好就是我儿子的年龄” 请你计算:网友的年龄一共有多少种可能情况? 提示:30岁就是其中一种可能哦. 请填写表示可能情况的种数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 7 x-y=3 2.生日蜡烛 某君从某年开始每年都举办一次生日party,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日party的? 请填写他开始过生日party的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 26 #include using namespace std; int main(){ int i,j; int sum=0; for(i=1;i<=100;i++){ //年龄 sum=0; for(j=i;j<=100;j++){ //蜡烛数 sum=sum+j; if(sum==236){ cout<

3.方格填数 如下的10个格子 填入0~9的数字。要求:连续的两个数字不能相邻。 (左右、上下、对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 //用dfs求 #include #include #include using namespace std; const int maxn=4; int mp[maxn][maxn]; int flag[10]; int ans=0; int init() { memset(mp,-10, sizeof mp); memset(flag,0, sizeof flag); } int fx[4]= {0,-1,-1,-1},fy[4]= {-1,-1,0,1}; int check(int i,int j) { for(int f=0; f<4; f++) { if(abs(mp[i][j]-mp[i+fx[f]][j+fy[f]])!=1||i+fx[f]<1||j+fy[f]>4||j+fy[f]<1 ) continue; else return 0; } return 1; } void dfs(int i,int j) {

2017年蓝桥杯省赛赛前集训题(共14题)

2017年蓝桥杯省赛赛前集训题(共14题)

第1题:星系炸弹(2015年省赛C/C++B组第2题)在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。 有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为 yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。 ?结果:2017-08-05 ?解决方法:用Excel拖 这个题会了的同学们把上课讲过的,课件上的,其他几道Excel拖动题都做一遍。 第2题:(2015年校内选拔赛C/C++B组第3题)如果x的x次幂结果为10(参见【图1.png】),你能计算出x的近似值吗? 显然,这个值是介于2和3之间的一个数字。 请把x的值计算到小数后6位(四舍五入),并填写这个小数值。 注意:只填写一个小数,不要写任何多余的符号或说明。

答案:14 解法1:next_permutation的解法 #include #include using namespace std; int main() { int p[15]={1,1,1,1,1,2,2,2,2,2,2,2,2,2,2};//1是店,2是花 int sum,cnt=0; do { sum=2; for(int i=0;i<15;i++) if(p[i]==1) sum<<=1; else if(p[i]==2) sum--; if(sum==0) cnt++; } while(next_permutation(p,p+14));//因为最后一次遇到的肯定是花,所以只排前14个数,不排最后一个 cout< using namespace std; #define N 14//因为最后一次肯定是花,所以只排14个数 int cnt; bool ok(int p[],int begin,int end) { for (int i = begin; i < end; i++) if (p[i] == p[end]) return false; return true; } void perms(int p[],int start) { int i; if(start==N-1)

相关文档
最新文档