题目:猜数字游戏
要求:(1)游戏后台随机生成1-20之间的5个数(无所谓是否重复),然后让大家来猜数字,
- 为猜中提示“未命中”,并继续猜测
- 猜中提示:“运气不错,猜中了“,并输出该数据第一次出现的位置,并且输出全部5个数据,最终结果结束本次游戏
分析:
- 随机生成5个1-20之间的随机数,定义动态数组存储起来
- 定义死循环,玩家输入所猜测的数据,遍历数组,判断数据是否在数组中,如果在,进行对应提示并结束死循环,如果没有猜中,提示继续猜测直到猜中为止
- 随机数产生的方法:
- 方法一:sysNumber= (int)(Math.random()*20)+1;
- 方法二:和用户输入一样,先引入JAVA已经写好的API程序文件import java.util.Random
- 初始化随机数对象:Random r=new Random();
- 再用用对象访问:int data=r.nextInt(bound:20)+1;//产生一个1-20之间的随机数
代码如下:
//JRE中的核心内库中的API包,其中包含java已经写好的程序,相当与c语言中的头文件 import java.util.Scanner; public class random { public static void main(String[] args) { //定义一个长度为5的动态数组 int[] randomNumber = new int[5]; //随机产生5个随机数并存入动态数组之中 for (int i = 0; i < randomNumber.length; i++) { randomNumber[i] = (int) (Math.random() * 20) + 1; } //用户开始猜测数字 Scanner scanner = new Scanner(System.in); System.out.println("请输入你所猜测的数字:"); OUT: while(true) { int guessNumber=scanner.nextInt();//用户输入一个猜测数 for(int j=0;j<randomNumber.length;j++){ if(guessNumber==randomNumber[j]){ System.out.println("恭喜你猜对了,索引的位置在"+j); break OUT; } } System.out.println("当前猜测的数据不存在,请重新输入:"); } System.out.println("产生的5个随机数分别为:"); for(int i=0;i<randomNumber.length;i++) { System.out.println(randomNumber[i]); } } }
运行结果如图所示: