题目描述

输入 x,y(1582\le x < y \le 3000)x,y(1582x<y3000) ,输出 [x,y][x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。

输入格式

输出格式

输入输出样例

输入 #1
1989 2001
输出 #1
3
1992 1996 2000

题解:
第一步分析题目,剖析步骤:
1.输入x,y两个数据,定义计数器cnt。
2.通过第一个for循环(范围在x~y之间)用if判断出是闰年的年份cnt++,循环结束后输出cnt(要换行)。
3
.通过第二个for循环(范围在x~y之间)用if判断出是闰年的年份直接输出(两数之间加空格)。
第二步理清思路后,直接上代码:
#include <iostream>
using namespace std;
int main()
{
  int a,b,s=0;
  cin>>a>>b;
  for(int i=a;i<=b;i++)
    if(i%400==0||i%4==0&&i%100)
      s++;
  cout<<s<<endl;
  for(int i=a;i<=b;i++)
    if(i%400==0||i%4==0&&i%100)
      cout<<i<<' ';
  return 0;
}
以上代码仅供参考。

 


 

 

 

 

相关文章:

  • 2022-12-23
  • 2021-12-02
  • 2022-01-14
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-30
猜你喜欢
  • 2021-11-01
  • 2022-03-03
  • 2022-02-17
  • 2022-12-23
  • 2021-07-20
  • 2021-05-13
相关资源
相似解决方案