登陆注册
9707

壬戌年是哪一年(壬戌年是什么命)

大财经2023-03-23 03:50:430

unsigned char shengxiaoBuf[2];

********************************************************************************************************/

}

{

4、 5、 6、 7、 8、 9、 0、 1、 2、 3 对应的十天干就是

for(i=0;i<no;i++)

数字为年代的最后的一位数字,比如2005年,最后一位是5,对应的天干就是乙;

意思就是说,若遇甲或己的年份 ,正月是丙寅;遇上乙或庚之年,正月为戊寅;遇上丙或辛之年,正月为庚寅;遇上丁或壬之年,正月为壬寅;遇上戊或癸之年,正月为甲寅。依照正月之干支,其余月份按干支推算即可。有表如下:

公元年份-3,除以12得余数可得地支,如1984年,(1984-3)|12=1所以地支为子;

unsigned char skyBuf[2];

时的天干由日天干也可轻易得到:

7 庚午 19 壬午 31 甲午 43 丙午 55 戊午

4,比如,求1991年干支:1991÷60=33余11,年干支序号数=11-3=8。查干支表知该年为辛未年。 (如能诀六十甲子表就太好了)

公元年份-3,除以10得余数可得天干,如1984年,(1984-3)|10=1所以天干为甲;

月的地支是固定不变的:正月是寅,二月是卯,三月是子,依次类推.....

方法一:

对应数字:1、 2、 3、 4、 5、 6、 7、 8、 9、 0

查表法,前提是你要有个六十甲子表

方法四:

year += 16;

对应数字:1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 0

5 戊辰 17 庚辰 29 壬辰 41 甲辰 53 丙辰

乙、庚 戊寅 己卯 庚辰 辛巳 壬午 癸未 甲申 乙酉 丙戌 丁亥 戊子 己丑

(注意:年干支的是以立春为分界的,正月立春以后出生的,用本年干支;在立春前出生的,用上一年的干支)

12 乙亥 24 丁亥 36 已亥 48 辛亥 60 癸亥

方法三:

6 已巳 18 辛巳 30 癸巳 42 乙巳 54 丁巳

月的干支

unsigned char earthBuf[2];

找日干支的方法最多,但都是比较有挑战性的。有机会我会同大家分享下!当然最简单的就是查万年历了!

比如2005年为例:年代末尾数为5,对应的天干为乙,2005除以12,余数为1,对应的地支为酉,所以2005年为乙酉年。

六十甲子表

** p

时的干支

**------------------------------------------------------------------------------------------------------

甲、巳 丙寅 丁卯 戊辰 己巳 庚午 辛未 壬申 癸酉 甲戌 乙亥 丙子 丁丑

9 壬申 21 甲申 33 丙申 45 戊申 57 庚申

{

StrCopy(earthBuf,(unsigned char *)earth[SEyear%12],2); // 戌

丁、壬 壬寅 癸卯 甲辰 乙巳 丙午 丁未 戊申 己酉 庚戌 辛亥 壬子 癸丑

1 甲子 13 丙子 25 戊子 37 庚子 49 壬子

//即2018年为戊戌狗年

2,比如,《辛亥革命》的辛亥年是1911年(48号干支),《戊戌变法》的戊戌年为35号干支,比辛亥年早13年,则“1911-13=1898”故《戊戌变法》是1898年。

4 丁卯 16 已卯 28 辛卯 40 癸卯 52 乙卯

const unsigned char sky[][3]= {&34;甲&34;,&34;乙&34;,&34;丙&34;,&34;丁&34;,&34;戊&34;,&34;己&34;,&34;庚&34;,&34;辛&34;,&34;壬&34;,&34;癸&34;,};

所以公元1984年为甲子年。

void GetSkyEarth(unsigned char year,unsigned char *p)

year %= 60;

}

示例代码:

StrCopy(skyBuf,(unsigned char *) sky[SEyear%10],2); // 戊

const unsigned char earth[][3]={&34;子&34;,&34;丑&34;,&34;寅&34;,&34;卯&34;,&34;辰&34;,&34;巳&34;,&34;午&34;,&34;未&34;,&34;申&34;,&34;酉&34;,&34;戌&34;,&34;亥&34;,};

相应地支:子、丑、寅、卯、辰、巳、午、 未、 申、 酉、 戌、 亥

** 功能描述:输入公历日期得到一个甲子年(只允许2000-2099年)

时的地支是固定的,这个就不多说了。

*target++=*source++;

void StrCopy(char *target,unsigned char *source,unsigned char no)

{

年 份 一月 二月 三月 四月 五月 六月 七月 八月 九月 十月 十一月 十二月

*p=year;

StrCopy(shengxiaoBuf,(unsigned char *)shengxiao[SEyear%12],2); // 狗

}

10 癸酉 22 乙酉 34 丁酉 46 已酉 58 辛酉

还有戊癸何方觅,甲定之上好追求。

3 丙寅 15 戊寅 27 庚寅 39 壬寅 51 甲寅

代表地支为:子、丑、寅、卯、辰、巳、午、 未、 申、酉、戌、亥,

2 乙丑 14 丁丑 26 己丑 38 辛丑 50 癸丑

GetSkyEarth(18,&SEyear); //2018 ,result: sEyear = 34;

const unsigned char shengxiao[][3]={&34;鼠&34;,&34;牛&34;,&34;虎&34;,&34;兔&34;,&34;龙&34;,&34;蛇&34;,&34;马&34;,&34;羊&34;,&34;猴&34;,&34;鸡&34;,&34;狗&34;,&34;猪&34;};

丙、辛 庚寅 辛卯 壬辰 癸巳 甲午 乙未 丙申 丁酉 戊戌 己亥 庚子 辛丑

相应天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸

天干地支纪年法首先是天干在前,地支在后,比如今年2005就为-乙酉年。

甲己还生甲,乙庚丙作初

甲、乙、丙、丁、戊、己、庚、辛、壬、癸,

}

unsigned char SEyear;

** 输 入: year 公历年

年的干支

用一个你知道的年份的天干地支来推算,比如用2006年算1955年的天干地支,先要知道2006年是丙戌年,用2006-1955=51,再用51除以10,余数为1,表明天干是丙往前推一位,答案是乙,接着用51除以12,余数为3,表明地支是戌往前推三位,答案是未,那么1955年就是乙未年。

/*********************************************************************************************************

戊、癸 甲寅 乙卯 丙辰 丁巳 戊午 己未 庚申 辛酉 壬戌 癸亥 甲子 乙丑

天干算法:

戊癸何方发,壬子是真途 即若该日是甲或己的,在子时上配上甲为甲子;该日是乙或庚的,在子时上配上丙为丙子;丙辛日子时配上戊为戊子;丁壬日为庚子;戊癸日为壬子。知道了子时的天支,便可推知其余。

3,比如,2008年:2008-3=2005,2005÷60,余数为25,查六十年甲子(干支表)25号干支,得知是戊子年。

丙辛从戊起,丁壬庚子居,

我们都知道,日的干支,甲子为第一日,乙丑为第二日,丙寅为第三日……60日为一周。一周完了再由甲子日起,周而复始,循环下去。例如农历己巳年(1989年)正月初一是丁酉日,初二是戊戌日……到三月初七正好是60天,因此三月初二又是丁酉日。

方法二:

unsigned char i;

甲己之年丙做首;乙庚之年卯为头;

11 甲戌 23 丙戌 35 戊戌 47 庚戌 59 壬戌

丙辛必定寻庚起;丁壬壬位顺流行;

8 辛未 20 癸未 32 乙未 44 丁未 56 已未

{

void testSkyEarth(void)

** 函数名称:GetSkyEarth

日的干支

首先要能记住十大天干和十二地支,十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸;十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥;

月的天干记忆比较简单,只要在你年干的基础上记住几句歌诀就可以了:

余数分别为:4、 5、 6、 7、 8、 9、 10、 11、 0(能整除)、1、 2、3,

地支的算法:用年代数除以12,后面的余数就代表某个地支,

1,比如,记住几个特殊的年份如1984年为甲子年,类推1924,1864,1804,……均为甲子年。提到的壬戌是第59顺位,那么用甲子年份加上59减1得到的1982,1922,1862,1802……都是壬戌年!

(注意:农历的闰月是不记干支的)

0000
评论列表
共(0)条
热点
关注
推荐