C语言判断黑色星期五

注释:在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”
#include<conio.h> 
#include<stdio.h> 
#include "math.h" 
int main() 
{
int num,i; 
int result=0;
int date[50][2]={0};

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*/ 
{
result++;
date[result-1][0]=i;
date[result-1][1]=13;
}
}
} 
else 
{
for(i=1;i<12;i++) 
{
if((365*num+(int)(num/4)-(int)(num/100)+(int)(num/400)+b[i])%7==5) 
{
result++;
date[result-1][0]=i;
date[result-1][1]=13;
}
}
} 
} 

printf("There are %d Black Fridays in year %d./n",result,num);
printf("There are: /n");
for(i=0;i<result;i++)
printf("%d/%d/%d/n",num,date[i][0],date[i][1]);

getch();
return 1;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值