#include<stdio.h>
int main() {
int n,year,mouth,day;
scanf("%d",&n);
while(n--) {
scanf("%d-%d-%d",&year,&mouth,&day);
int t=0;
if((year%400==0||year%4==0&&year%100!=0)&&mouth==2&&day==29) {
printf("-1\n");
continue;
}
if(mouth<=2)
for(int l=0; l<18; l++) {
int year1=year+l;
if(year1%400==0||year1%4==0&&year1%100!=0)
t++;
}
else
for(int l=1; l<=18; l++) {
int year1=year+l;
if(year1%400==0||year1%4==0&&year1%100!=0)
t++;
}
printf("%d\n",365*18+t);
}
return 0;
}
【杭电1201】18岁生日
最新推荐文章于 2025-08-24 21:10:46 发布
本文提供了一个C语言程序示例,用于计算输入日期后的18年内包含的闰年数量,并给出总天数。程序首先判断输入日期是否为有效的2月29日,然后根据不同情况遍历未来18年的每一年来确定闰年。

256

被折叠的 条评论
为什么被折叠?



