蓝桥杯嵌入式开发板常见问题及解决方法V1.0

蓝桥杯嵌入式开发板常见问题及解决方法V1.0
蓝桥杯嵌入式开发板常见问题及解决方法V1.0

蓝桥杯嵌入式开发板常见问题及解决方法

NUAA

声明:以下的解决方法及程序,仅在NUAA 开发板实测过。

1.MDK中不能下载程序,提示,原因及解决办法。

大体上原因有以下几种: 1) CooCox 下载器驱动没有安装正确;2)工程配置没有正确;

3)下载串口没有选择正确或下载线引脚被复用;3)开发环境版本不一致;4)JTAG跳线

帽没有接。

解决方法1:如果点击工程配置Debug 选项,下拉单找不到CooCox Debugger 调试器,则需要重新安装CooCox调试器,驱动安装在MDK安装路径下面。注意操作系统要是XP或Win7 32 位的才可以。

解决方法2:检查工程配置,点击Debug 选项,选中右侧Use,表示通过调试器调试,下拉选择CooCox Debugger 调试器,点击Setting ,选择适配器和端口。

选择Utilities 选项,选择适配器为CooCox Debugger ,

解决方法3:检查下载串口有没有选择正确,下载串口为屏幕上方靠近电源DC插口的方口USB口。(个别同学误认为下载串口为右上方的USB口,导致下载一直不成功)

解决方法4:尝试按住复位键,松开后立即点击下载。原因是:BeeP程序中,初始化时复用了PB4引脚,PB4引脚为下载复位信号线。

解决方法5:清除OUTPUT文件下的全部文件,点击全部重新编译后,点击下载。

原因是MDK版本不一致有时会导致无法下载。

解决方法6:JTAG插线帽需短接,重新编译后下载。

2.串口实验没有打印显示。常见原因及解决方法。

常见原因有以下几种:1)串口选择错误;2)串口线连接错误;3)程序中串口配置错误或波特率不一致等。

解决方法1:如果使用的是example中的串口1的程序,需要额外使用串口线连接CN6 和电脑,串口1的两个引脚PA9 PA10 需要使用跳线帽连接。对于个别同学没有使用过串口线,做以下简单介绍。串口线现在常见的是DB9的,即9根插线的。

一端是公头一端是母头,对于台式机,可以直接一端插在主机箱的DB9串口上,一端连接开发板的CN6接口。打开串口助手,选择对应端口号和波特率就可以通信。

对于笔记本,因为现在笔记本基本没有DB9的串口了,可以用USB口。这样就还需要一根USB转串口的线,即笔记本USB——USB转串口线——串口线——开发板CN6接口,这样连接。打开串口助手,选择对应端口号和波特率就可以通信。

解决方法2:对于没有串口线的同学如果想要做串口通信实验,可以使用example 中的串口2实验,串口2 默认连接在下载串口的,这样下载线就可以既充当供电线又充当串口线,不需要额外再连接串口线。串口2两个引脚PA2 PA3需要使用跳线帽连接,打开串口助手,选择对应端口号和波特率就可以通信。

解决方法3:打开串口助手时,注意选择对应的端口号和波特率。端口号可以通过右击我的电脑–>设备管理器->端口查看对应串口的端口号。波特率可以通过程序中的选择查看。默认9600.

3.FT2232D驱动安装成功后,选择设备管理器为什么会有两个端口号?

原因:这个就是这个板子的奇特之处了,这个开发板集成下载器、调试器、串口于一身,真正实现只需要一根USB线就可以实现开发。这两个端口号,一个是MDK 下载程序使用,一个是作为串口通信使用的。当使用example 中串口2的接收和发送实验时,不需要额外连接串口线,因为串口2是默认连接下载端口的,一根下载线可以实现供电、下载程序、和串口通信三个作用。做串口2的实验时,可以直接打开串口助手,选择对应串口号和波特率,进行串口通信。

4.为什么在做LCD实验时,LED也会点亮和闪烁?

原因:这是因为LCD的高八位数据位和八路LED共用了PC7-PC15的IO,当LCD操作时会影响到LED的锁存器的输出数据变化。

解决方法:在进行LCD显示屏的初始化操作之前先对LED的锁存器操作一次,使LED 的锁存器保持输出8位高电平,即关闭8路LED。随后LCD的任何操作不再会造成LED的闪烁,8路LED保持关闭。

程序如下:

void LED_Init(void) //LED信号引脚及锁存器控制引脚初始化

{

GPIO_InitTypeDef GPIO_InitStructure;

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD, ENABLE);

//LED引脚配置,PC08~PC15

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8| GPIO_Pin_9| GPIO_Pin_10|

GPIO_Pin_11| GPIO_Pin_12| GPIO_Pin_13| GPIO_Pin_14| GPIO_Pin_15;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;

GPIO_Init(GPIOC, &GPIO_InitStructure);

//74HC573锁存引脚配置,PD2

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;

GPIO_Init(GPIOD, &GPIO_InitStructure);

}

void LED_Control(uint16_t LED,uint8_t LED_Status) //LED 的控制

{

if(LED_Status == 0){

GPIO_SetBits(GPIOC,LED);

GPIO_SetBits(GPIOD,GPIO_Pin_2);

GPIO_ResetBits(GPIOD,GPIO_Pin_2); //状态锁存

}

else

{

GPIO_ResetBits(GPIOC,LED);

GPIO_SetBits(GPIOD,GPIO_Pin_2);

GPIO_ResetBits(GPIOD,GPIO_Pin_2); //状态锁存

}

}

void main()

{

LED_Init();

LED_Control(GPIO_Pin_All,1);//关闭所有LED

//然后再初始化LCD

STM3210B_LCD_Init();

……..

……..

}

蓝桥杯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); } } }

蓝桥杯_C-校内选拔题

第六届“蓝桥杯”校内选拔考试(C/C++)1、Problem A: 求和(20分) Description 输入一个十进制数,计算它转化成四进制数后各个位数的和。Input 输入有多个实例,输入一个十进制数n。(0

2、Problem B: 多少种方法(20分) Description 听说大一的小伙伴们刷题特别crazy,LM大魔王也有点按耐不住了,也开始刷题啊。于是他找了下面一道题开始做,但这道题好难啊,听说LM大魔王用了好久好久好久好久好久。。。的时间才做出来。题目如下:一些正整数都可以被连续的一个或多个素数之和表示。例如,整数53有两种表示5 + 7 + 11 + 13 + 17和53。41有三种表示2 + 3 + 5 + 7 + 11 + 13、11 + 13 + 17和41。3只有一种表示3。整数20没有这样表示。注意,被加数必须为连续的素数,所以整数20不可以表示为7+13也不可表示为3+5+5+7。你的任务是编写一个程序,计算出给定的正整数能有多少连续素数之和表示方法。 Crazy and clever的小伙伴们你们能用多长时间A掉呢? Input 有多组输入。每行输入一个正整数N(2<=N<=10000). Output 对应每组输入的数据N,输出有多少种连续素数之和表示N的方法。

Sample Input 2 3 17 41 20 666 12 53 Sample Output 1 1 2 3 1 2

蓝桥杯哦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;

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

标题:武功秘籍 小明到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); }

2018蓝桥杯试题

2018蓝桥杯C语言b组国赛真题 1.标题:换零钞 x星球的钞票的面额只有:100元,5元,2元,1元,共4种。 小明去x星旅游,他手里只有2张100元的x星币,太不方便,恰好路过x星银行就去换零钱。 小明有点强迫症,他坚持要求200元换出的零钞中2元的张数刚好是1元的张数的10倍, 剩下的当然都是5元面额的。 银行的工作人员有点为难,你能帮助算出:在满足小明要求的前提下,最少要换给他多少张钞票吗? (5元,2元,1元面额的必须都有,不能是0) 注意,需要提交的是一个整数,不要填写任何多余的内容。 手算都可以。。。下面是代码,答案74 1.#include https://www.360docs.net/doc/a110010387.html,ing namespace std; 3.int main(){ 4.for(int i=1;i<40;i++){ 5.for(int j=1;j<200;j++){ 6.if(5*i+2*10*j+1*j==200) 7. cout<<"5*"<

12.2.标题:激光样式 x星球的盛大节日为增加气氛,用30台机光器一字排开,向太空中打出光柱。 安装调试的时候才发现,不知什么原因,相邻的两台激光器不能同时打开! 国王很想知道,在目前这种bug存在的情况下,一共能打出多少种激光效果? 显然,如果只有3台机器,一共可以成5种样式,即: 全都关上(sorry, 此时无声胜有声,这也算一种) 开一台,共3种 开两台,只1种 30台就不好算了,国王只好请你帮忙了。 要求提交一个整数,表示30台激光器能形成的样式种数。 注意,只提交一个整数,不要填写任何多余的内容。 思路很简单,暴力搜索,30个灯光从左到右,从左边第一个开始,第一个可以开关,第二个要根据左边的灯光是否开启来取值,以此类推。。。答案2178309 1.#include 2.#include https://www.360docs.net/doc/a110010387.html,ing namespace std; 4.int ans = 0; 5.int x[31];//0代表关,1代表开 6. 7.void dfs(int index){ 8.if(index == 30){ 9.ans++; 10.return; 11.} 12.if(index == 0 || x[index-1] == 0){ //第一个灯光可以取0或1,当前灯 光左边要是没开,那当前灯光可以取0和1 13.for(int i=0;i<=1;i++){ 14.x[index] = i;

第六届蓝桥杯软件类省赛真题(JavaB组)(精品文档)

第六届蓝桥杯软件类省赛真题(Java B组)1、三角形面积 如图1所示。图中的所有小方格面积都是1。 那么,图中的三角形面积应该是多少呢? 请填写三角形的面积。不要填写任何多余内容或说明性文字。 2、立方变自身 观察下面的现象,某个数字的立方,按位累加仍然等于自身。 1^3 = 1 8^3 = 512 5+1+2=8 17^3 = 4913 4+9+1+3=17 ... 请你计算包括1,8,17在内,符合这个性质的正整数一共有多少个? 请填写该数字,不要填写任何多余的内容或说明性的文字。 3、三羊献瑞 观察下面的加法算式: 祥瑞生辉 + 三羊献瑞 ------------------- 三羊生瑞气

(如果有对齐问题,可以参看【图1.jpg】) 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。 4、循环节长度 两个整数做除法,有时会产生循环小数,其循环部分称为:循环节。 比如,11/13=6=>0.846153846153..... 其循环节为[846153] 共有6位。 下面的方法,可以求出循环节的长度。 请仔细阅读代码,并填写划线部分缺少的代码。 public static int f(int n, int m) { n = n % m; Vector v = new Vector(); for(;;) { v.add(n); n *= 10; n = n % m; if(n==0) return 0; if(v.indexOf(n)>=0) _________________________________ ; //填空} } 注意,只能填写缺少的部分,不要重复抄写已有代码。不要填写任何多余的文字。 5、九数组分数

蓝桥杯第一届初赛题目

第一届蓝桥杯预赛试题 c 本科 第一题,以下函数的功能是将任意整数进行因式分解, 请完成该程序的空缺使函数能够正常运算 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

q__1__ = p[i+1]; q[len-1] = p[0]; —–(2)—-; prin tf(“%s\n”, q); 第三题, 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; —-(4)—- } for(i=0; i<3; i++) for(int j=0; j<3-i; j++) if(N[j]>N[j+1]) { int t = N[j+1]; N[j+1] = N[j]; N[j] = t; } int n_min=0; for(i=0; i<4; i++) n_min = n_min * 10 + N[i] ; int n_max = 0; for(i=3; i>=0; i–) n_max = n_max * 10 + N[i]; return n_max-n_min; } 第五题,假设有m+n个人,其中, m个人手持面额为5角的硬币, n个人手持面额为1元的硬币,

(完整版)蓝桥杯大赛青少年创意编程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

第十届蓝桥杯青少赛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) 执行完这段程序后,可以在舞台上画出一条蓝色的直线。()

蓝桥杯试题C语言答案

1、A、B、C、D、E五名学生有可能参加计算机竞赛,根据下列条件判断哪些 人参加了竞赛: (1)A参加时,B也参加; (2)B和C只有一个人参加; (3)C和D或者都参加,或者都不参加; (4)D和E中至少有一个人参加; (5)如果E参加,那么A和D也都参加。 00110 c、d #include<> int main() { int a,b,c,d,e; /*0表示不参加, 1表示参加.*/ for(a=0;a<2;a++) for(b=0;b<2;b++) for(c=0;c<2;c++) for(d=0;d<2;d++) for(e=0;e<2;e++) { if(a&&!b) continue; if(b&&c||!b&&!c) continue; if(c&&!d||!c&&d) continue; if(!d&&!e) continue; if(e&&(!a||!d)) continue; printf("%d%d%d%d%d",a,b,c,d,e); } return 0; } 2、某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件: 1)A和B两人中至少去一人; 2)A和D不能一起去; 3)A、E和F三人中要派两人去; 4)B和C都去或都不去; 5)C和D两人中去一个; 6)若D不去,则E也不去。 试编写一个程序,输出问应当让哪几个人去? #include<> int main() { int a,b,c,d,e,f; for(a=1;a>=0;a--) for(b=1;b>=0;b--)/*1:去 0:不去*/ for(c=1;c>=0;c--)

蓝桥杯2015第六届C语言真题汇总

1、奖券数目 有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。 虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。 请提交该数字(一个整数),不要写任何多余的内容或说明性文字。

2、星系炸弹 在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。 有一个贝塔炸弹,2014年11月9日放置, 定时为1000天,请你计算它爆炸的准确日

期。 请填写该日期,格式为yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。 if(year%4==0||(year%100==0&&year%400!= 0)) 3、三羊献瑞 观察下面的加法算式: 祥瑞生辉 + 三羊献瑞 ------------------- 三羊生瑞气

(如果有对齐问题,可以参看【图1.jpg】) 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

4、格子中输出 StringInGrid函数会在一个指定大小的格子中打印指定的字符串。 要求字符串在水平、垂直两个方向上都居中。 如果字符串太长,就截断。 如果不能恰好居中,可以稍稍偏左或者偏上

蓝桥杯试题标准答案(练习)

1、亲密数:假设有a、b两个数,若a的所有因子之和等于b,b的所有因子之和等于a,并且a不等于b,则称a和b是一对亲密数。如284和220就是一对亲密数。 #include int main() { int a,b,i,n; for(a=1;a<=10000;a++) { for(b=0,i=1;i<=a/2;i++) if(a%i==0) b+=i; for(n=0,i=1;i<=b/2;i++) if(b%i==0) n+=i; if(n==a&&a!=b&&a

int main() { long days = 5; /*1999年的最后一天为周5,把下一年加上5天对7取余为0的,则是周日*/ int i = 2000; for(;;) /*无循环终止条件,可以利用break语句终止循环*/ { if(i%4==0&&i%100!=0||i%400==0) { days = days%7+366; } else { days = days%7+365; } if(days%7==0&&i%100==99) { printf("%d",i); break; } i++; } return 0; } 3、马虎的算式:小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。

第六届蓝桥杯单片机决赛试题

准考证号 工位号 注意:只填写准考证号和工位号,否则试卷作废 密 封 线 ----------------------------------------------------------------------------- 2015年“蓝桥杯” 第六届全国软件和信息技术专业人才大赛个人赛 (电子类)决赛单片机设计与开发项目 竞赛时间:5小时 题 号 一 二 三 总分 配 分 10分 30分 60分 100分 得 分 “智能物料传送系统”设计任务书 功能简述 智能物料传送系统能够实现货物类型判断、过载监测、紧急停止和系统参数存储记录等功能。系统硬件部分主要由按键电路、显示电路、数据存储电路、传感器检测电路及单片机系统组成,系统框图如图1所示: 图1. 系统框图 I2C 总线驱动程序、CT107D 单片机考试平台电路原理图以及本题所涉及到的芯片数据手册,可参考计算机上的电子文档。原理图文件、程序流程图及相关工程文件请以考生号命名,并保存在计算机上的考生文件夹中(文件夹名为考生准考证号,文件夹位于 Windows 桌面上)。

设计任务及要求 1.过载监测与货物类型识别 1.1 空载、过载监测 使用电位器RB2输出电压V o模拟压力变送器输出,设备实时采集电位器输出电压,完成货物空载、过载监测功能。 1.1.1 当0 <V o<1V时,判断为空载,L1点亮; 1.1.2 当1 ≤V o<4V时,判断为非空载,货物被填装到传送起始位置,L2点亮; 1.1.3 当V o≥4V时,判断为过载状态,L3以0.5秒为间隔闪烁提醒,蜂鸣器报警 提示。 说明:空载状态下,所有数码管熄灭。 1.2 货物类型判断 货物被填装到传送起始位置后,系统启动超声波测距功能,完成货物类型判断,数 码管显示界面如图2所示: 1.2.1 当超声探头与货物之间的距离小于等于30cm时判断为I类货物; 1.2.2 当超声探头与货物之间的距离大于30cm时判断为II类货物。 1 8 8 3 2 8 8 2 界面编号熄灭距离:32cm 熄灭II类货物 图2. 数码管显示界面1-货物类型显示 说明: 1. 货物类型显示格式:I类货物- 数字1、II类货物- 数字2; 2. A3草稿纸短边接近30cm,可用于验证测距结果。 2.货物传送 在非空载、非过载的前提下,通过按键控制继电器吸合,启动货物传送过程,并通 过数码管实时显示剩余的传送时间,倒计时结束后,继电器自动断开,完成本次传 送过程,数码管显示格式如图3所示: 2 8 8 8 8 8 0 1 界面编号熄灭剩余传送时间:1秒 图3. 数码管显示界面2-剩余传送时间显示 说明:继电器吸合时,指示灯L10点亮,断开时L10熄灭。 3.按键功能描述 3.1 按键S4定义为“启动传送”按键,按键按下后,启动货物传送过程。 说明:按键S4在空载、过载、传送过程中无效。 3.2 按键S5定义为“紧急停止”按键,按键按下后,继电器立即断开,指示灯L4 以0.5秒为间隔闪烁,剩余传送时间计时停止。再次按下S5,传送过程恢复,

2020年第11届蓝桥杯C++B组 第一次省赛真题

试题 A: 跑步训练 答案:3880 #include using namespace std; int main(void) { int n = 10000, minu, sec; for (int i = 0; ; i++) { if (i % 2 == 0) { // 跑 if (n > 600) { n -= 600; } else { // 体力不足跑完一分钟 minu = i; sec = n / 10; break;

} } else { // 休息 n += 300; } } cout << (minu * 60 + sec) << endl; return 0; } 试题 B: 纪念日 答案:52038720

可以通过excel来计算出,两个日期相差36138天 所以答案为:36138*24*60=52038720 试题 C: 合并检测 答案:10 假设有n个人,需要使用的试剂盒有 n / k + 0.01 ? n ? k n/k+0.01*n*k n/k+0.01?n?k 提取n,有 n ? ( 1 / k + 0.01 ? k ) n*(1/k+0.01*k) n?(1/k+0.01?k) 所以,当k=10时,有最小值 试题 D: REPEAT 程序

答案:241830 这道题我只会转换为python的做法 可以先用记事本打开prog.txt,再进行替换。 将“REPEAT” 替换为“for i in range(”,再将“:” 替换为“):”此时就把代码转换成了python,运行之后的结果是 241830 试题 F: 整除序列

蓝桥杯算法训练习题与官方答案

算法训练 编号:ALGO-1 题目:区间k大数查询列 关键字:排序查找 类型:普通试题 问题描述 给定一个序列,每次询问序列中第l个数到第r个数中第K大的数是哪个。 输入格式 第一行包含一个数n,表示序列长度。 第二行包含n个正整数,表示给定的序列。 第三个包含一个正整数m,表示询问个数。 接下来m行,每行三个数l,r,K,表示询问序列从左往右第l个数到第r个数中,从大往小第K大的数是哪个。序列元素从1开始标号。 输出格式 总共输出m行,每行一个数,表示询问的答案。 样例输入 5 1 2 3 4 5 2 1 5 2 2 3 2 样例输出 4 2 数据规模与约定 对于30%的数据,n,m<=100; 对于100%的数据,n,m<=1000; 保证k<=(r-l+1),序列中的数<=1000000。 本题的Java参考代码如下: import java.io.BufferedInputStream; import java.io.IOException; import java.util.Arrays;

public class Main { private static BufferedInputStream in = new BufferedInputStream(System.in); public static void main(String[] args) throws IOException { int[] nums = new int[readInt()]; for(int i=0; i0; i--) { int a = readInt(); int b = readInt(); int c = readInt(); int[] tn = new int[b-a+1]; for(int j=0; j57); for(;(i&56) == 48 || (i&62) == 56; i=in.read()) sum = sum*10 + (i&15); return sum; } }

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

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);

第六届蓝桥杯2015-省赛-C语言大学B组

奖券数目 有些人很迷信数字,比如带“4”的数字,认为和“死”谐音,就觉得不吉利。 虽然这些说法纯属无稽之谈,但有时还要迎合大众的需求。某抽奖活动的奖券号码是5位数(10000-99999),要求其中不要出现带“4”的号码,主办单位请你计算一下,如果任何两张奖券不重号,最多可发出奖券多少张。 请提交该数字(一个整数),不要写任何多余的内容或说明性文字。 星系炸弹 在X星系的广袤空间中漂浮着许多X星人造“炸弹”,用来作为宇宙中的路标。 每个炸弹都可以设定多少天之后爆炸。 比如:阿尔法炸弹2015年1月1日放置,定时为15天,则它在2015年1月16日爆炸。有一个贝塔炸弹,2014年11月9日放置,定时为1000天,请你计算它爆炸的准确日期。 请填写该日期,格式为yyyy-mm-dd 即4位年份2位月份2位日期。比如:2015-02-19 请严格按照格式书写。不能出现其它文字或符号。 if(year%4==0||(year%100==0&&year%400!=0)) 三羊献瑞 观察下面的加法算式: 祥瑞生辉 + 三羊献瑞 ------------------- 三羊生瑞气 (如果有对齐问题,可以参看【图1.jpg】) 其中,相同的汉字代表相同的数字,不同的汉字代表不同的数字。 请你填写“三羊献瑞”所代表的4位数字(答案唯一),不要填写任何多余内容。

格子中输出 StringInGrid函数会在一个指定大小的格子中打印指定的字符串。要求字符串在水平、垂直两个方向上都居中。 如果字符串太长,就截断。 如果不能恰好居中,可以稍稍偏左或者偏上一点。 下面的程序实现这个逻辑,请填写划线部分缺少的代码。 #include #include void StringInGrid(int width, int height, const char* s) { int i,k; char buf[1000]; strcpy(buf, s); if(strlen(s)>width-2) buf[width-2]=0; printf("+"); for(i=0;i

2017届蓝桥杯省赛考题

2017第八届蓝桥杯Java省赛 1,标题:购物单 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物。老板忙的时候经常让小明帮忙到商场代为购物。小明很厌烦,但又不好推辞。 这不,XX大促销又来了!老板夫人开出了长长的购物单,都是有打折优惠的。 小明也有个怪癖,不到万不得已,从不刷卡,直接现金搞定。 现在小明很心烦,请你帮他计算一下,需要从取款机上取多少现金,才能搞定这次购物。 取款机只能提供100元面额的纸币。小明想尽可能少取些现金,够用就行了。 你的任务是计算出,小明最少需要取多少现金。 以下是让人头疼的购物单,为了保护隐私,物品名称被隐藏了。 ----------------- **** 180.90 88折 **** 10.25 65折 **** 56.14 9折 **** 104.65 9折 **** 100.30 88折 **** 297.15 半价 **** 26.75 65折 **** 130.62 半价 **** 240.28 58折 **** 270.62 8折

**** 247.34 95折**** 73.21 9折**** 101.00 半价**** 79.54 半价**** 278.44 7折**** 199.26 半价**** 12.97 9折**** 166.30 78折**** 125.50 58折**** 84.98 9折**** 113.35 68折**** 166.57 半价**** 42.56 9折**** 81.90 95折**** 131.78 8折**** 255.89 78折**** 109.17 9折**** 146.69 68折**** 139.33 65折**** 141.16 78折**** 154.74 8折

第七届蓝桥杯C++程序设计大学B组省赛题目

第七届蓝桥杯程序设计大学B组省赛题目 第一题:煤球数目 有一堆煤球,堆成三角棱锥形。具体: 第一层放1个, 第二层3个(排列成三角形), 第三层6个(排列成三角形), 第四层10个(排列成三角形), .... 如果一共有100层,共有多少个煤球? 请填表示煤球总数目的数字。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 第二题:生日蜡烛 某君从某年开始每年都举办一次生日,并且每次都要吹熄与年龄相同根数的蜡烛。现在算起来,他一共吹熄了236根蜡烛。 请问,他从多少岁开始过生日的? 请填写他开始过生日的年龄数。 注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。 第三题:凑算式 B A + + = 10 C (如果显示有问题,可以参见【图1】) 这个算式中代表1~9的数字,不同的字母代表不同的数字。 比如: 6+8/3+952/714 就是一种解法, 5+3/1+972/486 是另一种解法。 这个算式一共有多少种解法?

注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。 第四题:快速排序 排序在各种场合经常被用到。 快速排序是十分常用的高效率的算法。 其思想是:先选一个“标尺”, 用它把整个队列过一遍筛子, 以保证:其左边的元素都不大于它,其右边的元素都不小于它。 这样,排序问题就被分割为两个子区间。 再分别对子区间排序就可以了。 下面的代码是一种实现,请分析并填写划线部分缺少的代码。 <> ( a[], i, j) { t = a[i]; a[i] = a[j]; a[j] = t; } ( a[], p, r) { i = p; j = r + 1; x = a[p]; (1){ (i

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

第七届省赛 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) {

第1~3届蓝桥杯决赛试题及答案

2011年暑假蓝桥杯决赛题附答案 1.四方定理 数论中有著名的四方定理:所有自然数至多只要用四个数的平方和就可以表示。我们可以通过计算机验证其在有限范围的正确性。对于大数,简单的循环嵌套是不适宜的。下面的代码给出了一种分解方案。请仔细阅读,填写空缺的代码(下划线部分)。 注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。直接写在题面中不能得分。 int f(int n, int a[], int idx) { if(______________) return 1; // 填空1 if(idx==4) return 0; for(int i=(int)sqrt(n); i>=1; i--) { a[idx] = i; if(_______________________) return 1; // 填空2 } return 0; } int main(int argc, char* argv[]) { for(;;) {

int number; printf("输入整数(1~10亿):"); scanf("%d",&number); int a[] = {0,0,0,0}; int r = f(number, a, 0); printf("%d: %d %d %d %d\n", r, a[0], a[1], a[2], a[3]); } return 0; } 2.加密 在对文本进行简单加密的时候,可以选择用一个n位的二进制数,对原文进行异或运算。解密的方法就是再执行一次同样的操作。加密过程中n位二进制数会循环使用。并且其长度也可能不是8的整数倍。下面的代码演示了如何实现该功能。请仔细阅读,填写空缺的代码(下划线部分)。 注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。 直接写在题面中不能得分。 void f(char* buf, unsigned char* uckey, int n) {

相关文档
最新文档