程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#實現的根據年月日計算星期幾的函數

C#實現的根據年月日計算星期幾的函數

編輯:關於C語言

算法如下:

基姆拉爾森計算公式

W= (d 2*m 3*(m 1)/5 y y/4-y/100 y/400) mod 7

在公式中d表示日期中的日數,m表示月份數,y表示年數。注意:在公式中有個與其他公式不同的地方:把一月和二月看成是上一年的十三月和十四月,例:如果是2004-1-10則換算成:2003-13-10來代入公式計算。代碼如下:

Code

[copy to clipboard]

CODE:

//y-年,m-月,d-日期
 string CaculateWeekDay(int y,int m, int d)
 {
 if(m==1) m=13;
 if(m==2) m=14;
    int week=(d 2*m 3*(m 1)/5 y y/4-y/100 y/400)%7;
 string weekstr="";
 switch(week)
 {
  case 1: weekstr="星期一"; break;
  case 2: weekstr="星期二"; break;
  case 3: weekstr="星期三"; break;
  case 4: weekstr="星期四"; break;
  case 5: weekstr="星期五"; break;
  case 6: weekstr="星期六"; break;
  case 7: weekstr="星期日"; break;
 } return weekstr;
 }

調用方法:

Label1.Text=CaculateWeekDay(2004,12,9);

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved