实现下列功能。
1)程序随机分配给用户一个 1 至 100 之间的整数
2)用户通过键盘输人自己的猜测
3)程序返回提示信息,提示信息分别是:“猜大了”、“猜小了”和“猜对了”
4)如果输入的不是数字,提示并退出
5)如果输入的数字超过100,提示:“超过要求范围”
6)用户可根据提示信息再次输入猜测,直到提示信息是“猜对了”
7)用户猜对以后,显示猜测次数,并提供“重新开始”和“退出”功能
1
2
3import java.util.Random;//引用生成随机数的包 import java.util.Scanner;//引用从键盘输入数据的包
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53public class RandomNumber{ public static void main (String[] args){ Random random = new Random(); Scanner reader = new Scanner(System.in); int getNumber = 0;//存储从键盘获得的数 int times;//记录猜测的次数 int select = 1;//判断选择开始/结束,1进行游戏,0结束 int guessSelect = 1;//猜测10次后,1继续猜测,0结束 start: do{ times = 0;//更新猜测次数为0 int createRandom = random.nextInt(100)+1;//nextInt生成上限为100的整数,不包括100 do{ times++; try{ System.out.print("请猜测一个数(1-100):"); getNumber =reader.nextInt(); }catch(Exception e){ System.out.println("输入不为数字!系统即将退出!本轮游戏结束!"); break start; } if(getNumber > 100){ System.out.println("第"+times+"次输入数字超过要求范围!"); } else if(getNumber < createRandom){ System.out.println("第"+times+"次猜测 猜小了!"); } else if(getNumber > createRandom){ System.out.println("第"+times+"次猜测 猜大了!"); } if(times/10 > 0 && times%10 == 0){ System.out.print("请选择‘继续猜测’(1)或者‘公布答案’(0):"); getNumber = reader.nextInt(); guessSelect = getNumber; if(guessSelect==0){ break; } } }while(getNumber != createRandom); if(times/10 > 0 && times%10 == 0){ System.out.println("已猜测"+times+"次,未猜中,游戏失败!n本局的正确数字为:"+createRandom); } else{ System.out.println("恭喜你!第"+times+"次猜对了!"); } System.out.print("请选择‘重新开始’(1)或者‘结束’(0):"); getNumber = reader.nextInt(); select = getNumber; }while(select==1); } }
1、随机:Random
import java.util.Random;//引用生成随机数的包
Random random = new Random();
int createRandom = random.nextInt(100)+1;
设置对象,获取一个随机数
next后的为随机数的类型,第一个字母大写
nextInt(100)表示:上限为100的整数,不包括100
2、键盘输入:Scanner
import java.util.Scanner;//引用从键盘输入数据的包
Scanner reader = new Scanner(System.in);
int getNumber = 0;//存储从键盘获得的数
System.out.print(“请猜测一个数(1-100):”);//可以忽略,仅为提示作用
getNumber =reader.nextInt();
3、循环语句:do{}while();
do{
}while(getNumber != createRandom);
do while与while的区别:
do while 至少进入循环进行一次循环(不一定完整,可能被break结束),而while有可能一次也没有进入循环。
4、标记(记号):continue、break
start: //记号
do{
break start;
}while(getNumber != createRandom);
标记要在循环前面,没有的话,可能会找不到该标记
1)一般的continue:会退回当前循环的开头,并继续执行。
2)带标签的continue:回到达标签的位置,并重新进入紧接在哪个标签后面的循环。
3)一般的break:会中断并跳出当前循环。
4)带标签的break:会中断并跳出标签所指的循环。
5、捕抓异常:try{}catch(IOException s){}
try{
System.out.print(“请猜测一个数(1-100):”);
getNumber =reader.nextInt();
}catch(Exception e){
System.out.println(“输入不为数字!系统即将退出!本轮游戏结束!”);
break start;
}
try{ }内为判断是否有异常的内容
IOException s的s并不代表什么,可以自定
后面的{}是捕抓这个异常后要做的内容
6、运行结果:
1)成功运行并重新开始游戏
2)成功运行并结束游戏
3)每猜测10次未猜中,选择是否继续猜
4)输入非数字,结束游戏
5)输入的数据大于100,记录次数并进行下一次猜测
最后
以上就是疯狂冬瓜最近收集整理的关于随机生成猜数字(键盘输入)的全部内容,更多相关随机生成猜数字(键盘输入)内容请搜索靠谱客的其他文章。
发表评论 取消回复