7-15 String的格式判断与内容提取 (100 分)

7-15 String的格式判断与内容提取 (100 分)
学校学生学号格式定义如下: 2位年级号+2位学院号+2位班级号+2位序号,如19041103, 编写程序处理用全院学生学号连接起来的长字符串,学院编号为20,包括17、18、19、20四个年级,请从字符串中提取特定两个班级202017班、202061班同学的学号后四位输出,输出编号之间用空格分隔,不换行。 注意:需要排除非法输入。

输入格式:
全院学生学号组成的长字符串(学号之间无分隔) 学号格式定义如下: 2位年级号+2位学院号+2位班级号+2位序号,如19041103,

输出格式:
特定两个班级202017班、202061班同学的学号后四位 如:1701 6103 1704

输入样例1:
在这里给出一组输入。例如:

2020610120201702202051132020110320201706
输出样例1:
在这里给出相应的输出。例如:

6101 1702 1706
结尾无空行
输入样例2(第一个学号多输入一位):
在这里给出一组输入。例如:

20206100120201702202051132020110320201706
输出样例2:
在这里给出相应的输出。例如:

Wrong Format
结尾无空行
输入样例3(第一个学号少输入一位数字):
在这里给出一组输入。例如:

202061120201702202051132020110320201706
输出样例3:
在这里给出相应的输出。例如:

Wrong Format
结尾无空行
输入样例3(学号之间有空格):
在这里给出一组输入。例如:

2020610120201702 202051132020110320201706
输出样例3:
在这里给出相应的输出。例如:

Wrong Format
结尾无空行

在这里插入代码片
```import java.util.*;


public class Main {
    public static void main(String args[]) {
    	Scanner sc=new Scanner(System.in);
    		String str=sc.nextLine();
    		int n=str.length()/8;
    		int judge=0;
    		if(str.length()%8==0)
    		{
    			
    			String s[][]=new String[n][8];
    			for(int i=0;i<n;i++)
    			{	
    				for(int j=0;j<8;j++)
    				{
    					
    					char a=str.charAt(i*8+j);
    					String str2=String.valueOf(a);
    					s[i][j]=str2;
    					
    					
    				}
    				if("2".equals(s[i][0])&&"0".equals(s[i][1])&&"2".equals(s[i][2])&&"0".equals(s[i][3])&&"1".equals(s[i][4])&&"7".equals(s[i][5]))
    					{		
    						   for(int k=4;k<8;k++)
    						   {
    							   
    							if(k==4)
    							{
    								if(judge==0)
    								{
    									judge++;
    								}
    								else
    								{
    									System.out.print(" ");
    								}
    								
    							}
    							System.out.print(s[i][k]);
    						}
    							
    					}
    				if("2".equals(s[i][0])&&"0".equals(s[i][1])&&"2".equals(s[i][2])&&"0".equals(s[i][3])&&"6".equals(s[i][4])&&"1".equals(s[i][5]))
					{	
						   for(int k=4;k<8;k++)
						   {
							   
							   if(k==4)
   							{
   								if(judge==0)
   								{
   									judge++;
   								}
   								else
   								{
   									System.out.print(" ");
   								}
   								
   							}
							System.out.print(s[i][k]);
						}
							
					}
				
    			}
    				
    			}
    			
    			else
    		{
    			System.out.println("Wrong Format");
    		}
    			
    		}
    		
    	
    }

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值