本帖最后由 张周飞 于 2014-7-4 10:00 编辑
/**
通过控制台命令方式实现一个猜拳的游戏,用户通过输入与(1/剪刀.2/石头.3/布),
与电脑PK,最后通过积分的多少判定胜负。
*/
/*
思路-----1:在控制台中提示玩法--2:是否开始游戏(接收1/是,0/否)---3:接收游戏的局数
---4:循环接收用户的出拳(1/剪刀.2/石头.3/布)----5:系统也要随机出拳
-----6:每一次猜完拳进行记录一次胜的次数。----7:公布结果.
*/
import java.util.Scanner; //控制台包/类
//import java.util.Arrays; 排序包/类,应该用Arrays.sort(num);
import java.util.Random; //随机数包/类
public class HomeWork{
public static void main(String[] args ){
Game g=new Game();
g.begin();
}
}
/**猜拳游戏类**/
class Game{
/*开始游戏的方法*/
public void begin(){
System.out.println("****************************");
System.out.println("猜拳游戏的开始");
System.out.println("***游戏的规则:1/剪刀.2/石头.3/布*****");
Scanner input=new Scanner(System.in); //实例 控制台包/类
System.out.println("***输入1表示游戏开始!/输入0表示退出游戏不玩了");
int result=input.nextInt(); //控制台输入
if(result==1){
System.out.println("请输入猜拳的次数");
int num=input.nextInt(); //输入猜拳到次数
play(num); //也可以写成这样 this.play();表示 本类中 在这个方法中 调用带一个参数的方法。
}else{
System.out.println("不玩了,GOODBAY BYE BYE!!!!");
}
}
public void play(int num){ //带一个参数的方法或者叫函数。
/****以下代码是play(int num) 的----核心方法****/
int userscore=0; //用户胜局的记录
int pcscore=0; //电脑胜局的记录
//电脑随机出来的数(拳)
Random R=new Random(); //实例 随机数包/类 数
while(num>0){
int X=R.nextInt(3)+1; //随机生成数
System.out.println("请输入出的拳:1 2 3");
Scanner input=new Scanner(System.in);
int S=input.nextInt(); //用户输入的数/拳 1 2 3
if(S==1){ //第一种情况
switch(X){
case 1:
System.out.println("平局,你出的是剪刀!电脑出的也是剪刀");
break;
case 2:
System.out.println("电脑胜了!,你出的是剪刀!电脑出的也是石头");
pcscore++;
break;
case 3:
System.out.println("你胜了!,你出的是剪刀!电脑出的也是布");
userscore++;
break;
}
}
if(S==2){//第二种情况
switch(X){
case 1:
System.out.println("你胜了!,你出的是石头!电脑出的也是剪刀");
userscore++;
break;
case 2:
System.out.println("平局,你出的是石头!电脑出的也是石头");
break;
case 3:
System.out.println("电脑胜了!,你出的是石头!电脑出的也是布");
pcscore++;
break;
}
}
if(S==3){//第三种情况
switch(X){
case 1:
System.out.println("电脑胜了!,你出的是布!电脑出的也是剪刀");
pcscore++;
break;
case 2:
System.out.println("你胜了!,你出的是布!电脑出的也是石头");
userscore++;
break;
case 3:
System.out.println("平局,你出的是布!电脑出的也是布");
break;
}
}
num--; //每循环一次减去1,
} //whlie()循环结束
System.out.println("***********************");
System.out.println("你胜:"+ userscore);
System.out.println("电脑胜:"+ pcscore);
if(userscore==pcscore){
System.out.println("平手....");
}else if(userscore>pcscore){
System.out.println("你赢了!");
}else{
System.out.println("你输了!");
}
} //play()结束
} //Game类结束
:)大家不妨可以试试做做 javac java 一下.........................................
|