C++:公历转农历的程序

这篇博客介绍了如何在C++中将公历日期转换为农历,包括使用特定函数和变量进行计算,并展示了代码运行结果。代码适用于C++环境,可以调整为适合C语言或者不同字符串类型的需求。作者提供了联系方式以便进一步交流。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、简介

        该算法从网上找到,将公历转成农历,只能计算1921年-2021年间的农历。只能显示 甲午年,生肖和农历,无法得到 庚午月、癸丑日。

 

二、函数

 

 

void Window::get_chinese_calendar(QDate english_calendar, QString &outLunarDay, QString &outLunarYear)
{
    int currentYear = 0, currentMonth = 0, currentDay = 0;
    int nTheDate = 0;
    int nisEnd = 0, flag = 0, n = 0, k = 0, nBit = 0, i = 0;
    char m_Lunar[100] = {0}, m_LunarDay[50] = {0}, m_zodiak[50] = {0};
   
    const char *m_TianGan[] = {"甲","乙","丙","丁","戊","己","庚","辛","壬","癸"};
   
    const char *m_DiZhi[] = {"子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"};
   
    const char *m_ShuXiang[] = {"鼠","牛","虎","兔","龙","蛇","马","羊","猴","鸡","狗","猪"};
   
    const char *m_DayName[] = {"*","初一","初二","初三","初四","初五",
          "初六","初七","初八","初九","初十",
          "十一","十二","十三","十四","十五",
          "十六","十七","十八","十九","二十",
          "廿一","廿二","廿三","廿四","廿五",
          "廿六","廿七","廿八","廿九","三十"};
    
    const char *m_MonthName[] = {"*","正","二","三","四","五","六","七","八","九","十","
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值