二維碼
        企資網

        掃一掃關注

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

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

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

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

        反饋

        用戶
        反饋

        精品久久久久久久无码| 中文字幕在线观看亚洲日韩| 中文无码一区二区不卡αv| 合区精品久久久中文字幕一区| 国产成人麻豆亚洲综合无码精品| 免费无码又爽又刺激高潮视频| 中文字幕无码人妻AAA片| 亚洲熟妇无码另类久久久| 嫩草影院无码av| 国产成人无码区免费内射一片色欲| 久99久无码精品视频免费播放| 免费精品久久久久久中文字幕| 丰满熟妇乱又伦在线无码视频| 亚洲欧美日韩中文字幕在线不卡| 日韩精品无码熟人妻视频| 中文字幕亚洲综合精品一区| 国产V亚洲V天堂无码久久久| 无码人妻精品中文字幕免费东京热 | 波多野结衣中文字幕在线 | 中文字幕AV一区中文字幕天堂| 国产网红主播无码精品| 天堂在线资源中文在线8| 亚洲AV日韩AV永久无码免下载 | 无码人妻精品中文字幕免费东京热| 亚洲av麻豆aⅴ无码电影| 亚洲av中文无码乱人伦在线咪咕| 无码中文人妻在线一区二区三区| 国产精品无码午夜福利| 十八禁视频在线观看免费无码无遮挡骂过| 国产成人无码精品久久久久免费| 中文字幕无码乱人伦| 婷婷中文娱乐网开心| 天堂无码在线观看| 欧洲人妻丰满av无码久久不卡 | 直接看的成人无码视频网站| 亚洲AV无码一区二区三区国产| 无码国产午夜福利片在线观看| 中文字幕精品无码一区二区| 久久久久久久久久久久中文字幕| 少妇极品熟妇人妻无码| 国产无遮挡无码视频免费软件|