C語言 已知任意的年份和月份顯示當月的日曆

2021-10-05 22:14:40 字數 1033 閱讀 7095

根據基姆拉爾森計算公式,演算法如下:

w = (day+2month+3(month-1)/5+year+year/4-year/100+year/400)%7;

解釋:公式中的日期中的日數,month表示日期中的月份數,year代表日期中的年份數

**如下:

#include

#include

//判斷是否閏年

intleapyear

(int year)

else

}int

main

(void

)//每月的天數隨月份的不同而不同

int daycount =0;

switch

(month)

else

break;}

default

:break;}

int blank =0;

blank =(1

+2*month+3*

(month+1)

/5+year+year/

4-year/

100+year/

400)%7

;if(month >12)

printf

("-------------------%d,%d----------------\n"

,year,month)

;printf

("mon\ttue\twed\tthr\tfri\tsat\tsun\n");

int i =0;

for(i =

0;i)for

(i =

1;i<=daycount;i++)}

}

總結:分清楚每月的1號是星期幾即可。所以演算法:

w = (day+2month+3(month-1)/5+year+year/4-year/100+year/400)%7;中的 day = 1.即可

sqlserver擷取日期的年份和月份

sqlserver 擷取日期年份和月份使用datepart函式,函式使用方法如下 一 函式功能 datepart 函式用於返回日期 時間的單獨部分,比如年 月 日 小時 分鐘等等。二 語法 datepart datepart,date 三 引數說明 date 引數是合法的日期表示式。datepart...

得到任意兩個年份之間的各個年份和各個年份所佔的月數

其中startdate必須大於等於enddate public class calendarmgr while startschoolyear endschoolyear int schoolyear new int arrschoolyears.count arrschoolyears.copyt...

列印一年內任意月份的日曆(C語言)

題目要求 2007年1月1日為星期一,編寫乙個函式,輸出2007年任意月份的日曆 這道題我是個人的做法,有個別地方可能有些繞。includeint main printf n n return 0 int iswhatday int month distance days 7 switch dist...