大佬!两个问题:
1、scanner.close();不知道放在哪,
2、为什么要写成“int a=random.nextInt(100)+1;"或者说解释一下“定义随机数在1~100之间为什么这样写”,
在我的思想中“定义随机数在1~100之间”我会写成“int a=scanner.nextlnt(100)”
我写的
package test;
//猜数字游戏,操作如下:
//后台预先生成一个1-100之间的随机数,用户键盘录入所猜的数字
//如果猜大了,打印“sorry,您猜大了!”,
//如果猜小了,打印“sorry,您猜小了!”,
//真到数字猜到为止。打印“恭喜您,答对了!”
import java.util.Scanner;
import java.util.Random;
public class Project2C7 {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
Random random =new Random();
int i=random .nextInt(100); //在我的思想下我会这样写
System.out.println("随机数已生成,猜猜看吧!");
while(true) {
int x;
x=scanner.nextInt();
if(x>i) {
System.out.println("猜大了,再来");
}else if(x<i) {
System.out.println("猜小了,再来");
}else {
System.out.println("恭喜答对了!");
System.out.println("random:"+i);
}
}
}
}
老师给的答案
import java.util.Random;
import java.util.Scanner;
public class C7 {
public static void main(String[] args) {
//生成一随机数放入a
Random random=new Random();
int a=random.nextInt(100)+1;
System.out.println("随机数已经生成,请猜猜(1-100)");
//让用户猜
Scanner scanner=new Scanner(System.in);//准备扫描器
int x;//存放用户猜的数
do {
x=scanner.nextInt();
if (x>a) {
System.out.println("sorry,猜大了!");
}else if (x<a) {
System.out.println("sorry,猜小了!");
}
} while (x!=a);
System.out.println("恭喜,答对了!");
}
}