编程学习网 > 编程语言 > C/C++开发 > 如何用c语言计算所有存在黑色星期五的月份?黑色星期五怎么用C语言判定
2022
03-15

如何用c语言计算所有存在黑色星期五的月份?黑色星期五怎么用C语言判定

说起黑色星期五,大家可能立马会想到十一月的黑五大折扣,虽然关于“黑色星期五”的起源,有着不同版本的传说。但这并没有阻止它成为假日购物活动的代名词。长期以来,“黑色星期五”一直都是假日购物季的开端,但这个一年一度的零售促销活动日,却是一个有点神秘色彩的日子。软件研发公司Bold Commerce的联合创始人兼副总裁杰伊‧迈尔斯(Jay Myers)对此表示:“许多人认为,‘黑色星期五’源于这样一种想法,即这一天对于零售商来说是一个幸运的、利润丰厚的日子,他们在这一天可以‘摆脱赤字’、‘扭亏为盈’。但实际上,这个词并非来自零售商。20世纪60年代,费城警方首次使用了‘黑色星期五’这个词,来形容感恩节后的那一天。当时大批游客涌入费城购物,造成了交通堵塞和诸多事故。”

但也有人说黑色星期五这一说法起源于圣经。传说最后的晚餐中就是第13个来访者背叛了基督,而耶稣基督之死就在周五。所以13和星期五在西方文化中都被认为是不吉利的,要是两者撞在一起,那就是“茶几日”了好么,由此Friday the 13th的说法便流传开来

那黑色星期五和C语言又有什么关系呢?我们都知道C语言是用来编程,从而实现一个目标。那我们是否可以使用C语言帮我们查找出一年中所有存在黑色星期五的月份呢?

接下来就直接看代码


#include <stdio.h>
 
int main(void)
{
	int year , moon ,day ,week ,y_in;
	int i ,count = 0 ;
	day = 13 ;		//总是判断13号,其他的不管
	printf("Pls input year : ") ;  scanf("%d",&y_in) ;
 
	for(i = 1 ;i <= 12 ;i++)
	{
		if(i == 1 || i == 2)
		{
			moon = i + 12 ;
			year = y_in - 1 ;
		}
		else
		{
			moon = i ;
			year = y_in ;
		}
		if((year < 1752) || (year == 1752 && moon < 9) || (year == 1752 && moon == 9 && day < 3))
			week = (day + 2 * moon + 3 * (moon + 1) / 5 + year + year / 4 + 5) % 7 ;
		else
			week = (day + 2 * moon + 3 * (moon + 1) / 5 + year + year / 4 - year / 100 + year / 400) % 7 ;
		week++ ;		//除 7 取余得到的是 0--6 的数字,需要 + 1 来修正到我们习惯的 1 --7 星期表示法 。
		if(week == 5)
		{
			count++ ;
			printf("moon : %d\n",i) ;
		}
	}
	if(count == 0)
	{
		printf("This year don't have black friday.\n") ;
	}
	else 
		printf("All black friday is %d:\n",count) ;
	return 0 ;
}

以上就是“如何用c语言计算所有存在黑色星期五的月份?黑色星期五怎么用C语言判定”的详细内容,想要了解更多C语言内容欢迎持续关注编程学习网 


扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取