展开全部
帮你写了一个,实现基本功能,加了一点基本的输入错误判断。需要其他更细节的部分可以自己完成。
import java.util.Scanner;
public class Test {
public static void main(String args[]) {
String surname[] = { "王", "李", "宋", "欧阳", "诸葛" }; // 姓氏字符串数组
String name = ""; // 输入的姓名
String sname1 = ""; // 输入姓名的前一个字符
String sname2 = ""; // 输入姓名的前两个字符
String lname = "";
int i = 0;
int flag = 3; // 表示姓氏数组中开始出现复姓的位置
int j = flag;
boolean temp = true;
// 输入姓名
Scanner in = new Scanner(System.in);
while (temp) {
System.out.print("请输入姓名:");
name = in.nextLine();
if (name.length() < 2) {
System.out.println("您输入的姓名不合规范!");
} else {
temp = false;
sname1 = name.substring(0, 1);
sname2 = name.substring(0, 2);
}
}
for (i = 0; i < flag; i++) {
// 如果单姓
if (surname[i].equals(sname1)) {
lname = name.substring(1, name.length());
System.out.println("姓:" + sname1 + " & 名:" + lname);
break;
}
}
for (j = flag; j < surname.length; j++) {
// 如果单姓
if (surname[j].equals(sname2)) {
lname = name.substring(2, name.length());
System.out.println("姓:" + sname2 + " & 名:" + lname);
break;
}
}
//如果姓氏不存在
if(i == flag && j==surname.length){
System.out.println("姓氏不存在!");
}
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询