满意答案
zmaz2388
2013.04.21
采纳率:45% 等级:12
已帮助:5869人
你的算法太乱了给你简单的自己研究吧:
#include "stdio.h"
#include "math.h"
main()
{int num,n,i,x;
int a[13]={0,12,43,71,102,132,163,193,224,255,285,316,346};/*非闰年对应的每个月13号到1月1号的天数,以下用到a[0]=0避免麻烦。多加一个数*/
int b[13]={0,12,43,72,103,133,164,194,225,256,286,317,347};};/*闰年对应的每个月13号到1月1号的天数,以下用到*/
for(i=1;i<12;i++)
{printf("input a year:\n");
scanf("%d",&num);
if(num % 4 != 0 || (num % 100 == 0 && num % 400 != 0 ))
{for(i=1;i<12;i++)
{if((365*num+(int)(num/4)-(int)(num/100)+(int)(num/400)+a[i])%7==5)/*判断i月的13号是不是星期5*/
printf ("month %d,day %d is black friday\n",i,13);
}}
else
{for(i=1;i<12;i++)
{if((365*num+(int)(num/4)-(int)(num/100)+(int)(num/400)+b[i])%7==5)
printf ("month %d,day %d is black friday\n",i,13);}}
}
}
05分享举报