请用java实现通过输入的学号输出信息
时间: 2024-02-22 12:58:49 浏览: 85
已知一个链表,现编写一个函数search(),要求根据输入的学生学号,输出他的各科成绩。
3星 · 编辑精心推荐
好的,以下是Java实现的代码:
```java
import java.util.Scanner;
public class StudentIdInfo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String studentId = scanner.next();
if (studentId.length() != 8 || !isValidCollege(studentId.substring(2, 4))) {
System.out.println("Wrong Format");
} else {
String year = "20" + studentId.substring(0, 2) + "年";
String college = getCollegeName(studentId.substring(2, 4));
String classNum = studentId.substring(4, 6);
String studentNum = studentId.substring(6);
System.out.println("入学年份:" + year);
System.out.println("学院:" + college);
System.out.println("班级:" + classNum);
System.out.println("学号:" + studentNum);
}
}
private static boolean isValidCollege(String collegeCode) {
return collegeCode.equals("01") || collegeCode.equals("02") || collegeCode.equals("03") || collegeCode.equals("20");
}
private static String getCollegeName(String collegeCode) {
switch (collegeCode) {
case "01":
return "材料学院";
case "02":
return "机械学院";
case "03":
return "外语学院";
case "20":
return "软件学院";
default:
return "";
}
}
}
```
这段代码通过Scanner类获取用户输入的学号,并进行格式校验。如果是合法的学号,则根据规则截取出入学年份、学院编号、班级编号和学号,并输出每一项的完整说明。如果是非法的学号,则输出“Wrong Format”提示信息。
需要注意的是,为了方便输出,我们将入学年份的前缀“20”添加到了年份的字符串中。
阅读全文