该如何实现输出的是:你出的是剪刀 ,电脑出的布、这样的形式呢。我目前只能以数字 代替。
代码如下:求大神指点、
import java.util.*;
public class A3_10{
public static void main(String[] args){
Scanner in=new Scanner(System.in);
while(true){
System.out.println("=======猜拳游戏=====");
System.out.println("请出拳:(1.剪刀 2.石头 3.布)");
int number=in.nextInt();
if(number>3||number<1){
System.out.println("你出拳作弊,请重新合法出拳");
}else{
int number1=(int)((Math.random()*3)+1);
if(number==number1){
System.out.println("你出的是"+number+"\t电脑出的是"+number1+"\t本局平局");
}else if(number<number1){
System.out.println("你出的是"+number+"\t电脑出的是"+number1+"\t本局你输");
}else{
System.out.println("你出的是"+number+"\t电脑出的是"+number1+"\t本局你赢");
}
}
}
}
}
刚才复制没完全...
import java.util.*;
public class Test {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (true) {
System.out.println("=======猜拳游戏=====");
System.out.println("请出拳:(1.剪刀 2.石头 3.布)");
int number = in.nextInt();
if (number > 3 || number < 1) {
System.out.println("你出拳作弊,请重新合法出拳");
} else {
int number1 = (int) ((Math.random() * 3) + 1);
if (number == number1) {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局平局");
} else if (number < number1 || number==3&&number1==1) {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局你输");
} else {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局你赢");
}
}
}
}
public static String getName(int n){
String s = null;
switch(n){
case 1: s = "剪刀"; break;
case 2: s = "石头"; break;
case 3: s = "布"; break;
}
return s;
}
}
lz加个switch操作就好了啊~~
你用number和number1的大小来判断输赢,那一个是1一个是3的时候就不准确了。
输赢描述不准确,应该优化!!
lz你的要求我帮你实现了
还有其他几个答案都已经指出了你程序中的错误,我稍微调整了一下
满意的话望采纳
import java.util.*;
public class Test {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (true) {
System.out.println("=======猜拳游戏=====");
System.out.println("请出拳:(1.剪刀 2.石头 3.布)");
int number = in.nextInt();
if (number > 3 || number < 1) {
System.out.println("你出拳作弊,请重新合法出拳");
} else {
int number1 = (int) ((Math.random() * 3) + 1);
if (number == number1) {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局平局");
} else if (number < number1 || number==3&&number1==1) {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局你输");
} else {
System.out.println("你出的是" + getName(number) + "\t电脑出的是" + getName(number1)
+ "\t本局你赢");
}
}
}
}