【蓝桥杯省赛】冲刺练习题【填空题】倒计时【07】天
🙏🤗距离【第十三届蓝桥杯4月9日省赛】仅剩【07天】🤗🙏
📋今日题型:【填空题】📋
⭐️🤗循环是一切暴力的基础,暴力基础,转起来。🤗⭐️
🤗国一镇楼🤗
📋比赛题目与分数比例📋
确认范围:
结果填空题5道,共计45分。
程序设计题5道,共计105分。
⭐️🤗刷题安排🤗⭐️
日期 | 题目类型 | 题目数量 |
3月25日 | 循环 | 6 |
3月26日 | 超大数 | 6 |
3月27日 | 数组 | 6 |
3月28日 | 枚举 | 6 |
3月29日 | 递归 | 6 |
3月30日 | 绘图 | 6 |
3月31日 | 深搜广搜 | 5 |
4月1日 | 动态规划 | 5 |
4月2日 | 填空题 | 5 |
4月3日 | 数学公式:查询准考证 | 5 |
4月4日 | 第十届省赛题 | 10 |
4月5日 | 第十一届省赛题 | 10 |
4月6日 | 第十二届省赛1套题 | 10 |
4月7日 | 第十二届省赛2套题 | 10 |
4月8日 | 经典题目练习 | 8 |
4月9日 | 9点考试 |
目录
1、报数游戏
有n个孩子站成一圈,从第一个孩子开始顺时针方向报数,报到3的人出列,下一个人继续从1报数,直到最后剩下一个孩子为止。问剩下第几个孩子。下面的程序以10个孩子为例,模拟了这个过程,请完善之(提示:报数的过程被与之逻辑等价的更容易操作的过程所代替)。
Vector a = new Vector();
for(int i=1; i<=10; i++)
{undefined
a.add("第" + i + "个孩子");
}
for(;;)
{undefined
if(a.size()==1) break;
for(int k=0; k<2; k++)
________________;
a.remove(0);
}
System.out.println(a);
填写:
结果:
2、不连续处断开
下列代码运行结果为:
12345
23456
89
23456789
即把一个串从数字不连续的位置断开。试完善之。
结果:
填写:(注意没有;)
3、猜数字
很多人都玩过这个游戏:甲在心中想好一个数字,乙来猜。每猜一个数字,甲必须告诉他是猜大了,猜小了,还是刚好猜中了。下列的代码模拟了这个过程。其中用户充当甲的角色,计算机充当乙的角色。为了能更快地猜中,计算机使用了二分法。
阅读分析代码,填写缺失的部分。
把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
System.out.println("请在心中想好一个数字(1~100),我来猜");
System.out.println("我每猜一个数字,你要告诉我是“猜大了”,“猜小了”,还是“猜中”");
Scanner scan = new Scanner(System.in);
int v1 = 1;
int v2 = 100;
for(;;)
{undefined
int m = (v1 + v2)/2;
System.out.println("我猜是:" + m);
System.out.println("1.猜得太大了");
System.out.println("2.猜得太小了");
System.out.println("3.猜中!");
System.out.print("请选择:");
int user = Integer.parseInt(scan.nextLine());
if(user==3) break;
if(user==1) _____________;
if(user==2) _____________;
}
填空:
4、反转串
我们把“cba”称为“abc”的反转串。
求一个串的反转串的方法很多。下面就是其中的一种方法,代码十分简洁(甚至有些神秘),请聪明的你通过给出的一点点线索补充缺少的代码。
把填空的答案(仅填空处的答案,不包括题面)存入考生文件下对应题号的“解答.txt”中即可。
public static String reverseString(String x)
{undefined
if(x==null || x.length()<2) return x;
return ____________________ + x.charAt(0);
}
填空:
reverseString(x.substring(1))+ x.charAt(0)
过程:
5、第一个数字
以下的静态方法实现了:把串s中第一个出现的数字的值返回。
如果找不到数字,返回-1
例如:
s = "abc24us43" 则返回2
s = "82445adb5" 则返回8
s = "ab" 则返回-1
public static int getFirstNum(String s)
{undefined
if(s==null || s.length()==0) return -1;
char c = s.charAt(0);
if(c>='0' && c<='9') return _____________; //填空
return ___________________; //填空
}
请分析代码逻辑,并推测划线处的代码。
答案写在 “解答.txt” 文件中
注意:只写划线处应该填的内容,划线前后的内容不要抄写。
结果:
过程:
(例1):
(例2):
附加、递归连续数
以下程序打印出0~9的数字,请补充缺少的代码。
public class MyTest
{
public static void f(int begin, int end)
{
__________________;
System.out.println(begin);
f(begin+1, end);
}
public static void main(String[] args)
{
f(0,9);
}
}
填空:
到这里,蓝桥的模型提基本上都练习过了,希望能对大家的比赛有所帮助。
- 点赞
- 收藏
- 关注作者
评论(0)