题目1
编写一个猜字游戏,随机产生一个单词,提示用户一次猜测一个字母,如运行实例所示,单词中的每个字母显示为一个*号,当用户猜测正确后,正确的字母显示出来,当用户猜出一个单词,显示猜错的次数,并且询问用户是否继续对另外一个单词进行游戏…

package ch05;
import java.util.Scanner;
import java.util.Arrays;
public class a {
public static void main(String[] args) {
long input,sum1,sum2,sum;
boolean a;
System.out.println("Enter a credit card number as a long integer:");
Scanner scanner = new Scanner(System.in);
input = scanner.nextLong();
a=isValid(input);//合法性检测
//System.out.print(a);
if(a){
sum1=sumofDoubleEvenPlace(input);//第二步
System.out.println(sum1);
sum2=sumofOddPlace(input);//第3步
System.out.println(sum2);
sum=sum1+sum2;
System.out.println(sum);
if(sum%10==0){
System.out.println(input+"is valid");
}
else{
System.out.println(input+"is invalid");
}
}
}
public static boolean isValid(long number){
String a;
a=String.valueOf(number);
if((a.length()<13)||(a.length()>16))
System.exit(0);
if ((a.charAt(0)=='4')||(a.charAt(0)=='5')||(a.charAt(0)=='6')||((a.charAt(0)=='3')&(a.charAt(1)=='7')))
return true;
else
return false;
}
public static int sumofDoubleEvenPlace(long number){
String b;
int c;
b=String.valueOf(number);
int sum=0;
for(int i=0;i<b.length();i++){
c=Character.getNumericValue(b.charAt(i))*2;
//System.out.print(c+" ");//4388576018402626
i++;
if(c>=10){
int c1=c/10;
int c2=c%10;
c=c1+c2;
}
sum=sum+c;
//System.out.print(sum);
}
//System.out.print(sum);
return sum;
}
public static int sumofOddPlace(long number){
String b;
int c;
b=String.valueOf(number);
int sum=0;
for(int i=b.length()-1;i>=0;i--){
c=Character.getNumericValue(b.charAt(i));
//System.out.print(c+" ");//4388576018402626
i--;
sum=sum+c;
}
return sum;
}
}
题目2

电话上的国际标准字母/数字映射如图所示。
已知,对于这种键盘,如果向输入一个字母,需要按相应的数字若干次,约定,对于一个按钮,第一次按,屏幕会显示对应数字,快速按第二次,会显示该按钮上的第一个字母,快速按第三次,会显示该按钮上的第二个字母,以此类推。
package ch05;
import java.util.Scanner;
public class b {
public static void main(String[] args) {
String input;
Scanner scanner = new Scanner(System.in);
input = scanner.nextLine();
String key[]={"0 ","1","2abc","3def","4ghi","5jkl","6mno","7pqrs","8tuv","9wxyz"};
char[] ch = input.toCharArray();
for (int i1 = 0; i1 < ch.length; i1++) {
for(int i=0;i< key.length;i++) {
for (int j = 0; j < key[i].length(); j++) {
if (key[i].charAt(j) == ch[i1]){
//System.out.println(key[i].charAt(0));
for(int j1=0;j1<=j;j1++){
System.out.print(key[i].charAt(0));
}
}
}
}
}
}
}
//测试hello 123 covid 2019 is an american virus
本文介绍两个简单的Java程序实现:一个是猜字游戏,通过随机选择单词让用户逐个字母猜测;另一个是电话键盘映射程序,将输入的字母转换为电话键盘对应的数字组合。
2658

被折叠的 条评论
为什么被折叠?



