Java程序设计(六)作业

 

题目1:编写一个程序,将一个字符串s尾部的m个字符移动到该字符串首部,例如字符串s为“abcdccutsoft”,M为8,则程序执行完毕后的结果为“ccutsoftabcd”。

 1 //题目1:编写一个程序,将一个字符串S尾部的M个字符移动到该字符串首部,例如字符串S为“abcdccutsoft”,M为8,
 2 //则程序执行完毕后的结果为“ccutsoftabcd”。
 3 
 4 import java.util.*;
 5 
 6 public class p3_1 {
 7     public static void main(String[] args) {
 8         System.out.println("请输入一个字符串S: ");
 9         Scanner input = new Scanner(System.in);
10         String S = input.next();
11         System.out.println("请输入M: ");
12         int M = input.nextInt();
13         int x;
14         x = S.length() - M;
15         String s1 = S.substring(x);
16 //    System.out.println(s1);
17         String s2 = S.substring(0, x);
18 //    System.out.println(s2);
19         StringBuffer s3 = new StringBuffer(s2);
20         StringBuffer s4 = new StringBuffer(s1);
21         s4.append(s3);
22         System.out.println("程序执行完毕后的结果: ");
23         System.out.println(s4);
24     }
25 }

 

 

题目2:输入一个字符串,请判断是否满足身份证基本要求,并返回具体的生日yyyy-mm-dd。如果输入数据有误,请输出0000-00-00。基本要求是:a)必须是18位;b) 前面位数必须是数字,最后一位可以是数字或小写字母;c) 日期是存在的。输入样例53010219900508011x,输出样例:1990-05-08

 

//输入一个字符串,请判断是否满足身份证基本要求,并返回具体的生日yyyy-mm-dd。
//如果输入数据有误,请输出0000-00-00。基本要求是:a)必须是18位;b) 前面位数必须是数字,最后一位可以是数字或小写字母;c) 日期是存在的。
//输入样例53010219900508011x,输出样例:1990-05-08

import java.util.*;

public class p3_2 {
    public static void main(String[] args) {
        while (true) {
// 判断身份证号是否输入正确
            String regex = "(^[1-9]\\d{5}(19|20)\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$)";
            System.out.println("请输入您的身份证号: ");
            Scanner input = new Scanner(System.in);
            String id_s = input.next();
//截取日期验证是否存在
            String y_m = id_s.substring(6, 14);
            int int_ym = Integer.parseInt(y_m);
//截取年
            String year = id_s.substring(6, 10);
//截取月
            String month = id_s.substring(10, 12);
//截取日
            String day = id_s.substring(12, 14);
            if (id_s.matches(regex)) {
                if (int_ym < 20220529) {

                    System.out.println("您的出生日期是:\n" + year + "-" + month + "-" + day);
                } else {
                    System.out.println("0000-00-00");
                }
            }
        }

    }
}

 

posted @ 2022-10-05 15:06  飞鱼Dai  阅读(38)  评论(0)    收藏  举报