Java实现猜数字小游戏
猜数字游戏
写程序随即生成一个0-100之间的随机数。程序会提示用户输入一个数字,不停猜测,直到猜对为止。最后输出猜测的数字,和猜测的次数。如果没有猜中会提示用户输入的数字是大了还是小了。
游戏具体操作如下:
1.后台生成一个1-100之间的随机数Random r = new Random();
int num = r.nextInt(100) + 1
2.用户键盘录入猜数字Scanner sc = new Scanner(System.in);
2.将用户猜的数组与随机数比较。如果猜对了,打印"恭喜您,猜对了"
3.如果猜错了
猜大了:打印"你猜数大了!"
猜小了:打印"你猜数小了!"
4.如果用户录入非法数据(不在规定的范围内)
提示数据错误 ,并再次猜数字。
5.直到数字猜到为止
游戏需要使用的知识点:
1.随机数类Random
2.创建键盘录入数据类Scanner (注意:这两类都需要导包)
2.选择结构if
3.循环结构for(while循环也可以)
代码演示:
package cn.itcast;
//导包
import java.util.Random;
import java.util.Scanner;
public class Guessshuzi {
public static void main(String[] args) {
Random r = new Random();//创建Random类变量,获取1个随机数
int num = r.nextInt(100) + 1;//获取随机数的范围是1~100的数字
Scanner sc = new Scanner(System.in);//创建Scanner类变量,创建键盘录入
int count = 0;//计算猜的次数。
for (; ; ) {
count++;
System.out.println("请录入你要猜的数字(1~100):");//提示用户录入数据,并接受
int i = sc.nextInt();
if (i < 1 || i > 100) {//如果用户录入非法数据,提示并再次猜数字。
System.out.println("输入数据错误!");
continue;
}
if (i < num && i >= 0) {
System.out.println("你猜的数小了");
} else if (i > num && i <=100) {
System.out.println("你猜的数大了");
}
else {
System.out.println("恭喜你,猜对了!");
break;//猜对了,跳出循环
}
}
System.out.println("count=" + count);//打印猜的次数
}
}
运行结果:
一般猜数字使用二分法猜测。