您的位置:首页 > 其它

文章标题

2016-12-09 11:17 260 查看
ccf节日(C语言)
#include<stdio.h>

int isrun(int y)
{
if((y%4==0&&y%100!=0)||(y%400==0))
{
return 1;

}else{
return 0;
}
}

int main()
{
int a,b,c,y1,y2;
long tobefore=0;
int i,j,k;
int todayweek,data;
int month[2][13]={{0,31,28,31,30,31,30,31,31,30,31,30,31},
{0,31,29,31,30,31,30,31,31,30,31,30,31}};
int days[2]={365,366};
scanf("%d%d%d%d%d",&a,&b,&c,&y1,&y2);
//a月第b个星期c
for(i=y1;i<=y2;i++)
{
//toBefore:1850年到i年给出月份a月前总共的天数
tobefore=0;
for(j=1850;j<i;j++)
{
tobefore+=days[isrun(j)];
}
//  printf("年%d\n",tobefore);
//到本月底end
for(k=1;k<a;k++)
{
tobefore+=month[isrun(i)][k];
}
//a月1号前一天是周几
todayweek=tobefore%7+2;
if(todayweek==8)
{
todayweek=1;
}
if(c>=todayweek)
{
data=(b-1)*7+c-todayweek+1;
}else{
data=b*7+c-todayweek+1;
}

if(month[isrun(i)][a]>=data)
{
printf("%d/%02d/%02d\n",i,a,data);
}else{
printf("none\n");
}

}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: