要输出一年中既是13号又是星期五的天数
从2016.1.1开始,这天也是星期五,输入年份n,在这一年中既是13号也是星期五的天数,比如输入2016,输出2016 1,多组输入。我这个只能输出2016到第n年一共多少天,并且答案也不对不知道哪里错了,各位大佬帮助我 #include<bits/stdc++.h>
using namespace std;
int main(){ int n,c=0,count=0; while(cin>>n){ int year=2016; int month=1; int day=1;
int weekday=5;
for(int i=2016;i<=n;i++){
if((i%4==0&&i%100!=0)||i%400==0)
c=c+366;
else
c=c+355; } for(int i=1;i<=c;i++){ day+=1; weekday+=1; if(weekday==8){ weekday=1; } switch(month){ case 1: case 3: case 5: case 7: case 8: case 10: case 12: if(day==32){ month=month+1; day=1; } if(month==13){ year=year+1; month=1; }break; case 2: if((year%4==0&&year%100!=0)||year%400==0){ if(day==30){ month=month+1; day=1; } } else{ if(day==29){ month=month+1; day=1; } }break; default: if(day==31){ month=month+1; day=1; } if(month==13){ year=year+1; month=1; }break; } if(day==13&&weekday==5) count++; } cout<<n<<' '<<count<<endl; count=0; c=0; } return 0;
}