1 #include<bits/stdc++.h> 2 using namespace std; 3 const int num=8113;//5343 4 bool isp(int n){ 5 if(n%4==0&&n%100!=0||n%400==0){ 6 return true; 7 } 8 return false; 9 } 10 11 int main() { 12 int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; 13 int year=1777,month=4,day=30; 14 int n=num-1; //出生后的第几天,居然要把出生当天也算上所以这里用num-1 15 while(n--){ 16 if(isp(year)){ 17 a[2]=29; 18 } 19 else{ 20 a[2]=28; 21 } 22 day++; 23 if(day>a[month]){ 24 day=1; 25 month++; 26 if(month>12){ 27 month=1; 28 year++; 29 } 30 } 31 } 32 printf("%d-%02d-%02d\n",year,month,day); 33 return 0; 34 }
原文:https://www.cnblogs.com/NoWhiteBut/p/12696964.html