已知年月给出天数(处理输入异常)
-
时间限制:
- 3000ms 内存限制:
- 65536kB
-
描述
-
输入年月,给出该年该月有多少天,要进行异常处理。
年份是1000-3000间整数,月份是1-12间整数。
输入
- 第一行:数据组数,其他行:每一组的年和月。 输出
-
指定年月的天数
如果年或月不是整数形式,输出“format error”
格式正确的情况下,如果年或月不在指定范围输出“year or month:out of range”
样例输入
-
3 1991 1 999 2 a b
样例输出
-
31 year or month:out of range format error
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); for(int i=0;i<n;i++){ try { String year = sc.next(); String month = sc.next(); int a=Integer.parseInt(month); int b=Integer.parseInt(year); if(b<=3000&&b>=1000||a<=1&&a>=1000){ switch(a){ case 1:case 3:case 5:case 7:case 8:case 10:case 12: System.out.println(31);break; case 4:case 6:case 9:case 11: System.out.println(30);break; case 2: if(b%4==0&&b%100!=0||b%400==0) System.out.println(29); else System.out.println(28);} } else System.out.println("year or month:out of range"); } catch (RuntimeException e) { System.out.println("format error"); }} } }