51单片机农历转换公历c语言算法,C51写的51单片机用公历转农历和星期程序

这篇博客提供了51单片机用C语言实现公历到农历转换的算法,包括农历数据定义和转换函数,适用于1901年至2099年。代码中包含了一个函数`Conversion`用于输入BCD格式的阳历日期并输出对应的阴历日期,以及一个函数`Conver_week`用于计算对应的星期。
摘要由CSDN通过智能技术生成

点击此处下载 ourdev_615042D2O2A7.pdf(文件大小:154K) (原文件名:公历与农历日期的转换.pdf)

#define uchar unsigned char

#define uint unsigned int

#include

/*

公历年对应的农历数据,每年三字节,

格式第一字节BIT7-4 位表示闰月月份,值为0 为无闰月,BIT3-0 对应农历第1-4 月的大小

第二字节BIT7-0 对应农历第5-12 月大小,第三字节BIT7 表示农历第13 个月大小

月份对应的位为1 表示本农历月大(30 天),为0 表示小(29 天)

第三字节BIT6-5 表示春节的公历月份,BIT4-0 表示春节的公历日期

*/

code uchar year_code[597]={

0x04,0xAe,0x53,    //1901 0

0x0A,0x57,0x48,    //1902 3

0x55,0x26,0xBd,    //1903 6

0x0d,0x26,0x50,    //1904 9

0x0d,0x95,0x44,    //1905 12

0x46,0xAA,0xB9,    //1906 15

0x05,0x6A,0x4d,    //1907 18

0x09,0xAd,0x42,    //1908 21

0x24,0xAe,0xB6,    //1909

0x04,0xAe,0x4A,    //1910

0x6A,0x4d,0xBe,    //1911

0x0A,0x4d,0x52,    //1912

0x0d,0x25,0x46,    //1913

0x5d,0x52,0xBA,    //1914

0x0B,0x54,0x4e,    //1915

0x0d,0x6A,0x43,    //1916

0x29,0x6d,0x37,    //1917

0x09,0x5B,0x4B,    //1918

0x74,0x9B,0xC1,    //1919

0x04,0x97,0x54,    //1920

0x0A,0x4B,0x48,    //1921

0x5B,0x25,0xBC,    //1922

0x06,0xA5,0x50,    //1923

0x06,0xd4,0x45,    //1924

0x4A,0xdA,0xB8,    //1925

0x02,0xB6,0x4d,    //1926

0x09,0x57,0x42,    //1927

0x24,0x97,0xB7,    //1928

0x04,0x97,0x4A,    //1929

0x66,0x4B,0x3e,    //1930

0x0d,0x4A,0x51,    //1931

0x0e,0xA5,0x46,    //1932

0x56,0xd4,0xBA,    //1933

0x05,0xAd,0x4e,    //1934

0x02,0xB6,0x44,    //1935

0x39,0x37,0x38,    //1936

0x09,0x2e,0x4B,    //1937

0x7C,0x96,0xBf,    //1938

0x0C,0x95,0x53,    //1939

0x0d,0x4A,0x48,    //1940

0x6d,0xA5,0x3B,    //1941

0x0B,0x55,0x4f,    //1942

0x05,0x6A,0x45,    //1943

0x4A,0xAd,0xB9,    //1944

0x02,0x5d,0x4d,    //1945

0x09,0x2d,0x42,    //1946

0x2C,0x95,0xB6,    //1947

0x0A,0x95,0x4A,    //1948

0x7B,0x4A,0xBd,    //1949

0x06,0xCA,0x51,    //1950

0x0B,0x55,0x46,    //1951

0x55,0x5A,0xBB,    //1952

0x04,0xdA,0x4e,    //1953

0x0A,0x5B,0x43,    //1954

0x35,0x2B,0xB8,    //1955

0x05,0x2B,0x4C,    //1956

0x8A,0x95,0x3f,    //1957

0x0e,0x95,0x52,    //1958

0x06,0xAA,0x48,    //1959

0x7A,0xd5,0x3C,    //1960

0x0A,0xB5,0x4f,    //1961

0x04,0xB6,0x45,    //1962

0x4A,0x57,0x39,    //1963

0x0A,0x57,0x4d,    //1964

0x05,0x26,0x42,    //1965

0x3e,0x93,0x35,    //1966

0x0d,0x95,0x49,    //1967

0x75,0xAA,0xBe,    //1968

0x05,0x6A,0x51,    //1969

0x09,0x6d,0x46,    //1970

0x54,0xAe,0xBB,    //1971

0x04,0xAd,0x4f,    //1972

0x0A,0x4d,0x43,    //1973

0x4d,0x26,0xB7,    //1974

0x0d,0x25,0x4B,    //1975

0x8d,0x52,0xBf,    //1976

0x0B,0x54,0x52,    //1977

0x0B,0x6A,0x47

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值