
正文
java控制台游戏代码 java游戏代码怎么运行
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
用JAVA语句在控制台输入(石头)1 (剪刀)2 (布)3 统计你赢了多少次(次数无论)
刚刚没考虑到胜利java控制台游戏代码的判断规则java控制台游戏代码,现在补上java控制台游戏代码,不好意思哦
-------------------------------------代码------------------------------
package com.hx.baidu;
import java.util.Random;
import java.util.Scanner;
/**
* @项目名称 :JavaGame_March
* @文件名称 :ShitouJiandao.java
* @所在包 :com.hx.baidu
* @功能描述 :用JAVA语句在控制台输入(石头)1 (剪刀)2 (布)3 统计java控制台游戏代码你赢了多少次(次数无论)
* 这是在百度上看到的题目java控制台游戏代码:
*
* @创建者 :集成显卡 1053214511@qq.com
* @创建日期 :2011-3-1
* @修改记录 :
*/
public class ShitouJiandao {
private Scanner scanner;// 控制台的监视
private int count;// 计数器
private int win_count;// 赢了多少次
private Random random;// 产生随机数
private String name[] = { "石头", "剪刀", "布" };
/**
* @构造方法:
* @类名:ShitouJiandao.java
*/
public ShitouJiandao() {
// 如果scanner为null时,使用控制台的in这个inputstream实例化
if (scanner == null) {
scanner = new Scanner(System.in);
}
// 同上面的scanner
if (random == null) {
random = new Random();
}
System.out.println("系统初始化完成。By:集成显卡 2011");
System.out.println("输入(石头)1 (剪刀)2 (布)3 ,并按 回车 便可以进行游戏。输入‘e’退出游戏。");
process();
}
private void process() {
int sysResult;// 程序后台得到的答案
int userResult;// 用户输入的
while (true) {
sysResult = random.nextInt(2) + 1;
System.out.print("第 " + (++count) + " 次,你出:");
if (scanner.hasNext()) {
String temp = scanner.next();
try {
userResult = Integer.valueOf(temp);
int result = isWin(userResult, sysResult);
if (result == 0) {
win_count++;
System.out.println("恭喜您答对了!您已经答对了:" + win_count + " 次");
} else if (result == 2) {
System.out.println("平局");
} else {
System.out.println("嘻嘻,你答错了哦,答案是:" + name[sysResult - 1] + " 可您出:" + name[userResult - 1]);
}
} catch (Exception e) {
if (temp.equalsIgnoreCase("e")) {
System.out.println("现在退出游戏:您进行了" + count + " 次游戏,答对:" + win_count + " 次");
System.out.println("多谢游戏!");
break;
}
}
}
}
}
/**
* @方法名称 :isWin
* @功能描述 :判断是否胜利 (石头)1 (剪刀)2 (布)3 1 胜2,2胜3,3胜1,返回值: 0 为胜利,1 为错了,2为平
* @返回值类型 :boolean
* @param uer
* @param sys
* @return
*
* @创建日期 :2011-3-1
* @修改记录 :
*/
private int isWin(int uer, int sys) {
if (uer == sys)
return 2;
if ((uer == 1 sys == 2) || (uer == 2 sys == 3) || (uer == 3 sys == 1))
return 0;
return 1;
}
public static void main(String a[]) {
new ShitouJiandao();
}
}
============运行结果==========
系统初始化完成。By:集成显卡 2011
输入(石头)1 (剪刀)2 (布)3 ,并按 回车 便可以进行游戏。输入‘e’退出游戏。
第 1 次,你出:1
平局
第 2 次,你出:2
嘻嘻,你答错了哦,答案是:石头 可您出:剪刀
第 3 次,你出:3
恭喜您答对了!您已经答对了:1 次
第 4 次,你出:1
平局
第 5 次,你出:1
恭喜您答对了!您已经答对了:2 次
第 6 次,你出:2
嘻嘻,你答错了哦,答案是:石头 可您出:剪刀
第 7 次,你出:e
现在退出游戏:您进行了7 次游戏,答对:2 次
多谢游戏!
相关问答
Q1: 通过Java控制台程序完成一个五子棋游戏,能够实现黑白子交互下棋,程序自动判断输赢(需要完成判断输赢
import java.util.Scanner;
public class FiveChessGame {
public static void display(char[][] arr) {// 图形显示函数
System.out.print(" ");
for (char i = '0'; i = '9'; i++)
// 打印行号0~9
System.out.print(i + " ");
for (char j = 'a'; j = 'f'; j++)
// 打印行号a~f
System.out.print(j + " ");
System.out.println();
char c = '0';
for (int i = 0; i 10; i++) {
System.out.print(c++ + " ");
for (int j = 0; j 16; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
c = 'a';
for (int i = 10; i 16; i++) {
System.out.print(c++ + " ");
for (int j = 0; j 16; j++) {
System.out.print(arr[i][j] + " ");
}
System.out.println();
}
}
public static int getNum(char c) {
int num;
switch (c) {
case '0':
num = 0;
break;
case '1':
num = 1;
break;
case '2':
num = 2;
break;
case '3':
num = 3;
break;
case '4':
num = 4;
break;
case '5':
num = 5;
break;
case '6':
num = 6;
break;
case '7':
num = 7;
break;
case '8':
num = 8;
break;
case '9':
num = 9;
break;
case 'a':
case 'A':
num = 10;
break;
case 'b':
case 'B':
num = 11;
break;
case 'c':
case 'C':
num = 12;
break;
case 'd':
case 'D':
num = 13;
break;
case 'e':
case 'E':
num = 14;
break;
case 'f':
case 'F':
num = 15;
break;
default:
System.out.println("输入有错误!");
return -1;
}
return num;
}
public static int isWinner(char c, char[][] arr, int a, int b) {
if (c == '@') {
int count = 0;
for (int i = 0; i 16; i++) {
if (arr[a][i] == '@') {
count++;
if (count = 5) {
return 1;
}
} else {
count = 0;
}
}
count = 0;
for (int i = 0; i 16; i++) {
if (arr[i][b] == '@') {
count++;
if (count = 5) {
return 1;
}
} else {
count = 0;
}
}
count = 0;
if (a = b) {
int j = 0;
for (int i = a - b; i = 15 - a + b; i++) {
if (arr[i][j] == '@') {
count++;
j++;
if (count = 5) {
return 1;
}
} else {
count = 0;
j++;
}
}
} else {
int j = 0;
for (int i = b - a; i = 15 - b + a; i++) {
if (arr[j][i] == '@') {
count++;
j++;
if (count = 5) {
return 1;
}
} else {
count = 0;
j++;
}
}
}
int j = a + b;
count = 0;
if (a + b = 15) {
for (int i = 0; i = a + b; i++) {
if (arr[i][j] == '@') {
count++;
j--;
if (count = 5) {
return 1;
}
} else {
count = 0;
j--;
}
}
} else {
j = 15;
for (int i = a + b - 15; i = 15; i++) {
if (arr[i][j] == '@') {
count++;
j--;
if (count = 5) {
return 1;
}
} else {
count = 0;
j--;
}
}
}
} else {// 判断白色胜
int count = 0;
for (int i = 0; i 16; i++) {
if (arr[a][i] == 'O') {
count++;
if (count = 5) {
return 2;
}
} else {
count = 0;
}
}
count = 0;
for (int i = 0; i 16; i++) {
if (arr[i][b] == 'O') {
count++;
if (count = 5) {
return 2;
}
} else {
count = 0;
}
}
count = 0;
if (a = b) {
int j = 0;
for (int i = a - b; i = 15 - a + b; i++) {
if (arr[i][j] == 'O') {
count++;
j++;
if (count = 5) {
return 2;
}
} else {
count = 0;
j++;
}
}
} else {
int j = 0;
for (int i = b - a; i = 15 - b + a; i++) {
if (arr[j][i] == 'O') {
count++;
j++;
if (count = 5) {
return 2;
}
} else {
count = 0;
j++;
}
}
}
int j = a + b;
count = 0;
if (a + b = 15) {
for (int i = 0; i = a + b; i++) {
if (arr[i][j] == 'O') {
count++;
j--;
if (count = 5) {
return 2;
}
} else {
count = 0;
j--;
}
}
} else {
j = 15;
for (int i = a + b - 15; i = 15; i++) {
if (arr[i][j] == 'O') {
count++;
j--;
if (count = 5) {
return 2;
}
} else {
count = 0;
j--;
}
}
}
}
return 0;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
char[][] arr = new char[16][16];
for (int i = 0; i 16; i++)
// 二维数组初始化
for (int j = 0; j 16; j++)
arr[i][j] = '.';
display(arr);
int i = 0;
while (true) {
if (i % 2 == 0) {
System.out.println("请黑方落子:");
String in = sc.next();
char c1 = in.charAt(0);
char c2 = in.charAt(1);
int a = getNum(c1);
int b = getNum(c2);
if (arr[a][b] != '.') {
System.out.println("该位置已经有棋子,请重新输入!");
} else {
arr[a][b] = '@';
display(arr);
int result = isWinner('@', arr, a, b);
if (result == 1) {
System.out.println("黑方获胜!");
return;
}
i++;
}
} else {
System.out.println("请白方落子:");
String in = sc.next();
char c1 = in.charAt(0);
char c2 = in.charAt(1);
int a = getNum(c1);
int b = getNum(c2);
if (arr[a][b] != '.') {
System.out.println("该位置已经有棋子,请重新输入!");
} else {
arr[a][b] = 'O';
display(arr);
int result = isWinner('O', arr, a, b);
if (result == 2) {
System.out.println("白方获胜!");
return;
}
i++;
}
}
}
}
}
Q2: 编写一个JAVA控制台程序
通过System.out.printlnjava控制台游戏代码的方式输出到控制台
定义A.java文件java控制台游戏代码,并输出字符串 java控制台游戏代码我是一个java程序
public class A{
public static void main(String[] args) {//定义main方法
System.out.println("java控制台游戏代码我是一个JAVA程序");//输出我是一个JAVA程序到控制台
}
}
Q3: java中从控制台输入代码问题
scanner input = new scanner(System.in);是创建scanner这个对象 并且命名为input而int stb = input.nextDouble();是以double数据类型接收控制台输入,所以这个语句有问题,应该改成int stb = input.nextInt(); 而从控制台接收String型时 应该是 String gander = input.next();不需要加其他 如果接收Double的就是 double gander = input.nextDouble();
Q4: 用java编写一个控制台程序
这么做啊、先接收输入的数字java控制台游戏代码,循环这个数字的次数并建立一个该长度的数字数组,用来接收输入的数字。然后对该数组进行排序。冒泡排序也行、
public static void main(String[] args) {
System.out.print("请输入要比较数字的个数:");
Scanner scanner=new Scanner(System.in);
int length=scanner.nextInt();
int[] ints=new int[length];
for(int i=0;ilength;i++){
System.out.print("请输入第"+(i+1)+"个数字:");
ints[i]=scanner.nextInt();
}
Arrays.sort(ints);
System.out.println(Arrays.toString(ints));
}
好java控制台游戏代码了,java控制台游戏代码你选 java控制台游戏代码我吧、
打字不易,如满意,望采纳。
java控制台游戏代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java游戏代码怎么运行、java控制台游戏代码的信息别忘了在本站进行查找喔。






