题目描述
输入 x,y(1582\le x < y \le 3000)x,y(1582≤x<y≤3000) ,输出 [x,y][x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。
分析:
设计一个函数进行判断是否是闰年,如果是则放到数组中,并且计数。
#include<bits/stdc++.h>
using namespace std;
int a[2000];
int m = 0;
void c(int n) {
if ((n % 4 == 0 && n % 100 != 0) || n % 400 == 0) {//判断是否是闰年
a[m] = n;
m++;//计数
}
}
int main() {
int x, y;
cin >> x >> y;
for (int i = x; i <= y; i++) {
c(i);
}
cout << m<<endl;
for (int j = 0; j < m; j++) {
cout << a[j] << " ";
}
return 0;
}