网站大量收购闲置独家精品文档,联系QQ:2885784924

毕业设计(论文)c实训报告 电子时钟.docVIP

毕业设计(论文)c实训报告 电子时钟.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实 训 报 告 桌面万年历设计与开发 专业名称:_________________ 班 级:_________________ 学 号:____________ 信息科学与工程学院 二零一年十一月 目 录 1. 概述 4 8.设定时钟的大小 4 3. 总体设计与详细设计 5 3.1 系统模块划分 6 6 日历显示子系统 6 参数设定子系统 6 3.2 主要功能模块 6 4. 编码实现 7 5. 实训中遇到的主要问题及解决方法 22 22 5-2:模拟时钟与电子时钟的转换 23 6. 实训体会 23 1. 概述2.1 (技术一的名称)GetLocalTime: 获得当前时间(公历:年、月、日、周) MoveToEx: 移动划线的起点 LineTo: 绘制到某一点 SetTextColor: 设置要绘制的文字颜色 TextOut: 绘制文字 SetBkMode: 设置背景显示模式 wsprintf: 整数转换为字符串,宽字符,用Unicode码 GetClientRect: 获取窗口大小 2.2 (技术二的名称)LineTo(hdcMemory,((int)(65+30*sin(radians))),((int)(65-30*cos(radians)))) Randians=(秒数)/30*PI; 3. 总体设计与详细设计3.1 系统模块划分 3.2 主要功能模块 模块名称 模块功能 输入 输出 其他说明 日历显示 万年历计算和显示,包括农历、公立、节假日的显示 用户点击 日历 界面模块 模块名称 模块功能 输入 输出 其他说明 参数设定 节假日、生日、纪念日设定;整点报时设定;皮肤选择 用户点击 参数 界面模块 4. 编码实现 //判断某年是否为公历瑞年 int IsLeapYear(WORD iYear) { if(iYear%4==0) return 1; if(iYear%100==0 iYear%400==0) return 1; return 0; } //公历日期转农历日期的函数 void SunToLunar(const stDateTime* pSunDay,stDateTime* pLunarDay) { int i=0; int SunDiff=0; int SpringDiff=0; int nSpringYear=pSunDay-nYear; int nSpringMonth=1; int nSpringDay=0; //计算当前公历日离当年元旦的天数 SunDiff = MonthAdd[pSunDay-nMonth-1] + pSunDay-nDay - 1; if(IsLeapYear(pSunDay-nYear) (pSunDay-nMonth 2) )//若是闰年且大于月,天数再加 SunDiff++; //计算春节所在公历日离元旦的天数:通过查表,计算当年的春节所在的公历日期, if(((LunarCalendarTable[pSunDay-nYear - 1901] 0x60)5)==1)//若春节在公历月 SpringDiff= (LunarCalendarTable[pSunDay-nYear-1901]0x1F)-1; else//若春节在公历月 SpringDiff= (LunarCalendarTable[pSunDay-nYear-1901]0x1F)-1+31; //SunDiff和SpringDiff的差就是当前公历日离春节的天数 if(SunDiffSpringDiff)//公历日在春节后 { int x = SunDiff - SpringDiff; int bLunar = (LunarCalendarTable[nSpringYear - 1901] 0xF00000)20;//闰月月份 i=0; nSpringMonth=1; for(;;) { int a = (LunarCalendarTable[pSunDay-nYear-1901] (0x80000i))(19-i);//计算大小月 if(a==0) a=29; else a=30; if(xa) break; x =x - a; i++; nSpringMonth++; } nSpringDay =x+1; //如果有闰月 if(nSpringMonthbLunar bLunar0) nSpringMonth--; } else if(S

文档评论(0)

精品天地 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档