C語言——黑色星期五

簡單一維數組解決黑色星期五問題

題目直接看圖

在這裏插入圖片描述
在這裏插入圖片描述

想法思路:
拿到題目簡單來說就是輸入n年,統計每個月的13號的次數,
因此用到了count[7]數組來統計每個月的13號分別是星期六到星期五的次數。
#include <stdio.h>
#include <string.h>
int main(){
	int i,n,num=1;//1900.1.1是星期一因此num的初始值是1
	int year=1900,month,day=0;//從1900年開始
	int count[7]={0};
	int mon[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};//月份的日期
	scanf("%d",&n);
	for(i=0;i<n;i++,year++){
		if((year%4==0&&year%100!=0)||year%400==0){//判斷閏年 
			mon[2]=29;
		}
		for(month=1;month<13;month++){
			for(day=1;day<=mon[month];day++){
				if(day==13)//遇到13號計數
					count[num]+=1;
				num=(num+1)%7;//一週輪迴要%7哦!
			}
		}
		mon[2]=28;//如果有遇到閏年的要記得把數組設回原來的值
	}
	printf("%d",count[6]);//輸出星期六
	for(i=0;i<5;i++)//週日到週四
    	printf(" %d",count[i]);
    printf(" %d",count[5]);
	printf("\n");
	return 0;
}

據說點贊加關注的人會變得更帥更漂亮哦!

小白第一次寫,有什麼不對的地方歡迎及時指出相互交流哦~~~~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章