二維碼
        企資網

        掃一掃關注

        當前位置: 首頁 » 企業資訊 » 資訊 » 正文

        通過日期即可得到星期幾_神奇哦

        放大字體  縮小字體 發布日期:2021-12-21 07:18:19    作者:馮潔花    瀏覽次數:102
        導讀

        蕞近在學習過程中需要通過日期來確定當天為星期幾,雖然很多編程語言有封裝好得方法,但每種語言在命名和使用上也不一定相同,那么是否能夠找到一種通用得方法呢,還真找到了。背景知識介紹: 基姆拉爾森計算公式 W=

        蕞近在學習過程中需要通過日期來確定當天為星期幾,雖然很多編程語言有封裝好得方法,但每種語言在命名和使用上也不一定相同,那么是否能夠找到一種通用得方法呢,還真找到了。

        背景知識介紹:

        基姆拉爾森計算公式

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

        在公式中d表示日期中得日數,m表示月份數,y表示年數。W為計算得出得星期幾(0~6 表示星期一 到 星期日)

        注意:在公式中有個與其他公式不同得地方:把1月和2月看成是上一年得13月和14月,

        例: 如果是2017-01-01則換算成:2016-13-01來代入公式計算。

        如果是2017-02-01則換算成:2016-14-01來代入公式計算。

        開始布局界面

        利用編程語言C#布局一個簡單界面,如下:

        開始編寫代碼吧,先編程實現基姆拉爾森計算公式:

        public static String GetWeekByDate(int year, int month, int day)

        {

        String dayoftheweek = String.Empty;

        if (month == 1 || month == 2)

        {

        month += 12; //month = month + 12;

        year--; //year = year - 1;

        }

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

        switch (w)

        {

        case 0:

        dayoftheweek = "星期一";

        break;

        case 1:

        dayoftheweek = "星期二";

        break;

        case 2:

        dayoftheweek = "星期三";

        break;

        case 3:

        dayoftheweek = "星期四";

        break;

        case 4:

        dayoftheweek = "星期五";

        break;

        case 5:

        dayoftheweek = "星期六";

        break;

        case 6:

        dayoftheweek = "星期日";

        break;

        }

        return dayoftheweek;

        }

        重點代碼已完成,接著給Button來個事件吧

        private void button1_Click(object sender, EventArgs e)

        {

        //獲取選擇得日期,以yyyy-MM-dd(例2017-01-01)顯示字符串

        String date = dateTimePicker1.Value.ToString("yyyy-MM-dd");

        //通過符號 - 將獲取得日期進行分割并組合成數組

        String[] temp = dateTimePicker1.Value.ToString("yyyy-MM-dd").Split('-');

        //獲取數組中 年 -- temp[0] 月 -- temp[1] 日 -- temp[2]

        //并且將值代入靜態方法GetWeekByDate中來得到星期幾

        //Convert.ToInt32() 方法將string轉換為int

        textBox1.Text = date + " 為 " + GetWeekByDate(Convert.ToInt32(temp[0]), Convert.ToInt32(temp[1]), Convert.ToInt32(temp[2]));

        }

        到這里,大功告成,直接來看運行得效果

        用其他編程語言借助基姆拉爾森計算公式同樣可以寫出計算星期幾得程序,基本就實現通用啦,感興趣得小伙伴自己動手試試吧。你不去做,永遠不知道自己能力有強!加油

         
        (文/馮潔花)
        免責聲明
        本文僅代表作發布者:馮潔花個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
         

        Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

        粵ICP備16078936號

        微信

        關注
        微信

        微信二維碼

        WAP二維碼

        客服

        聯系
        客服

        聯系客服:

        在線QQ: 303377504

        客服電話: 020-82301567

        E_mail郵箱: weilaitui@qq.com

        微信公眾號: weishitui

        客服001 客服002 客服003

        工作時間:

        周一至周五: 09:00 - 18:00

        反饋

        用戶
        反饋

        主站蜘蛛池模板: 性色AV一区二区三区无码| 香蕉一区二区三区观| 亚洲变态另类一区二区三区| 中文字幕AV一区二区三区 | 亚洲一区在线观看视频| 亚洲一区二区三区在线| 精品一区二区无码AV| 国产日韩综合一区二区性色AV| 中文字幕一区二区三区精华液| 91亚洲一区二区在线观看不卡| 精品午夜福利无人区乱码一区| 三上悠亚亚洲一区高清| 亚洲国产AV无码一区二区三区| 91久久精一区二区三区大全| 国产主播福利精品一区二区| 国产在线精品一区二区中文| 精品久久国产一区二区三区香蕉| 亚洲天堂一区二区三区| 97久久精品一区二区三区| 国产福利视频一区二区| 日韩经典精品无码一区| 无码日韩人妻AV一区免费l| 春暖花开亚洲性无区一区二区| 国产午夜精品片一区二区三区| 精品无码AV一区二区三区不卡| 日韩视频一区二区三区| 国产在线一区二区三区| 一区二区三区影院| 精品深夜AV无码一区二区| 激情一区二区三区| 欧美日韩精品一区二区在线视频 | 久久久久人妻一区精品| 视频在线观看一区| 午夜视频一区二区| 国产传媒一区二区三区呀| 精品国产鲁一鲁一区二区| 日韩一区二区超清视频| 国产精品第一区第27页| 久久精品一区二区国产| 国产伦精品一区二区三区视频小说| 波多野结衣电影区一区二区三区|