如何用c语言编一个程序判断黑色星期五

在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。
输入:年份 输出:判断该年是否包含黑色星期五,如包含,给出具体日期。
例如:输入年份2006,则需要输出There are 2 Black Fridays in year 2006.
They are:
2006/1/13
2006/10/13

用c语言编一个程序判断黑色星期五的方法如下:

需要设立一个初始点,比方说设定1900年1月1日为初始点,然后依次按7天计算这样就可以同时判断之后的某天是星期几了。然后重叠上那一天是几号就可以用一个if(day==星期五&&day==13号)判断来输出是黑色星期五了,具体的代码可以自己写出来,可以加入当时英国划去了几天的那个事件。

黑色星期五,在西方,星期五和数字13都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。
输入:年份。
输出:判断该年是否包含黑色星期五,如包含,给出具体日期。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-04-27
在这里我们就需要设立一个初始点,比方说设定1900年1月1日为初始点,然后依次按7天计算这样就可以同时判断之后的某天是星期几了,然后重叠上那一天是几号就可以用一个if(day==星期五&&day==13号)判断来输出是黑色星期五了,具体的代码我想你可以自己写出来,当然你想得周到些的话可以加入当时英国划去了几天的那个事件,不过我也不记得划了多少天了本回答被网友采纳
第2个回答  2009-03-22
按楼主的要求:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
int year,i,j=0;
int a[13]={0,12,43,71,102,132,163,193,224,255,285,316,346};
int b[13]={0,12,43,72,103,133,164,194,225,256,286,317,347};
int black[10];
for(i=1;i<12;i++)
{
printf("请输入一个年数:\n");
scanf("%d",&year);
if(year % 4 != 0 || (year % 100 == 0 && year % 400 != 0 ))
{
for(i=1;i<12;i++)
{
if((365*year+year/4-year/100+year/400+a[i])%7==5)
black[j++]=i;
}
}
else
{
for(i=1;i<12;i++)
{
if((365*year+year/4-year/100+year/400+b[i])%7==5)
black[j++]=i;
}
}
}
if(j==0)
{
printf("Doesn't exist.\n");
}
else
{
printf("There are %d Black Fridays in year %d.\n",j,year);
printf("They are:\n");
for(i=0;i<j;i++)
printf("%d/%d/13\n",year,black[i]);
}
system("PAUSE");
return 0;
}本回答被网友采纳
第3个回答  2009-03-21
用数组