2016年度蓝桥杯java高职C组
- 格式:doc
- 大小:35.47 KB
- 文档页数:15
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;
}
else
n=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 { a[j]=Integer.parseInt(st.substring(j,j+1)); a[j]=a[j]*a[j]; } int sum=0; for(int j=0;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 GHI ABC DEG FHI ABC DEH FGI ABC DEI FGH ABC DFG EHI