C#判斷一天、一年已經(jīng)過了百分之多少的方法
本文實(shí)例講述了C#判斷一天、一年已經(jīng)過了百分之多少的方法。分享給大家供大家參考。具體如下:
這里寫了四個(gè)函數(shù),分別是
1.判斷當(dāng)前時(shí)間過了今天的百分之多少 static double DayTimePassed()
2.判斷指定時(shí)間過了當(dāng)日的百分之多少 static double DayTimePassed(DateTime dt)
3.判斷當(dāng)前時(shí)間過了今年的百分之多少 static double YearTimePassed()
4.判斷指定時(shí)間過了當(dāng)年的百分之多少 static double YearTimePassed(DateTime dt)
一、函數(shù)代碼
/// <summary> /// 判斷當(dāng)前時(shí)間過了今天的百分之多少 /// </summary> /// <returns></returns> static double DayTimePassed() { DateTime dt = DateTime.Now; double Numerator = dt.Hour * 60 * 60 + dt.Minute * 60 + dt.Second; double Denominator = 24 * 60 * 60; return Numerator / Denominator; } /// <summary> /// 判斷指定時(shí)間過了當(dāng)日的百分之多少 /// </summary> /// <param name="dt"></param> /// <returns></returns> static double DayTimePassed(DateTime dt) { double Numerator = dt.Hour * 60 * 60 + dt.Minute * 60 + dt.Second; double Denominator = 24 * 60 * 60; return Numerator / Denominator; } /// <summary> /// 判斷當(dāng)前時(shí)間過了今年的百分之多少 /// </summary> /// <returns></returns> static double YearTimePassed() { DateTime dt = DateTime.Now; double Numerator = dt.DayOfYear * 24 * 60 * 60 + dt.Hour * 60 * 60 + dt.Minute * 60 + dt.Second; double Denominator = (DateTime.IsLeapYear(dt.Year) ? 366 : 365) * 24 * 60 * 60; return Numerator / Denominator; } /// <summary> /// 判斷指定時(shí)間過了當(dāng)年的百分之多少 /// </summary> /// <param name="dt"></param> /// <returns></returns> static double YearTimePassed(DateTime dt) { double Numerator = dt.DayOfYear * 24 * 60 * 60 + dt.Hour * 60 * 60 + dt.Minute * 60 + dt.Second; double Denominator = (DateTime.IsLeapYear(dt.Year) ? 366 : 365) * 24 * 60 * 60; return Numerator / Denominator; }
二、Main函數(shù)調(diào)用
static void Main(string[] args) { Console.WriteLine(DateTime.Now.ToString()); Console.WriteLine("Day: " + DayTimePassed().ToString("P")); Console.WriteLine("Day: " + DayTimePassed(DateTime.Now).ToString("P")); Console.WriteLine("Year: " + YearTimePassed().ToString("P")); Console.WriteLine("Year: " + YearTimePassed(DateTime.Now).ToString("P")); Console.ReadLine(); }
三、運(yùn)行結(jié)果
希望本文所述對大家的C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
詳解C#如何實(shí)現(xiàn)一個(gè)安全的事件訂閱器
事件訂閱器是一個(gè)對象,它訂閱(或監(jiān)聽)某個(gè)事件,并在事件發(fā)生時(shí)執(zhí)行相應(yīng)的操作,本文主要介紹了C#實(shí)現(xiàn)一個(gè)安全的事件訂閱器的相關(guān)知識,感興趣的可以了解下2024-01-01C# WinForm控件對透明圖片重疊時(shí)出現(xiàn)圖片不透明的簡單解決方法
這篇文章主要介紹了C# WinForm控件對透明圖片重疊時(shí)出現(xiàn)圖片不透明的簡單解決方法,結(jié)合實(shí)例形式分析了WinForm圖片重疊后造成圖片不透明的原因與相應(yīng)的解決方法,需要的朋友可以參考下2016-06-06C#程序提示“正由另一進(jìn)程使用,因此該進(jìn)程無法訪問該文件”的解決辦法
這篇文章主要介紹了C#程序提示“正由另一進(jìn)程使用,因此該進(jìn)程無法訪問該文件”的解決辦法,本文通過改寫程序代碼實(shí)現(xiàn)解決這個(gè)問題,需要的朋友可以參考下2015-06-06unity3d?對接?workerman?實(shí)現(xiàn)聯(lián)機(jī)游戲功能
workerman?是一款開源高性能?PHP?應(yīng)用容器,他除了用于互聯(lián)網(wǎng)、即時(shí)通訊、APP?開發(fā)、硬件通訊、智能家居、物聯(lián)網(wǎng)等領(lǐng)域的開發(fā)外,這篇文章主要介紹了unity3d?對接?workerman?實(shí)現(xiàn)聯(lián)機(jī)游戲,需要的朋友可以參考下2022-10-10