2016年度蓝桥杯java高职C组
蓝桥杯 c 试题及答案
蓝桥杯 c 试题及答案蓝桥杯是中国著名的信息技术竞赛,被誉为“程序员的奥林匹克”。
每年举办的蓝桥杯分为初赛和复赛两个阶段,覆盖了大学生、高中生和中学生等多个年龄段。
本文将为大家介绍蓝桥杯 C 试题及答案,希望能对参赛者有所帮助。
一、试题概述蓝桥杯 C 试题是蓝桥杯竞赛中的一道编程题目,通常难度较大,需要对编程语言有一定的掌握和理解。
该题目主要涉及算法、数据结构、编程思想等方面的知识,要求选手提交一个能够运行的程序,并输出符合题目要求的结果。
二、题目要求蓝桥杯 C 试题通常以具体的问题场景为背景,要求选手使用编程语言解决实际的问题。
试题要求选手根据题目描述,编写相应的程序代码,并在规定的时间内提交答案。
三、解题思路解决蓝桥杯 C 试题首先需要仔细阅读题目要求和描述,理解问题的背景和具体需求。
在编写程序时,需要灵活运用所学的算法和数据结构知识,合理选择合适的数据类型和数据结构来解决问题。
解题思路可以从以下几个方面展开:1. 根据题目描述建立适当的数据模型;2. 分析题目需求,确定解题思路;3. 编写代码实现解题思路;4. 测试代码,确保程序运行正确。
四、参考答案由于蓝桥杯竞赛的试题内容每年都有所变化,因此无法提供具体的参考答案。
但是,在参加蓝桥杯之前,可以通过学习历年的蓝桥杯 C 试题,了解题型和解题方法,提高自己的编程能力。
在备战蓝桥杯时,可以参考以下几点建议:1. 多做练习题,熟悉各种题型;2. 学习常用的算法和数据结构,如排序、查找、树、图等;3. 加强对编程语言的掌握,熟悉常用的语法和函数库;4. 参加类似的编程比赛,提高解题速度和编码能力;5. 与他人讨论、交流,学习他人的解题思路和方法。
总之,蓝桥杯 C 试题及答案是参赛者备战蓝桥杯竞赛的重要参考资料。
希望本文的介绍能够对参赛者有所帮助,并祝愿大家在蓝桥杯竞赛中取得好成绩!。
2016蓝桥杯C语言算法题
return -1;
}
//判断是否有某个学生的学号或名字等于data,如果有,函数返回该学生在student数组中的序号,否则返回-
for(i=0;i<n;i++)
{
if(!strcmp(data,student[i].name)||!strcmp(data,student[i].num))
return i;
输入输出样例
样例输入
769
样例输出
7 6 9
*/
#include <stdio.h>
void getResult(int num)
{
//出口
if(num<10)
{
printf("%d ",num);
return ;
}
//递归
getResult(num/10);
printf("%d ",num%10);
}
main()
{
int n;
scanf("%d",&n);
getResult(n);
printf("\n");
return 0;
}
/*
算法训练 薪水计算
问题描述
编写一个程序,计算员工的周薪。薪水的计算是以小时为单位,如果在一周的时间内,员工工作的时间不超过40 个小时,那么他/她的总收入等于工作时间乘以每小时的薪水。如果员工工作的时间在40 到50 个小时之间,那么对于前40 个小时,仍按常规方法计算;而对于剩余的超额部分,每小时的薪水按1.5 倍计算。如果员工工作的时间超过了50 个小时,那么对于前40 个小时,仍按常规方法计算;对于40~50 个小时之间的部分,每小时的薪水按1.5 倍计算;而对于超出50 个小时的部分,每小时的薪水按2 倍计算。请编写一个程序,输入员工的工作时间和每小时的薪水,然后计算并显示他/她应该得到的周薪。
蓝桥杯java模拟赛试题及答案
蓝桥杯java模拟赛试题及答案蓝桥杯Java模拟赛试题及答案一、选择题(每题2分,共20分)1. Java中,下列哪个关键字用于定义类?A. classB. interfaceC. enumD. struct答案:A2. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. procedureD. action答案:B3. 下列哪个是Java中的合法标识符?A. 2variableB. variable2C. variable#2D. variable!答案:B4. Java中,哪个关键字用于实现接口?A. implementsB. extendsC. includesD. contains答案:A5. 在Java中,哪个关键字用于定义一个包?A. packageB. groupC. bundleD. container答案:A6. Java中,下列哪个是正确的数组声明方式?A. int[] array;B. array int[];C. int array[];D. array[] int;答案:A7. 在Java中,哪个关键字用于定义一个构造方法?A. constructorB. initializerC. setupD. method答案:D8. Java中,哪个关键字用于实现多态?A. overrideB. extendsC. implementsD. abstract答案:A9. 下列哪个是Java中的引用数据类型?A. intB. charC. StringD. boolean答案:C10. 在Java中,哪个关键字用于抛出异常?A. throwB. throwsC. exceptionD. error答案:B二、简答题(每题10分,共20分)1. 简述Java中异常处理的机制。
答案:Java中的异常处理机制主要通过try、catch、finally和throw关键字来实现。
第四届蓝桥杯省赛高职JAVA语言C组真题
第四届蓝桥杯省赛高职JAVA语言C组真题1.标题:猜年龄小明带两个妹妹参加元宵灯会。
别人问她们多大了,她们调皮地说:“我们俩的年龄之积是年龄之和的6倍”。
小明又补充说:“她们可不是双胞胎,年龄差肯定也不超过8岁啊。
”请你写出:小明的较小的妹妹的年龄。
注意:只写一个人的年龄数字,请通过浏览器提交答案。
不要书写任何多余的内容。
2.标题:等额本金小明从银行贷款3万元。
约定分24个月,以等额本金方式还款。
这种还款方式就是把贷款额度等分到24个月。
每个月除了要还固定的本金外,还要还贷款余额在一个月中产生的利息。
假设月利率是:0.005,即:千分之五。
那么,第一个月,小明要还本金1250, 还要还利息:30000 * 0.005,总计1400第二个月,本金仍然要还1250, 但利息为:(30000-1250) * 0.005 总计1393.75请问:小明在第15个月,应该还款多少(本金和利息的总和)?请把答案金额四舍五入后,保留两位小数。
注意:32.5,一定要写为:32.50通过浏览器提交答案,这是一个含有小数点和两位小数的浮点数字。
不要写多余内容(例如:多写了“元”或添加说明文字)4.骰子游戏标题:大衍数列中国古代文献中,曾记载过“大衍数列”, 主要用于解释中国传统文化中的太极衍生原理。
它的前几项是:0、2、4、8、12、18、24、32、40、50 ...其规律是:对偶数项,是序号平方再除2,奇数项,是序号平方减1再除2。
以下的代码打印出了大衍数列的前100 项。
for(int i=1; i<100; i++){if(________________) //填空System.out.println(i*i/2);elseSystem.out.println((i*i-1)/2);}请填写划线部分缺失的代码。
通过浏览器提交答案。
注意:不要填写题面已有的内容,也不要填写任何说明、解释文字。
5.标题:写日志写日志是程序的常见任务。
蓝桥杯试题及答案
蓝桥杯试题及答案一、选择题1. 在Java中,以下哪个关键字用于定义类?A. classB. interfaceC. enumD. struct答案:A2. 下列哪个不是Python的内置数据类型?A. intB. floatC. stringD. list答案:D二、填空题1. 在C语言中,定义一个整型变量的关键字是________。
答案:int2. 在JavaScript中,用于定义函数的关键字是________。
答案:function三、简答题1. 请简述什么是算法的时间复杂度,并给出一个例子。
答案:算法的时间复杂度是指算法执行时间随输入规模增长的变化趋势。
例如,对于一个简单的线性搜索算法,如果数组中有n个元素,最坏情况下需要比较n次,因此其时间复杂度是O(n)。
2. 请解释什么是栈,并给出一个栈的应用场景。
答案:栈是一种后进先出(LIFO)的数据结构,允许在一端进行数据的添加和删除操作。
一个常见的栈的应用场景是函数调用的实现,在编程中,每当调用一个函数,就会将函数的返回地址和局部变量压入栈中,待函数执行完毕后再从栈中弹出。
四、编程题1. 编写一个函数,实现对一个整数数组进行排序。
答案:```javapublic static void sort(int[] array) {for (int i = 0; i < array.length - 1; i++) {for (int j = 0; j < array.length - i - 1; j++) {if (array[j] > array[j + 1]) {int temp = array[j];array[j] = array[j + 1];array[j + 1] = temp;}}}}```2. 编写一个程序,实现计算一个字符串中所有元音字母的数量。
答案:```pythondef count_vowels(s):vowels = "aeiouAEIOU"return sum(1 for char in s if char in vowels)# 示例print(count_vowels("Hello World")) # 输出应该是 3```五、案例分析题1. 描述一个场景,其中使用二叉搜索树(BST)比使用数组更有效,并解释原因。
蓝桥杯c组试题及答案
蓝桥杯c组试题及答案一、选择题(每题5分,共20分)1. 下列关于C语言的描述,错误的是:A. C语言是一种高级语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言支持函数式编程答案:B2. 在C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A3. 下列关于指针的描述,正确的是:A. 指针可以存储变量的地址B. 指针可以存储变量的值C. 指针不能存储数组的地址D. 指针不能存储函数的地址答案:A4. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:D二、填空题(每题5分,共20分)1. 在C语言中,表示逻辑与的运算符是______。
答案:&&2. 用于声明一个整型变量的关键字是______。
答案:int3. 在C语言中,数组的索引是从______开始的。
答案:04. C语言中,用于结束一个程序的语句是______。
答案:return三、编程题(每题30分,共60分)1. 编写一个C语言程序,实现计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```2. 编写一个C语言程序,实现一个简单的计算器,可以计算两个整数的加、减、乘、除。
```c#include <stdio.h>int main() {int a, b;char op;float result;printf("Enter first number: ");scanf("%d", &a);printf("Enter operator (+, -, *, /): ");scanf(" %c", &op);printf("Enter second number: ");scanf("%d", &b);switch (op) {case '+':result = a + b;break;case '-':result = a - b;break;case '*':result = a * b;break;case '/':if (b != 0)result = (float)a / b;else {printf("Division by zero error!\n"); return 1;}break;default:printf("Invalid operator!\n");return 1;}printf("Result: %.2f\n", result);return 0;}```。
蓝桥杯试题集 java c组
蓝桥杯试题集 java c组
1.字符串的拼接:要求编写一个函数,将两个字符串s1和s2
拼接起来,返回拼接后的字符串。
2.数字的排序:给定一个包含若干个整数的数组,将数组中
的元素按照非递减顺序排列。
3.数组的查找:编写一个函数,在给定的整数数组中查找指
定的元素,如果找到则返回该元素的索引,否则返回-1。
4.数组的遍历:编写一个函数,按顺序访问给定整数数组中
的每个元素,并输出它们的值。
5.数组的插入:给定一个有序整数数组和一个目标值,将目
标值插入到数组中的适当位置,以保持数组的有序性。
6.数组的删除:从给定的有序整数数组中删除指定元素,并
保持数组的有序性。
7.数组的查找区间:编写一个函数,在给定的有序整数数组
中查找指定区间的元素,并返回该区间内元素的个数。
8.数组的排序:对给定的整数数组进行排序(升序或降
序),并返回排序后的数组。
9.数组的逆序:编写一个函数,将给定的整数数组逆序排
列。
10.字符串的替换:给定两个字符串s和p,将字符串s中所
有与字符串p匹配的部分替换为指定的字符串q,并返回替换后的字符串。
蓝桥杯java试题及答案
蓝桥杯java试题及答案蓝桥杯是中国著名的计算机科学与技术竞赛,旨在选拔和培养优秀的计算机人才,尤其是高中和大学的学生。
Java是蓝桥杯竞赛中常见的编程语言之一。
本文将介绍一些常见的蓝桥杯Java试题,并提供相应的答案。
一、编程题1. 题目描述:请编写一个Java程序,实现将一个整数数组中的奇数和偶数分别放在两个新数组中,并按照从小到大的顺序排列。
解题思路:可以使用两个ArrayList来保存奇数和偶数,先遍历原数组,将奇数放入奇数数组,将偶数放入偶数数组,然后分别对两个数组进行升序排序。
代码实现:```javaimport java.util.ArrayList;import java.util.Arrays;import java.util.Collections;public class SplitArray {public static void main(String[] args) {int[] arr = {1, 2, 3, 4, 5, 6};ArrayList<Integer> oddList = new ArrayList<>(); ArrayList<Integer> evenList = new ArrayList<>(); for (int num : arr) {if (num % 2 == 0) {evenList.add(num);} else {oddList.add(num);}}Collections.sort(oddList);Collections.sort(evenList);System.out.println("奇数数组:" + oddList);System.out.println("偶数数组:" + evenList);}}```答案分析:该程序首先定义了一个整型数组 `arr`,然后创建两个ArrayList:`oddList`用于保存奇数,`evenList`用于保存偶数。
2016-决赛-Java大学-C组
2016年决赛Java大学C组考生须知:●考试开始后,选手首先下载题目,并使用考场现场公布的解压密码解压试题。
●考试时间为4小时。
时间截止后,提交答案无效。
●在考试强制结束前,选手可以主动结束考试(需要身份验证),结束考试后将无法继续提交或浏览答案。
●选手可浏览自己已经提交的答案。
被浏览的答案允许拷贝。
●对同一题目,选手可多次提交答案,以最后一次提交的答案为准。
●选手切勿在提交的代码中书写“姓名”、“考号”,“院校名”等与身份有关的信息或其它与竞赛题目无关的内容,否则成绩无效。
●选手必须通过浏览器方式提交自己的答案。
选手在其它位置的作答或其它方式提交的答案无效。
●试题包含三种类型:“结果填空”、“代码填空”与“程序设计”。
结果填空题:要求选手根据题目描述直接填写结果。
求解方式不限。
不要求源代码。
答案直接通过网页提交即可。
不要书写多余的内容。
代码填空题:要求选手在弄清给定代码工作原理的基础上,填写缺失的代码,使得程序逻辑正确。
所填写的代码不超过一条语句(即中间不能出现分号)。
把答案(仅填空处的答案,不包括题面已存在的代码或符号)直接通过网页提交。
不要书写多余的内容(比如注释)。
程序设计题目:要求选手设计的程序对于给定的输入能给出正确的输出结果。
考生的程序只有能运行出正确结果才有机会得分。
注意:在评卷时使用的输入数据与试卷中给出的示例数据可能是不同的。
选手的程序必须是通用的,不能只对试卷中给定的数据有效。
所有源码必须在同一文件中。
调试通过后,拷贝提交。
注意:不要使用package语句。
源程序中只能出现JDK1.6中允许的语法或调用。
不能使用1.7或更高版本的特性。
注意:选手代码的主类名必须为:Main,否则会被判为无效代码。
1.结果填空(满分15分)问题的描述在考生文件夹下对应题号的“题目.txt”中。
相关的参考文件在同一目录中。
不限解决问题的方式或工具,只要求结果。
只能通过浏览器提交答案。
2.结果填空(满分29分)问题的描述在考生文件夹下对应题号的“题目.txt”中。
c蓝桥杯试题及答案
c蓝桥杯试题及答案蓝桥杯试题及答案蓝桥杯是中国最具影响力和参与度最高的计算机科学和信息技术竞赛,是由中国科学院计算技术研究所创办的全国性高校计算机能力大赛。
本文将为大家介绍蓝桥杯试题的一些特点以及提供一些参考答案。
一、蓝桥杯试题的特点蓝桥杯试题旨在考察学生的计算机编程水平和创新能力,题目类型多样,难度适中。
以下是一些蓝桥杯试题的常见特点:1. 综合性:蓝桥杯试题通常会综合多个知识点,考察学生对于不同知识的综合运用能力。
例如,一道试题可能结合了数据结构、算法和编程语言等多个方面的知识。
2. 实践性:蓝桥杯试题注重学生的实践能力,会设计一些需要编程实现的题目,以此来考察学生的编程能力和解决实际问题的能力。
3. 创新性:蓝桥杯试题鼓励学生的创新思维,会提供一些开放性的问题,让学生自由发挥,展现自己的创造力。
4. 考察面广:蓝桥杯试题的题目涵盖了计算机科学和信息技术的各个方面,包括但不限于数据结构、算法、网络编程、人工智能等。
二、蓝桥杯试题参考答案示例以下是一些蓝桥杯试题的参考答案示例,供大家参考:1. 编程题题目描述:请编写一个程序,实现输入一个整数n,输出1到n之间的所有偶数。
参考答案:```pythonn = int(input("请输入一个整数n:"))for i in range(1, n+1):if i % 2 == 0:print(i)```2. 算法题题目描述:有一个整数数组,请实现一个算法,找出数组中两个数的和等于给定目标值的所有组合,返回这些组合。
参考答案:```pythondef find_combinations(nums, target):result = []for i in range(len(nums)-1):for j in range(i+1, len(nums)):if nums[i] + nums[j] == target:result.append((nums[i], nums[j]))return resultnums = [2, 4, 6, 8, 10]target = 12print(find_combinations(nums, target))```3. 开放性题题目描述:设计一个应用程序,实现手机定位功能并展示当前位置的地图。
2016年蓝桥杯java高职C组
2016年蓝桥杯Java C组考试题(考试日期2016320日)第一题:有奖猜谜小明很喜欢猜谜语。
最近,他被邀请参加了X 星球的猜谜活动。
每位选手开始的时候都被发给777 个电子币。
规则是:猜对了,手里的电子币数目翻倍,猜错了,扣除555 个电子币, 扣完为止。
小明一共猜了15 条谜语。
战果为:vxvxvxvxvxvxvvx 其中v 表示猜对了,x 表示猜错了。
请你计算一下,小明最后手里的电子币数目是多少请填写表示最后电子币数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
public static void main( Str in g[] args) {int n=777;for (int i=1;i<=12;i++){if (i%2!=0){n=n *2;}elsen=n-555;}n=n *2;n=n *2;n=n-555;System. out .println(n); |}答案:58497第二题:煤球数目有一堆煤球,堆成三角棱锥形。
具体: 第一层放1 个,第二层3 个(排列成三角形),第三层6 个(排列成三角形),第四层10 个(排列成三角形),如果一共有100 层,共有多少个煤球?请填表示煤球总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
public static void main(String[] args) {int sum[]= new int [101];int sum1=0;int s=0;for ( int i=1;i<=100;i++){sum1=sum1+i;sum[i]=sum1;s=s+sum[i];}System. out .println(s);}答案:171700第二题:平方怪圈如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。
对新产生的正整数再做同样的处理。
如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。
蓝桥杯java试题及答案
蓝桥杯java试题及答案【篇一:蓝桥杯java历年真题(共129道题目及答案)】这样的,如果给定n个不同字符,将这n个字符全排列,最终的结果将会是n!种。
如:给定a、b、c三个不同的字符,则结果为:abc^ acb、bac、bca、cab> cba—共3!=3*2=6 种情况。
package questiord_9;〃有问题。
-广import java.util.scan ner;import java.util.vector;public class questiord {public static long count=0;private void fullpermutation(vectorcharactersourse, vectorcharacter result) {if(sourse.size()==0){for (int i = 0; i result.size(); i++) {system.out. print(result.elementat(i));}system.out. print(\n);count++;return;}for (int i = 0; i sourse.size(); i++) { vectorcharactertsourse=new vectorcharacter(sourse); vectorcharactertresult=new vectorcharacter( result); tresult.add(sourse.elementat(i)); tsourse.remove(i);new question1().fullpermutation(tsourse, tresult);}}public static void main(stringQ args) { scanner seanner=new scanner(system」n); int n=scanner.nextint();vectorcharacter sourse=new vectorcharacter(); vectorcharacter result=new vectorcharacter();for (int i = 0; i n; i++) {sourse.add((char)(a-i-i));}new questiord().fullpermutation(sourse, result); system.out. pri ntln (questionl.count);}}*/方法二import java.util.arraylist;import java.util.iterator;import java.util」inkedhashset;import java.util.list;import java.util.sca nn er;import java.util.set;public class demo03 {II去掉重复元素,放入lispublic static void removeduplicate(string s,setcharacter lis){ for(char x:s.tochararray()){ lis.add(x);}}II为方便操作将sets转lispublic static void convert(listcharacter lis,setcharactersets){ iteratorcharacter iter = sets.iterator();while(iter.hasnext()){ lis.add(iter.next());II检测符合条件的元素组合public static void check(setcharacter sets){ listcharacter lis = new arraylistcharacter(); convert(lis,sets); II为方便操作将sets 转lis stringbuffer sb = new stringbuffer();for(int i=0;ilis.size()-2;i++){for(int j=i+1 ;j+1 lis.size();j++){// 向后添加两位,所以j+1 lis.size() for(int k=j+1;klis.size();k++){sb.appe nd(lis.get(i)); sb.append(lis.get(j)); sb.append(lis.get(k)); system.out.println(sb); II输出组合sb.setlength(O); II清空}}}}public static void main(string[] args){scanner scan = new scanner(system.in); system.out.println(输入串(不夭于30个李符)。
2016第七届蓝桥杯大赛CC 大学C组省赛真题详解
}
}
int main()
{
int i;
int a[] = {5,13,6,24,2,8,19,27,6,12,1,17};
int N = 12;
quicksort(a, 0, N-1);
for(i=0; i<N; i++) printf("%d ", a[i]);
第七届蓝桥杯大赛个人赛省赛(软件类)
C/C++大学C组
一、
试题
1、报纸页数
X星球日报和我们地球的城市早报是一样的,
都是一些单独的纸张叠在一起而已。每张纸印有4版。
比如,某张报纸包含的4页是:5,6,11,12,
可以确定它应该是最上边的第2张报纸。
我们在太空中捡到了一张X星球的报纸,4个页码分别是:
1125,1126,1727,1728
请你计算这份报纸一共多少页(也就是最大页码,并不是用了几张纸哦)?
请填写表示总页数的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
2、煤球数目
有一堆煤球,堆成三角棱锥形。具体:
第一层放1个,
第二层3个(排列成三角形),
第三层6个(排列成三角形),
第四层10个(排列成三角形),
+---+---+---+---+---+---+---+---+---+---+
| | | | | | | | | | |
+---+---+---+---+---+---+---+---+---+---+
蓝桥杯高职java试题及部分参考答案
2019年选拔赛 java 高职考生须知:考试时间为4小时。
本试卷包含两种题型:“代码填空”与“程序设计”。
总计100分。
其中代码填空:3+3+4+6+7+9+10 = 42 分程序设计:14+17+27 = 58分填空题要求参赛选手在弄清给定代码工作原理的基础上填写缺失的部分,使得程序逻辑正确、完整。
所填写的代码不超过一条语句(即不能出现分号)。
把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
编程题要求选手设计的程序对于给定的输入能给出正确的输出结果。
考生的程序只有能运行出正确结果的时候才有机会得分。
注意:在评卷时使用的输入数据与试卷中给出的实例数据可能是不同的。
选手的程序必须是通用的,不能只对试卷中给定的数据有效。
对每个题目,要求考生把所有类写在一个文件中。
调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
相关的工程文件不要拷入。
请不要使用package语句。
另外,源程序中只能出现JDK1.5中允许的语法或调用。
不能使用1.6或更高版本。
1.代码填空(满分3分)计算蔬菜总价为了丰富群众菜篮子,平抑菜价,相关部分组织了蔬菜的调运。
今某箱中有多个品种的蔬菜。
蔬菜的单价(元/公斤)存放在price数组中,蔬菜的重量(公斤)存放在weight数组中。
下面的代码计算该箱蔬菜的总价,试完善之。
把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
public static double getTotal(double[] price, double[] weight)double x = 0;for(int i=0; i<price.length; i++)____________________;return x;2.代码填空(满分3分)计算行程低碳生活,有氧运动。
骑自行车出行是个好主意。
小明为自己的自行车装了个计数器,可以计算出轮子转动的圈数。
2016蓝桥杯试卷答案【可编辑】
1. 代码填空(满分3分)神秘的三位数有这样一个3位数,组成它的3个数字阶乘之和正好等于它本身。
即:abc = a! + b! + c!下面的程序用于搜索这样的3位数。
请补全缺失的代码。
int JC[] = {1,1,2,6,24,120,720,5040,40320,362880};int i;for(i=100; i<1000; i++){int sum = 0;int x = i;while(____){sum += JC[x%10];x /= 10;}if(i==sum) printf("%d\n", i);}//预赛NO.1题#include <stdio.h>void main(){int JC[] = {1,1,2,6,24,120,720,5040,40320,362880};int i;int sum;int x;for (i=100; i<1000; i++){sum = 0;x = i;while (x){sum += JC[x%10];x /= 10;}if (i == sum){printf("%d\n",i);}}}复制代码2. 代码填空(满分4分)歌赛新规则歌手大赛的评分规则一般是去掉一个最高分,去掉一个最低分,剩下的分数求平均。
当评委较少的时候,如果我们只允许去掉一个分数,该如何设计规则呢?有人提出:应该去掉与其余的分数平均值相差最远的那个分数。
即“最离群”的分数。
以下的程序用于实现这个功能。
其中x存放所有评分,n表示数组中元素的个数。
函数返回最“离群”的那个分数值。
请补全缺失的代码。
double score(double x[], int n){int i,j;double dif = -1;double bad;for(i=0; i<n; i++){double sum = 0;for(j=0; j<n; j++){if(________) sum += x[j];}double t = x[i] - sum / (n-1);if(t<0) t = -t;if(t>dif){dif = t;bad = x[i];printf("%d, %f\n", i, x[i]);}}return bad;}//预赛NO.2题#include <stdio.h>void main(){double x[10] = {7,8,8,8,8,20,8,8,8,8};int i,j;double dif = -1;double bad;double sum;int n=10;double t;for (i=0;i<10;i++){sum = 0;for (j=0; j<n ; j++){if (j!=i) sum+=x[j];}t = x[i]-sum/(n-1);if (t<0) t = -t;if (t>dif){dif = t;bad = x[i];printf("%d,%f\n",i,x[i]);}}printf("bad = %lf\n",bad);}复制代码3. 代码填空(满分4分)反转串我们把“cba”称为“abc”的反转串。
2015年蓝桥杯javac组第二题
题目:2015年蓝桥杯javac组第二题内容要点:1. 题目描述:给定一个字符串,要求在字符串中找出最长的连续不重复子串,并返回它的长度。
2. 输入:一个字符串,长度不超过xxx。
3. 输出:一个整数,表示最长的连续不重复子串的长度。
4. 例子:输入 "abcabcbb",输出 3;输入 "bbbbb",输出 1;输入"pwwkew",输出 3。
5. 解题思路:采用滑动窗口的方法,遍历字符串的过程中,维护一个窗口,通过移动窗口的起始位置和结束位置来寻找最长的连续不重复子串。
6. 算法步骤:6.1 初始化最长长度maxLength为0,起始位置start为0,字符索引字典charIndexDict为空。
6.2 遍历字符串,对于每个字符:6.2.1 如果字符在字典中存在且索引大于等于start,则将start移动到当前字符索引的下一个位置。
6.2.2 计算最长长度maxLength和当前窗口长度的较大值。
6.2.3 将当前字符的索引存入字典中。
7. 代码实现:```javapublic class Solution {public int lengthOfLongestSubstring(String s) {int maxLength = 0;int start = 0;Map<Character, Integer> charIndexMap = new HashMap<>();for (int end = 0; end < s.length(); end++) {char c = s.charAt(end);if (charIndexMap.cont本人nsKey(c) charIndexMap.get(c) >= start) {start = charIndexMap.get(c) + 1;}maxLength = Math.max(maxLength, end - start + 1); charIndexMap.put(c, end);}return maxLength;}}```文章结构:1. 概述:介绍2015年蓝桥杯javac组第二题的题目描述。
第九届蓝桥杯校内选拔赛16级试题
第九届蓝桥杯校内选拔赛C语言组16级学生试题班级_ _ __ 姓名_ _ 学号_ _ 成绩_注意事项:●开始答题前请首先在桌面上创建一个文件夹,命名为学号+姓名,例如“1010001张三”●答题时在刚创建的文件夹下创建本题题号命名的文件夹。
例如第一题:“01”●本次考试时间为两小时三十分钟●每题20分,考核具体得分时除运算结果外,需要比较程序的结构与运行效率。
●考试结束后,请将此文件填好个人信息,保存至考试文件夹。
然后将考试文件夹整体压缩后上传到教师机。
●如有任何疑问,请询问监考教师1、求表达式的值求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
例如输入n=5,a=2则计算2+22+222+2222+22222并输出如果输入n=4,a=1则计算1+11+111+11112、求数字的位数给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。
例如输入32145则输出该数为5位数 5 4 1 2 3(逆序输出每一位)3、打印出如下图案(菱形)*************************4、分解数字的立方任何一个自然数m的立方均可写成m个连续奇数之和。
例如:1^3=12^3=3+53^3=7+9+114^3=13+15+17+19输出样例:输入: 4输出:4^3=13+15+17+195、猜年龄美国数学家维纳(N.Wiener)智力早熟,11岁就上了大学。
他曾在1935~1936年应邀来中国清华大学讲学。
一次,他参加某个重要会议,年轻的脸孔引人注目。
于是有人询问他的年龄,他回答说:“我年龄的立方是个4位数。
我年龄的4次方是个6位数。
这10个数字正好包含了从0到9这10个数字,每个都恰好出现1次。
”请你编程实现计算他当时到底有多年轻,并输出他的年龄。
6、核桃的数量小张是软件项目经理,他带领3个开发组。
第七届蓝桥杯大赛2016年蓝桥杯个人赛(电子类)省赛单片机设计与开发科目
第七届蓝桥杯大赛2016年蓝桥杯个人赛(电子类)省赛单片机设计与开发科目准考证号工位号注意:只填写准考证号和工位号,否则试卷作废密封线-----------------------------------------------------------------------------第七届蓝桥杯全国软件和信息技术专业人才大赛个人赛(电子类)省赛单片机设计与开发科目竞赛时间:5小时题号一二三总分配分 10 30 60 100分得分“模拟风扇控制系统”设计任务书功能简述“模拟风扇控制系统”能够模拟电风扇工作,通过按键控制风扇的转动速度和定时时间,数码管实时显示风扇的工作模式,动态倒计时显示剩余的定时时间,系统主要由数码管显示、单片机最小系统、按键输入和电机控制保护电路组成,系统框图如图1所示:图1. 系统框图单总线驱动程序、CT107D 单片机考试平台电路原理图以及本题所涉及到的芯片数据手册,可参考计算机上的电子文档。
程序流程图及相关工程文件请以考生号命名,并保存在计算机上的考生文件夹中(文件夹名为考生准考证号,文件夹保存在监考员指定位置)。
DS18B20MCU按键输入 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四个按键完成按键控制功能。
蓝桥杯历年c语言试题及答案
蓝桥杯历年c语言试题及答案蓝桥杯历年C语言试题及答案1. 题目一:数组反转要求:编写一个函数,实现对整数数组的反转。
输入:一个整数数组及其长度。
输出:反转后的数组。
答案:```cvoid reverseArray(int arr[], int n) {int temp;for (int i = 0; i < n / 2; i++) {temp = arr[i];arr[i] = arr[n - i - 1];arr[n - i - 1] = temp;}}```2. 题目二:寻找最大数要求:给定一个整数数组,找出其中的最大数。
输入:一个整数数组及其长度。
输出:数组中的最大数。
答案:```cint findMax(int arr[], int n) {int max = arr[0];for (int i = 1; i < n; i++) {if (arr[i] > max) {max = arr[i];}}return max;}```3. 题目三:计算阶乘要求:编写一个函数,计算给定非负整数的阶乘。
输入:一个非负整数。
输出:该整数的阶乘。
答案:```clong long factorial(int n) {if (n == 0) return 1;long long fact = 1;for (int i = 1; i <= n; i++) {fact *= i;}return fact;}```4. 题目四:字符串反转要求:编写一个函数,实现对字符串的反转。
输入:一个字符串。
输出:反转后的字符串。
答案:```cvoid reverseString(char str[]) {int length = strlen(str);char temp;for (int i = 0; i < length / 2; i++) {temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```5. 题目五:判断素数要求:编写一个函数,判断给定的整数是否为素数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2016年蓝桥杯Java C组考试题(考试日期2016/3/20日)第一题:有奖猜谜小明很喜欢猜谜语。
最近,他被邀请参加了X星球的猜谜活动。
每位选手开始的时候都被发给777个电子币。
规则是:猜对了,手里的电子币数目翻倍,猜错了,扣除555个电子币, 扣完为止。
小明一共猜了15条谜语。
战果为:vxvxvxvxvxvxvvx其中v表示猜对了,x表示猜错了。
请你计算一下,小明最后手里的电子币数目是多少。
请填写表示最后电子币数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
public static void main(String[] args) {int n=777;for(int i=1;i<=12;i++){if(i%2!=0){n=n*2;}elsen=n-555;}n=n*2;n=n*2;n=n-555;System.out.println(n);}答案:58497第二题:煤球数目有一堆煤球,堆成三角棱锥形。
具体:第一层放1个,第二层3个(排列成三角形),第三层6个(排列成三角形),第四层10个(排列成三角形),....如果一共有100层,共有多少个煤球?请填表示煤球总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
public static void main(String[] args) {int sum[]=new int[101];int sum1=0;int s=0;for(int i=1;i<=100;i++){sum1=sum1+i;sum[i]=sum1;s=s+sum[i];}System.out.println(s);}答案:171700第三题:平方怪圈如果把一个正整数的每一位都平方后再求和,得到一个新的正整数。
对新产生的正整数再做同样的处理。
如此一来,你会发现,不管开始取的是什么数字,最终如果不是落入1,就是落入同一个循环圈。
请写出这个循环圈中最大的那个数字。
请填写该最大数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int max=0;for(int i=1;i<=50;i++){String st=""+n;int len=st.length();int[] a=new int[len];for(int j=0;j<len;j++){a[j]=Integer.parseInt(st.substring(j,j+1));a[j]=a[j]*a[j];}int sum=0;for(int j=0;j<len;j++){sum=sum+a[j];}n=sum;max=Math.max(max,n);}System.out.println(max);}答案:145第四题:骰子游戏我们来玩一个游戏。
同时掷出3个普通骰子(6个面上的数字分别是1~6)。
如果其中一个骰子上的数字等于另外两个的和,你就赢了。
下面的程序计算出你能获胜的精确概率(以既约分数表示).\ public class Main{public static int gcd(int a, int b){if(b==0) return a;return gcd(b,a%b);}public static void main(String[] args){int n = 0;for(int i=0; i<6; i++)for(int j=0; j<6; j++)for(int k=0; k<6; k++){if(i + j+2 == k+1 || i + k+2 == j+1 || k + j+2 == i+1) n++; //填空位置}int m = gcd(n,6*6*6);System.out.println(n/m + "/" + 6*6*6/m);}}仔细阅读代码,填写划线部分缺少的内容。
注意:不要填写任何已有内容或说明性文字。
第五题:分小组9名运动员参加比赛,需要分3组进行预赛。
有哪些分组的方案呢?我们标记运动员为A,B,C, (I)下面的程序列出了所有的分组方法。
该程序的正常输出为:ABC DEF GHIABC DEG FHIABC DEH FGIABC DEI FGHABC DFG EHIABC DFH EGIABC DFI EGHABC DGH EFIABC DGI EFHABC DHI EFGABC EFG DHIABC EFH DGIABC EFI DGHABC EGH DFIABC EGI DFHABC EHI DFGABC FGH DEIABC FGI DEHABC FHI DEGABC GHI DEFABD CEF GHIABD CEG FHIABD CEH FGIABD CEI FGHABD CFG EHIABD CFH EGIABD CFI EGHABD CGH EFIABD CGI EFHABD CHI EFGABD EFG CHI..... (以下省略,总共560行)。
public class A{public static String remain(int[] a){String s = "";for(int i=0; i<a.length; i++){if(a[i] == 0) s += (char)(i+'A');}return s;}public static void f(String s, int[] a){for(int i=0; i<a.length; i++){if(a[i]==1) continue;a[i] = 1;for(int j=i+1; j<a.length; j++){if(a[j]==1) continue;a[j]=1;for(int k=j+1; k<a.length; k++){if(a[k]==1) continue;a[k]=1;System.out.println(s+" "+(char)(i+'A') + (char)(j+'A') + (char)(k+'A')+" "+remain(a)); //填空位置a[k]=0;}a[j]=0;}a[i] = 0;}}public static void main(String[] args){int[] a = new int[9];a[0] = 1;for(int b=1; b<a.length; b++){a[b] = 1;for(int c=b+1; c<a.length; c++){a[c] = 1;String s = "A" + (char)(b+'A') + (char)(c+'A');f(s,a);a[c] = 0;}a[b] = 0;}}}仔细阅读代码,填写划线部分缺少的内容。
注意:不要填写任何已有内容或说明性文字。
第六题:凑算式B DEFA + --- + ------- = 10C GHI(如果显示有问题,可以参见【图1.jpg】)这个算式中A~I代表1~9的数字,不同的字母代表不同的数字。
比如:6+8/3+952/714 就是一种解法,5+3/1+972/486 是另一种解法。
这个算式一共有多少种解法?注意:你提交应该是个整数,不要填写任何多余的内容或说明性文字。
递归:static int count=0;static boolean[] date;public static void main(String[] args) {int[] a=new int[10];date=new boolean[10];dp(a,1);System.out.println(count);}static void dp(int[] a,int s){if(s==10){if(a[3]==0||a[7]==0||a[8]==0||a[9]==0){return;}double q=(double)a[2]/a[3];double w=(a[4]*100+a[5]*10+a[6])*1.00/(a[7]*100+a[8]*10+a[9]);double e=(double)a[1];if(q+w+e==10.00)count++;return ;}for(int i=1;i<=9;i++){if(date[i]==false){date[i]=true;a[s]=i;dp(a,s+1);date[i]=false;}}}答案:29第七题:搭积木小明最近喜欢搭数字积木,一共有10块积木,每个积木上有一个数字,0~9。
搭积木规则:每个积木放到其它两个积木的上面,并且一定比下面的两个积木数字小。
最后搭成4层的金字塔形,必须用完所有的积木。
下面是两种合格的搭法:1 23 4 56 7 8 93 17 5 29 8 6 4请你计算这样的搭法一共有多少种?请填表示总数目的数字。
注意:你提交的应该是一个整数,不要填写任何多余的内容或说明性文字。
递归:static int count=0;static boolean[] date;public static void main(String[] args) {int[] a=new int[10];date=new boolean[10];dp(a,0);System.out.println(count);}static void dp(int[] a,int s){if(s==10){if(a[0]>a[1]||a[0]>a[2])return;else if(a[1]>a[3]||a[1]>a[4])return;else if(a[2]>a[4]||a[2]>a[5])return;else if(a[3]>a[6]||a[3]>a[7])return;else if(a[4]>a[7]||a[4]>a[8])return;else if(a[5]>a[8]||a[5]>a[9])return;else{count++;return;}}for(int i=0;i<=9;i++){if(date[i]==false){date[i]=true;a[s]=i;dp(a,s+1);date[i]=false;}}}答案:768第八题:冰雹数任意给定一个正整数N,如果是偶数,执行:N / 2如果是奇数,执行:N * 3 + 1生成的新的数字再执行同样的动作,循环往复。