来源:未知 作者:admin 2024-07-20 14:54
import java.util.Random;
import java.util.Scanner;
public class Test {
private final static char[] ARRAY = { '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' };
private final static int NUM = 5;
private String s;
/**
* 构造时生成ARRAY成员组成的随机字符串
*/
public Test() {
// 选择的字母数量
s = ;
// 随机数
Random r = new Random();
while (s.length() < NUM) {
// 如果新生成的字母不重复则保存
char tmp = ARRAY[r.nextInt(26)];
if (s.indexOf(tmp) < 0)
s += tmp;
}
}
public static void main(String args[]) {
Test test = new Test();
int time = 0;
loop: while (true) {
System.out.println(请输入5个不重复字母);
Scanner sc = new Scanner(System.in);
String line = sc.nextLine();
if (null == line || line.length() != 5) {
System.out.println(5个啊魂淡);
continue;
}
if (!line.matches(^[A-Za-z]+$)) {
System.out.println(字母啊魂淡);
}
line = line.toUpperCase();
char[] c = new char[5];
c = line.toCharArray();
int m = 0, n = 0;
for (int i = 0; i < NUM; i++) {
String strSub = line.substring(line.indexOf(c[i])+1);
if (!(strSub.indexOf(c[i]) < 0)) {
System.out.println(不重复啊魂淡);
continue loop;
}
int intTmp = test.s.indexOf(c[i]);
if(intTmp<0){
continue;
}
else{
m++;
if(intTmp==i)
n++;
}
}
if (n == NUM) {
time++;
System.out.println(完全正确!);
break;
} else {
time++;
System.out.println(输入正确 + m + 个字母.并且位置对了 + n + 个字母.);
continue;
}
}
System.out.println(共用 + time + 次);
}
}
还剩21个,因为ET把UFO带走了!
猜单词,_ _ _ _ _ _ _,比如说你画一个这个,然后让同学们说字母,比如说这个字母是teacher,如果同学说q,没有这个单词,呢就化掉一次机会,总共5次机会,如果同学说e,有这个单词,就写上,还不明白加我Q,244074127
这个行不 ????
package zhouhu12;
import java.util.Arrays;
import java.util.Scanner;
/**
* 1.难度选项选择;
* 2.随机生成相应数量的字符,并装入数组;
* 3。接受控制台输入的字符并加以比较。输出比较的结果。
* toUpperCase 转换为大写字母 toLowerCase 转换为小写。
*/
public class GuessABC {
public static void main(String[] args) {
int num;
do{
guessGame(generate());
System.out.println(1. 重新开始游戏,2.退出游戏);
Scanner sc=new Scanner(System.in);
num=sc.nextInt();
}while(num==1);
System.out.print(游戏结束,欢迎下次来玩。);
}
public static char[] generate(){
Scanner sc=new Scanner(System.in);
int g;
do{
System.out.println(欢迎进入猜字母游戏,请选择游戏难度等级:1.初级 2.中级 3.高级);
g=sc.nextInt();
}while(g<1 || g>4);
char arr[]=new char[g];
for(int i=0;i<g;i++){
arr[i]=(char)(int)(Math.random()*26+97);
}
return arr;
}
public static void guessGame(char arr[]){
int count=0;
char arr1[]=new char[arr.length];
do{
System.out.println(请输入+arr.length+个字母:(输入 0 退出));
Scanner sca=new Scanner(System.in);
String A=sca.next();
System.out.println(A);
char arr2[]=A.toCharArray();
arr1=Arrays.copyOf(arr2,3);
if(arr1[0]=='0')
break;
System.out.print(答案:);
for(int i=0;i<arr.length;i++){
if(arr[i]==arr1[i]){
count++;
System.out.print(arr[i]);
}
else{
System.out.print(*);
}
}
System.out.println();
if(count==arr.length){
System.out.println(恭喜你猜对了);
break;
}
else{
System.out.println(猜对+count+个,继续加油。);
}
count=0;
}while(arr1[0]!='0');
}
}