题目描述
输入 x,y(1582≤x<y≤3000) ,输出 [x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。
输入格式
无
输出格式
无
输入输出样例
输入
1989 2001
输出
3
1992 1996 2000
import java.util.*; public class Main { static int count=0;//用来计算总数 static int []num=new int[3000];//定义一个存放闰年的数组 private static boolean year(int x)//构造一个判断是否是素数的方法 { if(x%400==0)//判断闰年的条件 { return true; } if(x%4==0 && x%100!=0) { return true; } return false; } public static void main(String[] args) { // TODO 自动生成的方法存根 Scanner in=new Scanner(System.in); int n=in.nextInt();//从控制台出入一个年份 int m=in.nextInt();//输入另一个年份 for(int i=n;i<=m;i++) { if(year(i))//如果这个年份是闰年 { num[++count]=i;//润存入数组,加入总数 } } System.out.println(count);//输出总数 for(int i=1;i<=count;i++) { System.out.print(num[i]+" ");//输出具体年份 } } }