日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

生日计算年龄

發(fā)布時(shí)間:2023/12/14 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 生日计算年龄 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

引子

對(duì)于一個(gè),極端追求完美的程序員,寫(xiě)代碼,有時(shí)候是很痛苦的。這種痛苦不是怎么實(shí)現(xiàn)一個(gè)需求,而是痛苦于選擇,選擇用那種方法實(shí)現(xiàn),才能做到完美。
——今天,天氣悶熱,要下大雨的樣子,股票行情持續(xù)走低,大盤(pán)接近2700點(diǎn)。

問(wèn)題描述

最近做項(xiàng)目有一個(gè)需求,需要通過(guò)出生日期計(jì)算年齡。當(dāng)聽(tīng)到這個(gè)需求,我最直觀的想法就是,出生年份與系統(tǒng)年份做差再加一,得到的年齡(自認(rèn)為簡(jiǎn)單粗暴,計(jì)算準(zhǔn)確【按虛歲】)??墒钱?dāng)和其他同事討論的時(shí)候,說(shuō)一般情況按照周歲計(jì)算,比較合適。正當(dāng)和同事討論的時(shí)候,忽然另一同事問(wèn)到,虛歲和周歲的概念是怎么定義的?我之前也只是模糊的知道,真被同事問(wèn)起來(lái),我也是懵逼的(生活中處處是學(xué)問(wèn))。
虛歲是中國(guó)傳統(tǒng)的計(jì)齡方式,也流行于亞洲東部其它國(guó)家,用于計(jì)算人出生后正在經(jīng)歷的年份次序(序數(shù)),以剛出生時(shí)為一歲,因?yàn)檫@是人出生后的第一年,與已經(jīng)歷過(guò)的懷孕近一年無(wú)關(guān)。按照農(nóng)歷【摘自百科】

周歲,是國(guó)際通用的年齡計(jì)算方式。它計(jì)算的是出生后已經(jīng)度過(guò)的時(shí)間長(zhǎng)度(為基數(shù),故也可以計(jì)算尾數(shù),如三歲零兩個(gè)月,七歲半等)。按照公歷【摘自百科】。
經(jīng)過(guò)以上對(duì)虛歲和周歲概念的理解我們可以得到下表(簡(jiǎn)化按照公歷計(jì)算):

出生日期 \ 系統(tǒng)當(dāng)前時(shí)間虛歲周歲
2017-07-07 \2018-02-0220歲6個(gè)月26天
2017-07-07 \2018-08-0721歲1個(gè)月
2017-07-07 \2019-07-0231歲11個(gè)月26天

由于我們項(xiàng)目中的需求,對(duì)年齡為整數(shù)顯示,沒(méi)有月數(shù)和日數(shù),最后討論,用周歲顯示,但只顯示幾周歲,月數(shù)和日數(shù)舍去,零周歲顯示一歲。
實(shí)現(xiàn)代碼如下:

int GetAge(STPerItem *st, CDeviceInfo *m_Device) {int nAge = m_Device->nSysYear - st->nYear;if (nAge <= 0) {nAge = 1;} else {if (m_Device->nMonth < st->nMonth) {nAge -= 1;} else if (m_Device->nMonth == st->nMonth) {if (m_Device->nDay < st->nDay) {nAge -= 1;}}}return nAge; }

總結(jié):

解決問(wèn)題之前,一定要搞懂所有相關(guān)概念(切記概念模糊),只有做到胸中有數(shù),才能完美解決問(wèn)題。

總結(jié)

以上是生活随笔為你收集整理的生日计算年龄的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。