
正文
猜猜游戏java代码,java编程猜数游戏
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
java猜数字小游戏代码怎么写?
import java.util.Scanner;
public class Guess {
private static final int F = 1;
private static final int T = 100;
public static void main(String[] args) {
int num = (int)(Math.random() * T) + F;
Scanner s = new Scanner(System. in );
// 初始化
int guest = -1;
while (true) {
System.out.print("请输入你猜测的数字(" + F + "-" + T + "):");
// 每次输入的值,采纳即可
guest = s.nextInt();
if (guest num) {
System.out.println(F + "--" + guest);
} else if (guest num) {
System.out.println(guest + "--" + T);
} else {
System.out.println("中奖了");
break;
}
}
s.close();
}
}
相关问答
Q1: 用JAVA语言编写一个“猜数字游戏”的程序
int num = (int)(Math.random()*100)+1;
Scanner sc = new Scanner(System.in);
int guessNum = -1;
while (guessNum != num) {
System.out.println("请输入1-100之间整数");
guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
} elseif (guessNum num) {
System.out.println("小啦");
} else {
System.out.println("大了");
}
}
扩展资料:
编写思路
1、成1-100之间随机数
(int)(Math.random()*100)+1;
提示用户输入数字,
Scanner sc=new Scanner(System.in);
int guessNum = sc.nextInt();
需要将随机数和用户输入的数字进行比较。
猜一次:
Scanner sc = new Scanner(System.in);
int num = (int)(Math.random()*100)+1;
System.out.println("请输入0-100之间整数");
int guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
} elseif (guessNum num) {
System.out.println("小啦");
} else {
System.out.println("大了");
}
二、使用while循环
publicstaticvoid main(String[] args) {
int num = (int)(Math.random()*100)+1;
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("请输入1-100之间整数");
int guessNum = sc.nextInt();
if (guessNum == num) {
System.out.println("中啦");
} elseif (guessNum num) {
System.out.println("小啦");
} else {
System.out.println("大了");
}
}
}
三、最后用while() 括号中的条件表达式,当用户猜测的数和系统生成的数字不相等时,就需要继续循环。
Q2: 求一猜谜小游戏的java实现代码和包一起!
这是我自己编的,猜4个不重复数字的小游戏。
代码如下:
package com.entor.one.test2;
import java.util.Random;
import java.util.Scanner;
public class Game {
public static void zhuan(int temp,int input[])
{
input[0] = temp / 1000;
temp %= 1000;
input[1] = temp /100;
temp %= 100;
input[2] = temp /10;
temp %= 10;
input[3] = temp;
}
public static boolean if_xiangtong(int num[],int input[]){
//判断输入的数组 与随机生成的4个数字,是否完全相同
for(int i=0;i4;i++){
if(num[i]!=input[i])
break;
if(i==3){
return true;
}
}
return false;
}
public static void right(int num[]){
System.out.print("\n回答正确,数字是:");
for(int i=0;i4;i++)
System.out.print(num[i]);
}
public static void tishi(int num[],int input[]){
int numA=0; //2个数组中数字相同且位置相同的 数字数量
int numB=0; //2个数组中数字相同但位子不同的数字数量
//判断输入的数组 与随机生成的4个数字中,数字相同且位置相同数字数量
for(int i=0;i4;i++)
if(num[i]==input[i])
numA++;
//判断输入的数组 与随机生成的4个数字中,数字相同且位置相同数字数量
for(int i=0;i4;i++)
for(int j=0;j4;j++)
if(num[i]==input[j]i!=j)
numB++;
System.out.println("回答错误,数字提示是:"+numA+"A"+numB+"B");
numA = numB = 0;
}
public static void main(String arg[]){
int num[] =new int[4];
int temp;
int input[] =new int[4];
Scanner s = new Scanner(System.in);
Random random = new Random();
boolean boo ;
while(true){
//随机生成4个不重复的数字
for(int i=0;i4;i++)
{
num[i]= random.nextInt(9);
for(int j=i-1;j=0;j--)
while(num[j]==num[i])
num[i]= random.nextInt(9);
}
boo = false;
while(!boo){
System.out.print("\n请输入4个数字:");
temp = s.nextInt();
zhuan(temp,input);//将输入的数字转化为数组保存
boo = if_xiangtong(num,input);//判断输入的数组 与随机生成的4个数字,是否完全相同
if(boo)
right(num); //回答正确,输出结果
else
tishi(num,input); //回答错误,给予提示
}
}
}
}
Q3: 用java编写一个猜数字游戏,
package day06;
import java.util.Scanner;
//猜字符游戏
public class GuessingGame {
//主方法
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int count = 0; //猜错的次数
char[] chs = generate(); //随机生成的字符数组
System.out.println(chs); //作弊
while(true){ //自造死循环
System.out.println("猜吧!");
String str = scan.next().toUpperCase(); //获取用户输入的字符串
if(str.equals("EXIT")){ //判断str是否是EXIT
System.out.println("下次再来吧!");
break;
}
char[] input = str.toCharArray(); //将字符串转换为字符数组
int[] result = check(chs,input); //对比
if(result[0]==chs.length){ //位置对为5
int score = chs.length*100 - count*10; //一个字符100分,错一次减10分
System.out.println("恭喜你猜对了,得分:" + score);
break; //猜对时跳出循环
}else{ //没猜对
count++; //猜错次数增1
System.out.println("字符对:"+result[1]+"个,位置对:"+result[0]+"个");
}
}
}
//随机生成5个字符数组
public static char[] generate(){
char[] chs = new char[5];
char[] letters = { 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V',
'W', 'X', 'Y', 'Z'};
boolean[] flags = new boolean[letters.length]; //1.
for(int i=0;ichs.length;i++){
int index;
do{
index = (int)(Math.random()*letters.length); //0到25
}while(flags[index]==true); //2.
chs[i] = letters[index];
flags[index] = true; //3.
}
return chs;
}
//对比随机数组与用户输入的数组
public static int[] check(char[] chs,char[] input){
int[] result = new int[2];
for(int i=0;ichs.length;i++){
for(int j=0;jinput.length;j++){
if(chs[i]==input[j]){ //字符对
result[1]++; //字符对个数增1
if(i==j){ //位置对
result[0]++; //位置对个数增1
}
break;
}
}
}
return result;
}
}








