万年历查询农历转阳历

万年历查询农历转阳历,第1张

万年历的c语言程序代码包括节假日农历,农历转公历,公历农历查询某 / 多格式万年历 1问题 设计程序实现多规格打印万年历,要求每一横排打印x个月 整数x可取1,2,3,4,6五个选项 2设计思路 设置两个数组:一维m数组存放月份的天数,如m(8)=31,即8月份为31天 二维d数组存放日号,如d(3,24)=11,即3月份第2个星期的星期4为11号 其中24分解为十位数字2与个位数字4,巧妙地利用二维数组存放了三维信息 输入年号y,m数组数据通过赋值完成。根据历法规定,平年二月份为28天; 若年号能被4整除且不被100整除,或能被400整除,该年为闰年,二月份为29天 则必须把m(2)改为29 同时,根据历法,设y年元旦是星期w(取值0-6,0为星期日),整数w的计算公式为 w={y+[(y-1)/4]-[(y-1)/100]+[(y-1)/400]}%7 []为取整。 元旦以后 ,每增加一天,w增1,当w=7时改为w=0即可。 设置三重循环i、j、k为d数组的d(i,j10+k)赋值。i:1-12,表示月份号;j:1-60 表示每个月约定最多6个星期;k;0-6,表示星期k。从元旦的a=1开始,每赋一个元素, a增1,同时w=k+1。当w=7时,w=0(为星期日)。当a>m(i)时,终止第i月的赋值 *** 作。 输入格式参数x(1,2,3,4,6),设置4重循环控制规格打印: n循环,n:1-12/x,控制打印12/x段(每一段x个月)。、 j循环,j:1-6,控制打印每月的6个星期(6行)。 i循环,i:t--t+x-1,控制打印每行x个月(从第t个月至t+x-1月,t=x(n-1)+1) k循环,k:0-6,控制打印每个星期的7天。 / #include #include void main() { int a,i,j,n,k,t,w,x,y,z; static int d[13][78]; int m[14]={0,31,28,31,30,31,30,31,31,30,31,30,31}; char wst[]=Sun Mon Tue Wed Thu Fri Sat; puts(Please enter the year: ); scanf(%d,&y); if(y%4==0&&y%100!=0||y%400==0)闰年的二月为29天 m[2]=29; w=(y+(y-1)/4-(y-1)/100+(y-1)/400)%7;计算y年元旦为星期w for(i=1;im[i]) break; } if(a>m[i]) break; } } puts>>

万年历19570615转换农历 这个简单,我翻了一下人生日历,是农历的1957年五月十八号,星期六,请采纳。

万年历阴历转阳历查询阴历19960815阳历是多少 19960927

只知阳历月份,不查万年历怎么换算阴历月份? 20分 这是祖先计时开始时往后累计的,阴历阳历都是一天一天加的,无法换算

excel如何农历转换阳历公式 比如今天是2010年9月2日,用以下公式就可以得出农历七月二十四:

虽然在遇到闰月时,显示结果有点差强人意,如下图中,2010年2月9日的农历应是十二月二十六,但因为那年有个闰五月,就无辜多出来一个月了。不过总比编代码要快捷多了吧,而且闰月也不是天天有。

假如把公式改成:=MID(甲乙丙丁戊己庚辛壬癸,MOD(TEXT(A2,[$-130000]e)-4,10)+1,1)&MID(子丑寅卯辰巳午未申酉戌亥,MOD(TEXT(A2,[$-130000]e)-4,12)+1,1)&年&TEXT(A2,[$-130000][DBNum1]m月)&TEXT(A2,IF(--TEXT(A2,[$-130000]d)=10,初十,IF(--TEXT(A2,[$-130000]d)>10,[$-130000][DBNum1]d,初[$-130000][DBNum1]d))),那就更像农历表示法了,不过因为农历每年开始日期都不一样,所以函数很难达到十分精确的结果,只能是将就着用。

想用单片机设计一个万年历,如何实现阳历到农历的转换?最好是给出思路和相关程序。 10分

万年历阴历转阳历查询1939年阴历5月初2是阳历几月几号? 阳历:1939年6月18日 星期日 农历五月初二 己卯年 庚午月 丙戌日 兔年 双子座

万年历查询程序 C语言代码 除了天数差计算,基本上是完成了你所提出的功能(天数差计算其实已经提供了年内序数计算方方法,可以在此基础上完善即可)。包含星期计算、公历转农历、农历转公历、节气查询。数据与算法均为原创,绝非网上复制而来。附件中有源代码,同时附带农历数据提取工具,可提取1600到7000年之间的任意年份区间,提取后的数据为压缩数据,占用空间小,同时数据包含数九、三伏、入梅和出梅,非常适合写一份完整的万年历。

部分核心算法函数如下:

判断闰年,参数:年份,返回值:0-平年,1-闰年int IsLeapYear(int iYear);计算日期在年内的序数,参数:年,月,日,年内序数,返回值:0-失败,1-成功int GetDaysNumInYear(int iYear, int iMonth, int iDay,int nDays);从年内序数计算月、日,参数:年,年内序数,月,日,返回值:0-失败,1-成功int GetDateFromDays(int iYear, int nDays, int iMonth, int iDay);检验年、月、日的合法性,参数:年,月,日,返回值:0-失败,1-成功int DateCheck(int iYear,int iMonth,int iDay);获取农历新年的公历年内序数,参数:农历年,返回值:农历新年的公历年内序数int LunarGetNewYearOrdinal(int iLunarYear);获取农历月的天数,参数:农历年,农历月,是否为闰月,返回值:该农历月的天数,为0代表参数无效int LunarGetDaysofMonth(int iLunarYear,int iLunarMonth,int IsLeapMonth);展开大小月数据表(某一年的),参数:农历年,从上一年十一月开始到当前年份(闰)十二月的每月天数,返回值:0-失败,1-成功int LunarExpandDX(int iLunarYear,int iDayOfMonth[15]);获取农历某一年的闰月情况,参数:农历年,返回值,该年的闰月月份,0表示无闰月int LunarGetLeapMonth(int iLunarYear);公历转农历,参数:公历年、月、日,农历年、月、日,是否为闰月,返回值:0-失败,1-成功int Gongli2Nongli(int iYear,int iMonth,int iDay,int iLunarYear,int iLunarMonth,int iLunarDay,int iIsLeapMonth);农历转公历,参数:家历年、月、日,是否为闰月,公历年、月、日,返回值:0-失败,1-成功int Nongli2Gongli(int iLunarYear,int iLunarMonth,int iLunarDay,int iIsLeapMonth,int iYear,int iMonth,int iDay);得到指定年份的节气信息,首个是小寒int GetJieQi(int iYear,int uMonth,unsigned int uJieQi[2]);计算星期unsigned int GetDayOfWeek(int iYear,int u>>

vivo手机在日历中如何进行农历与公历互换查询 都写着呢,你换她干嘛。我也是vivo换不了

新历转农历 v凉了海冷了天:你好。2013年的农历8月8。

是阳历2013年09月12日

手机日历是否显示农历和安桌系统没啥关系,是和你手机本身性能有关系,能否设置直接显示“农历”,还需要看看你的手机是否支持。

第一步   下载安装xposed框架,这是一个可以在不修改APK的情况修改系统信息的框架。从实质上说,这个框架和相应的模块都只是为了你的手机添加功能。

第二步   安装好xposed框架后,打开xposed,选择框架

第三步  xposed框架中选择安装更新激活框架,然后重启手机

第四步   下载安装状态栏农历日期模块,直接下载安装即可

第五步   在xposed框架中找到模块——进入里面即可找到刚刚安装的农历模块,勾选激活并点击进去设置

第六步    在农历设置里面有更加详细的显示设置,可以设置农历节日、节气显示。设置完毕重启设备

第七步   再次重启后就可以在手机锁屏界面发现农历信息,同时如果你下来状态栏的话也可以显示出农历日期

注意事项

安装xposed框架必须手机ROOT,同时安卓版本在40以上

小米miui安装xposed可能无限重启,小米系统本身已经深度优化好像也有农历显示。

<%

' 用途:

' 当前日期计算该日期的农历天干地支及当年属相

' ##-------------------------------------------##

Dim objChinaDay

Dim sDay, sWeekDay, sChinaDay, sChinaYear,sChinaAni

Set objChinaDay = New ChinaDay

Call objChinaDayAction("",sDay,sWeekDay,sChinaYear,sChinaDay,sChinaAni)

ResponseWrite sDay&" " '当前日期

ResponseWrite sWeekDay&" " '星期

ResponseWrite sChinaYear&" " '农历年份

ResponseWrite sChinaDay&" " '农历日期

ResponseWrite sChinaAni&" " '生肖

' Copyright: 本代码非原创,原作者未知。

'

Class ChinaDay

Dim arrWeekName(7), MonthAdd(11), NongliData(99)

Dim arrTianGan(9), arrDiZhi(11), arrShuXiang(11), arrDayName(30), arrMonName(12)

Dim curTime, curYear, curMonth, curDay, curWeekday

Dim i, m, n, k, isEnd, bit, TheDate

'初始化数据

Sub Class_Initialize()

'-------------------------------------------------------------------------

'定义显示字串

'星期名

arrWeekName(0) = ""

arrWeekName(1) = "星期日"

arrWeekName(2) = "星期一"

arrWeekName(3) = "星期二"

arrWeekName(4) = "星期三"

arrWeekName(5) = "星期四"

arrWeekName(6) = "星期五"

arrWeekName(7) = "星期六"

'天干名称

arrTianGan(0) = "甲"

arrTianGan(1) = "乙"

arrTianGan(2) = "丙"

arrTianGan(3) = "丁"

arrTianGan(4) = "戊"

arrTianGan(5) = "己"

arrTianGan(6) = "庚"

arrTianGan(7) = "辛"

arrTianGan(8) = "壬"

arrTianGan(9) = "癸"

'地支名称

arrDiZhi(0) = "子"

arrDiZhi(1) = "丑"

arrDiZhi(2) = "寅"

arrDiZhi(3) = "卯"

arrDiZhi(4) = "辰"

arrDiZhi(5) = "巳"

arrDiZhi(6) = "午"

arrDiZhi(7) = "未"

arrDiZhi(8) = "申"

arrDiZhi(9) = "酉"

arrDiZhi(10) = "戌"

arrDiZhi(11) = "亥"

'属相名称

arrShuXiang(0) = "鼠"

arrShuXiang(1) = "牛"

arrShuXiang(2) = "虎"

arrShuXiang(3) = "兔"

arrShuXiang(4) = "龙"

arrShuXiang(5) = "蛇"

arrShuXiang(6) = "马"

arrShuXiang(7) = "羊"

arrShuXiang(8) = "猴"

arrShuXiang(9) = "鸡"

arrShuXiang(10) = "狗"

arrShuXiang(11) = "猪"

'农历日期名

arrDayName(0) = ""

arrDayName(1) = "初一"

arrDayName(2) = "初二"

arrDayName(3) = "初三"

arrDayName(4) = "初四"

arrDayName(5) = "初五"

arrDayName(6) = "初六"

arrDayName(7) = "初七"

arrDayName(8) = "初八"

arrDayName(9) = "初九"

arrDayName(10) = "初十"

arrDayName(11) = "十一"

arrDayName(12) = "十二"

arrDayName(13) = "十三"

arrDayName(14) = "十四"

arrDayName(15) = "十五"

arrDayName(16) = "十六"

arrDayName(17) = "十七"

arrDayName(18) = "十八"

arrDayName(19) = "十九"

arrDayName(20) = "二十"

arrDayName(21) = "廿一"

arrDayName(22) = "廿二"

arrDayName(23) = "廿三"

arrDayName(24) = "廿四"

arrDayName(25) = "廿五"

arrDayName(26) = "廿六"

arrDayName(27) = "廿七"

arrDayName(28) = "廿八"

arrDayName(29) = "廿九"

arrDayName(30) = "卅十"

'农历月份名

arrMonName(0) = ""

arrMonName(1) = "正"

arrMonName(2) = "二"

arrMonName(3) = "三"

arrMonName(4) = "四"

arrMonName(5) = "五"

arrMonName(6) = "六"

arrMonName(7) = "七"

arrMonName(8) = "八"

arrMonName(9) = "九"

arrMonName(10) = "十"

arrMonName(11) = "冬"

arrMonName(12) = "腊"

'-------------------------------------------------------------------------

'公差数据定义

'公历每月前面的天数

MonthAdd(0) = 0

MonthAdd(1) = 31

MonthAdd(2) = 59

MonthAdd(3) = 90

MonthAdd(4) = 120

MonthAdd(5) = 151

MonthAdd(6) = 181

MonthAdd(7) = 212

MonthAdd(8) = 243

MonthAdd(9) = 273

MonthAdd(10) = 304

MonthAdd(11) = 334

'农历数据

NongliData(0) = 2635

NongliData(1) = 333387

NongliData(2) = 1701

NongliData(3) = 1748

NongliData(4) = 267701

NongliData(5) = 694

NongliData(6) = 2391

NongliData(7) = 133423

NongliData(8) = 1175

NongliData(9) = 396438

NongliData(10) = 3402

NongliData(11) = 3749

NongliData(12) = 331177

NongliData(13) = 1453

NongliData(14) = 694

NongliData(15) = 201326

NongliData(16) = 2350

NongliData(17) = 465197

NongliData(18) = 3221

NongliData(19) = 3402

NongliData(20) = 400202

NongliData(21) = 2901

NongliData(22) = 1386

NongliData(23) = 267611

NongliData(24) = 605

NongliData(25) = 2349

NongliData(26) = 137515

NongliData(27) = 2709

NongliData(28) = 464533

NongliData(29) = 1738

NongliData(30) = 2901

NongliData(31) = 330421

NongliData(32) = 1242

NongliData(33) = 2651

NongliData(34) = 199255

NongliData(35) = 1323

NongliData(36) = 529706

NongliData(37) = 3733

NongliData(38) = 1706

NongliData(39) = 398762

NongliData(40) = 2741

NongliData(41) = 1206

NongliData(42) = 267438

NongliData(43) = 2647

NongliData(44) = 1318

NongliData(45) = 204070

NongliData(46) = 3477

NongliData(47) = 461653

NongliData(48) = 1386

NongliData(49) = 2413

NongliData(50) = 330077

NongliData(51) = 1197

NongliData(52) = 2637

NongliData(53) = 268877

NongliData(54) = 3365

NongliData(55) = 531109

NongliData(56) = 2900

NongliData(57) = 2922

NongliData(58) = 398042

NongliData(59) = 2395

NongliData(60) = 1179

NongliData(61) = 267415

NongliData(62) = 2635

NongliData(63) = 661067

NongliData(64) = 1701

NongliData(65) = 1748

NongliData(66) = 398772

NongliData(67) = 2742

NongliData(68) = 2391

NongliData(69) = 330031

NongliData(70) = 1175

NongliData(71) = 1611

NongliData(72) = 200010

NongliData(73) = 3749

NongliData(74) = 527717

NongliData(75) = 1452

NongliData(76) = 2742

NongliData(77) = 332397

NongliData(78) = 2350

NongliData(79) = 3222

NongliData(80) = 268949

NongliData(81) = 3402

NongliData(82) = 3493

NongliData(83) = 133973

NongliData(84) = 1386

NongliData(85) = 464219

NongliData(86) = 605

NongliData(87) = 2349

NongliData(88) = 334123

NongliData(89) = 2709

NongliData(90) = 2890

NongliData(91) = 267946

NongliData(92) = 2773

NongliData(93) = 592565

NongliData(94) = 1210

NongliData(95) = 2651

NongliData(96) = 395863

NongliData(97) = 1323

NongliData(98) = 2707

NongliData(99) = 265877

End Sub

'#################################################################

'主要方法 Action

' inDay 输入日期,如果不输入则默认为当前日期

' sDay 中文格式日期

' sWeekDay 周几

' sChinaYear 农历年

' sChinaDay 农历日

' sChinaAni 属相

'#################################################################

Public Function Action(inDay,sDay,sWeekDay,sChinaYear,sChinaDay,sChinaAni)

'转换要转换的日期

If inDay="" Or Not IsDate(inDay) Then

'获取当前系统时间

curTime = Now()

Else

curTime = CDate(inDay)

End If

If Datediff("d",curTime,Cdate("1921-2-8"))>0 Then

Exit Function

End If

'生成当前公历年、月、日 ==> sDay

curYear = Year(curTime)

curMonth = Month(curTime)

curDay = Day(curTime)

sDay = curYear&"年"

If (curMonth < 10) Then

sDay = sDay&"0"&curMonth&"月"

Else

sDay = sDay&curMonth&"月"

End If

If (curDay < 10) Then

sDay = sDay&"0"&curDay&"日"

Else

sDay = sDay&curDay&"日"

End If

'生成当前公历星期 ==> sWeekDay

curWeekday = Weekday(curTime)

sWeekDay = arrWeekName(curWeekday)

'计算到初始时间1921年2月8日的天数:1921-2-8(正月初一)

TheDate = (curYear - 1921) 365 + Int((curYear - 1921) / 4) + curDay + MonthAdd(curMonth - 1) - 38

If ((curYear Mod 4) = 0 AND curMonth > 2) Then

TheDate = TheDate + 1

End If

'计算农历天干、地支、月、日

isEnd = 0

m = 0

'------------------------------------

Do

If (NongliData(m) < 4095) Then

k = 11

Else

k = 12

End if

n = k

'------------------------------------

Do

If (n < 0) Then

Exit Do

End If

'获取NongliData(m)的第n个二进制位的值

bit = NongliData(m)

For i = 1 To n Step 1

bit = Int(bit / 2)

Next

bit = bit Mod 2

If (TheDate <= 29 + bit) Then

isEnd = 1

Exit Do

End If

TheDate = TheDate - 29 - bit

n = n - 1

Loop

'------------------------------------

If (isEnd = 1) Then

Exit Do

End If

m = m + 1

Loop

'------------------------------------

curYear = 1921 + m

curMonth = k - n + 1

curDay = TheDate

If (k = 12) Then

If (curMonth = (Int(NongliData(m) / 65536) + 1)) Then

curMonth = 1 - curMonth

ElseIf (curMonth > (Int(NongliData(m) / 65536) + 1)) Then

curMonth = curMonth - 1

End if

End If

'生成农历天干、地支==> sChinaYear

sChinaYear = "农历"&arrTianGan(((curYear - 4) Mod 60) Mod 10)&arrDiZhi(((curYear - 4) Mod 60) Mod 12)&"年"

'生成属相 == > sChinaAni

sChinaAni = arrShuXiang(((curYear - 4) Mod 60) Mod 12)

'生成农历月、日 ==> NongliDayStr

If (curMonth < 1) Then

sChinaDay = "闰"&arrMonName(-1 curMonth)

Else

sChinaDay = arrMonName(curMonth)

End If

sChinaDay = sChinaDay&"月"

sChinaDay = sChinaDay & arrDayName(curDay)

End Function

End Class

%>

农历是我国传统历法,又称华历、夏历、中历、国历、俗称阴历。定月的方法是以朔望月周期确定,朔所在日为初一。由于朔望月平均长度295306天,所以农历大月30天,小月29天。农历平年有十二个月,全年354天或355天(个别年份353天);闰年为十三个月,其中某一月为闰月,月名依前一月名而定,如前月是八月,闰月则为闰八月。闰年全年383天或384天(个别年份385天)。设置闰月的方法是:农历月份中无“中气”的月份则是闰月。

农历,又称夏历、汉历、华历,是中国传统历法。主要规则经历多个朝代逐渐完善形成,其形式一直延续至今。农历属于一种阴阳历,其年份分为平年和闰年。平年为十二个月;闰年为十二个普通月另加一个闰月,总共十三个月。月份分为大月和小月,大月三十天,小月二十九天,其平均历月等于一个朔望月。平年全年353~355天,闰年全年383~385天。为了协调朔望月和回归年之间的关系,所以设置闰月以使平均历年为一个回归年。置闰规则为使用冬至作为计算回归年的起点,从上一年冬至所在历月(十一月,也叫做冬月)到下一年冬至所在历月(十一月)之间,如果只有十二个朔望月,则设立为平年,不置闰,共354或355天。如果出现十三个朔望月时,则从上一年冬至所在历月(十一月)之后起算,使用第一个不含二十四气中任意一个中气的历月,设立为闰月,放在某一月之后就是闰几月。此外,农历二十四节气反映了季节的变化特征,有助于农业生产和人民生活。

民间俗称农历为“阴历”,其实是广为流传的谬称。因为农历实际上属于阴阳历,所以错误的俗称“阴历”应该弃用。真正纯阴历的特征是:只考虑月相的周期性变化,而不考虑回归年长度。月份与季节无关,没有平年和闰年之分,新年可以出现在阳历的任何一天。比如伊斯兰历才是一种真正的纯阴历。

农历的特点如下:

计算采用北京时间为标准。

太阳和月亮位置的计算依据国际天文学联合会(Internation Astronomical Union)下属的基础天文标准评 审委员会(the Standards Of Fundamental Astronomical Reviewing Board) 推荐的天体位置归算标准模型。

朔所在的农历日为农历月首。

冬至所在的月为十一月。

如果从某一年十一月开始到下一年十一月(不含)之间有13个 农历月,则取其中最先出现的一个不包含中气的农历月为闰月;

十一月之后第二个(不计闰月)农历月为农历年的起始月,称为正月。

农历年干支的参考时间:对应于1984年正月初一零时起到1984年腊月三十零时止的时间间隔的农历年为甲子年。

农历日干支的参考时间:北京时间1983年腊月廿九为甲子日。

朔日为每月起点(初一日);朔日(月初一日)到下个朔日(下月初一日)有多少天、这月就有多少天。有30天为大月、有29天为小月;唐朝武德二年(公元619年)以前用的是平朔,武德二年(公元619年)以后用的是定朔。

以冬至日必须在子月(十一月),上个冬至月(十一月)到下个冬至月如有12个月就不置闰,如有13个月就要置闰,以上个冬至月之后第一个无中气的月份为闰月,在几月后面就称闰几月。 例如:2032壬子年冬至月到2033癸丑年冬至月之间有12个月,就不置闰。2033癸丑年冬至月到2034甲寅年冬至月有13个月就必须置闰,在2033癸丑年冬至月后的第一个无中气之月是该月的下一个月,就定为闰月。它在十一月后,所以就叫闰十一月。

希望我能帮助你解疑释惑。

1轻点屏幕底部的“日历”。

2选择或取消选择“中国大陆节假日”(或你所在国家或地区的节日日历)。

进一步了解如何在 iPhone 上使用节日日历,或将首选节假日日历改为其他地区。

如需其他方面的协助,请联系 Apple 支持。

以上就是关于万年历查询农历转阳历全部的内容,包括:万年历查询农历转阳历、安卓系统手机如何在日历中显示农历、想用单片机设计一个万年历,如何实现阳历到农历的转换最好是给出思路和相关程序。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10083227.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存