libin13815498262 @ 2023-02-25 01:53:41
#include<bits/stdc++.h>
using namespace std;
bool judge(int a){
if(a%4==0)
return 1;
else
return 0;
}//判断是否为闰年
int main()
{
int x,y,i,count=0;
cin>>x>>y;
int *a=new int[y+1];
for(i=0;i<y+1;i++){
a[i]=0;
}//辅助数组记录闰年值
for(i=x;i<y+1;i++){
if(judge(i)){
count++;
a[i]=1;//若是闰年计数器+1,数组置1
}
}
cout<<count<<endl;//输出计数器值即闰年个数
for(i=x;i<y+1;i++){
if(a[i]==1)
cout<<i<<" ";
}//输出辅助数组为1 的i值,即闰年年份
return 0;
}
by ud2_ @ 2023-02-25 01:56:53
闰年不是简单的“4 的倍数”。
by cff_0102 @ 2023-02-25 03:18:30
闰年不是这样判断的
by GoldenCreeper @ 2023-02-25 07:38:09
如果年份是 4 的倍数且不是 100 的倍数或者是 400 的倍数,那么此年是闰年。
by lzx0 @ 2023-02-25 12:53:55
判断错了..................
by libin13815498262 @ 2023-02-25 13:15:53
@ud2_ 谢谢大佬指点
by libin13815498262 @ 2023-02-25 13:16:07
@cff_0102 谢谢大佬指点
by libin13815498262 @ 2023-02-25 13:16:17
@GoldenCreeper 谢谢大佬指点
by libin13815498262 @ 2023-02-25 13:16:32
@lzx0 谢谢大佬指点
by WSx_3 @ 2023-09-09 21:51:07
话说闰年不是是4的倍数就行了,条件应该是这样的:
if((x%4==0 && x%100!=0) || (x%400==0)) return true;
return false;
//如果 是4的倍数 且 不是100的倍数 或者 是400的倍数,返回True