知识屋:更实用的电脑技术知识网站
所在位置:首页 > 教育

一个简单的java猜数字游戏程序!

发表时间:2022-03-25来源:网络

一个简单的java猜数字游戏程序!

mip版  关注:116  答案:4  悬赏:60

解决时间 2021-01-28 09:21

已解决

2021-01-27 14:47

哪里有问题??多谢修改指出!!

//GuessNumber.java

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.Random;

import java.lang.*;

import java.lang.System;

public class GuessNumber {

public static void main(String args[]){

Random random=new Random();

int randomNumber=random.nextInt(101);

int guessedNumber=-1;

BufferedReader input=new BufferedReader(new InputStreamReader(System.in));

int counter=0;

System.out.println("");

System.out.println("请输入0到100之间的整数:");

while(guessedNumber!=randomNumber){

guessedNumber=Integer.parseInt(input.readLine());

if(guessedNumber100){

System.out.println("请输入一个1~100之间的整数:");

counter++;

continue;

}

}catch(NumberFormatException e){

System.out.println("请输入一个1~100之间的整数:");

counter++;

continue;

}catch(IOException e){

System.out.println("程序发生异常错误将被关闭!");

e.printStackTrace();

}

if(guessedNumber>randomNumber)

System.out.println("你输入的数字大了,请再次输入:");

if(guessedNumber

System.out.println("你输入的数字小了,请再次输入:");

counter++;

}

//System.out.println("答案正确!你一共猜测了"+counter+"次。");

}

原题上修改,不用拿别处的来!!

最佳答案

2021-01-27 15:37

1:编译有错.不知道只有没有贴完整的代码(光有catch 没有try的吗?)

2: 个人建议 修改后的代码:

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.util.Random;

import java.lang.*;

public class GuessNumber {

public static void main(String args[]) {

Random random = new Random();

int randomNumber = random.nextInt(101);

int guessedNumber = -1;

BufferedReader input = new BufferedReader(new InputStreamReader(System.in));

int counter = 0;

System.out.println("");

System.out.println("请输入0到100之间的整数:");

while (true) {

try {

guessedNumber = Integer.parseInt(input.readLine());

if (guessedNumber > randomNumber) {

System.out.println("你输入的数字大了,请再次输入:");

counter++;

}

if (guessedNumber < randomNumber) {

System.out.println("你输入的数字小了,请再次输入:");

counter++;

}

if (guessedNumber == randomNumber) {

System.out.println("答案正确!你一共猜测了"+counter+"次。");

break;

}

} catch (NumberFormatException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

if (guessedNumber < 0 || guessedNumber > 100) {

System.out.println("请输入一个1~100之间的整数:");

counter++;

continue;

}

}

}

}

另: 对异常输入没有做判断,可以在捕获 NumberFormatException 异常时不将异常抛出,而提示 "输入数字"之类的信息

全部回答

1楼

2021-01-27 19:46

public class Test {

public static void main(String args[]) {

Random random = new Random();

int randomNumber = random.nextInt(101);

int guessedNumber = -1;

BufferedReader input = new BufferedReader(new InputStreamReader(

System.in));

int counter = 1;

System.out.println("");

System.out.println("请输入0到100之间的整数:");

while (guessedNumber != randomNumber) {

try {

guessedNumber = Integer.parseInt(input.readLine());

} catch (NumberFormatException e) {

System.out.println("请输入一个1~100之间的整数:");

counter++;

continue;

} catch (IOException e) {

System.out.println("程序发生异常错误将被关闭!");

e.printStackTrace();

}

if (guessedNumber < 0 || guessedNumber > 100) {

System.out.println("请输入一个1~100之间的整数:");

counter++;

continue;

}

if (guessedNumber > randomNumber) {

System.out.println("你输入的数字大了,请再次输入:");

counter++;

}

if (guessedNumber < randomNumber) {

System.out.println("你输入的数字小了,请再次输入:");

counter++;

} else if (guessedNumber == randomNumber)

System.out.println("答案正确!你一共猜测了" + counter + "次。");

}

}

}

2楼

2021-01-27 18:33

可以在捕获异常中写入{System.out.println(getmessage());}

3楼

2021-01-27 17:09

package test;

import java.util.scanner;

public class test {

public static void main(string[] args) {

int b = (int) (math.random()*10+1);

scanner input=new scanner(system.in);

system.out.println("请输入1个10以内的数字:");

int a = input.nextint();

int i=1;

while( a != b && i

s="你猜对了,你是牛人";

}else if(i

收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜