欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    C语言课程设计万年历Word下载.docx

    • 资源ID:697334       资源大小:226.23KB        全文页数:18页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言课程设计万年历Word下载.docx

    1、字符统计软件功能概述模仿Windwos的日历. 1)日历显示功能。能根据系统日期进行初始化,如果没有任何输入,则显示系统日期所在月份的月历。2)日历查询、闰年判断功能。输入日期进行查询,显示查询日期所在月份的月历,还将显示所在年份是否为闰年。3)参数检查功能。如果输入日期不合法,查询将被拒绝,并显示提示信息。开发环境概述在实验室一人一台微机。2课程设计概述问题分析难点在于判断星期,但根据蔡勒公式,可以很容易地有年月日推断出星期:nDay=year-1+(year-1)/4-(year-1)/100+(year-1)/400+nday; w=nDay%7;其中year:要查询的年份 nday:从

    2、该年的一月一日起到该天的天数 w:得出的星期数,w=0表示星期天。在打印月历时,只要知道第一天的星期,就可以依次输入后面的日期,通过定长度输出日期,在遇到某天时星期六时,就换行输出,因此可以按照月历的格式输出。对于初始输入当前月历,可以通过中的time 和localtime函数取出系统时间进行初始化。 time_t timer; struct tm* gmt; time(&timer); gmt=localtime(& gmt就是一个时间结构体,可以从中取出年月日。闰年的判断,能被4整除但不能被100整除,或者能被400整除的年份为闰年,否则为平年。日期的查询,就是直接打印该天所在月份的月历。

    3、判断日期是否合法,可以先判断年月日是否有小于0的值,月和日是否有超出最大值12和31 ,如果通过此判断合法,再判断是否时闰年,如果时闰年,则判断二月份是否满足要求,闰年二月份不能超过29天,平年二月份不能超过28天。在查询过程中,如果发现输入不合法或者不满足输入要求,则要求重新输入。总体设计流图3万年历系统详细设计int runnian(int year);该函数判断某年是否是闰年,参数year表示要判断的年份,返回值1表示该年为闰年,0表示该年为平年。struct tm* getDay();该函数用以取得系统的时间。该函数没有参数,返回值类型为struct tm*,是一个包含时间的结构体。i

    4、nt jiancha(int year,int month,int day);该函数用以判断输入的年份是否合法,参数为要判断的年月日,返回值为1表示该日期合法,为0表示不合法。int getwDay(int year,int month,int day);该函数用以根据一个日期推断星期,参数为要判断的年月日。返回值为整型,123456分别表示星期一到星期六,0表示星期天。void chaxun();该函数用以显示要查询的日期的月历,无参数和返回值,。void inline backMenu();该函数为内联函数,用以实现完成某项功能后按任意字符键返回主菜单,无参数和返回值。void caida

    5、n(int &year,int &month,int &day);该函数参数为系统日期,无返回值,用户在该函数执行时可以选择功能。4程序测试进入程序后显示按任意键返回主菜单进入主菜单后,按1,显示当前时间在主菜单界面按2,进行日立的查询,并经时期的合法性判断和平润年的判断。例如输入:2020 12 20.由于输入合法会显示:进入程序后显示输入:2012 11 40,由于输入不合法,会进行报错,要求重新输在主界面中输入3,程序退出在主界面中输入:eufhg,会显示5.程序原代码:#includemath.hstring.hwindows.hconio.hint year,month,day; /

    6、全局变量记录时间int daysOfMonth212=31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31, 30,31;int runnian(int year) /判断是否是闰年 return(year%4=0&year%100!=0|year%400=0)?1:0;struct tm* getDay()/从系统取得当前时间 return gmt;int jianca(int year,int month,int day)/检查日期是否正确 if(year0|month12|day31) return 0; sw

    7、itch(month) case 1: case 3: case 5: case 7: case 8: case 10: case 12: if(day31)return 0;break; case 4: case 6: case 9: case 11:30)return 0; default: if(runnian(year)&day29) return 0; else if(runnian(year)=0&28) return 1;int getwDay(int year,int month,int day)/取得星期 int nday=0,nDay,i,w; for(i=0;i2)f=1

    8、; while(f=1); switch(*m) case 1: system( ty(year,month,day); backMenu(); /实现任意键返回主菜单 caidan(year,month,day); break;2 caxun();3system(程序已退出! default:printf(%c输入错误!g=1; while(g);void main() struct tm *gmt=getDay(); year=gmt-tm_year+1900; month=gmt-tm_mon+1; day=gmt-tm_mday;/用系统时间进行初始化,打印当前月历 backMenu(); caidan(year,month,day);设计体会及改进意见:此程序是自己所写的第一个功能比较完整的能实现一定的实际功能的程序,代码比较短,不到300行,实现的功能有显示当前日历,进行某天的查询,闰年的判断,日期的合法性判断,。然后在程序编写过程中,遇到了一些细节性的问题,比如在乱输入的情况下,有时会出现程序崩溃,后来通过修改,修正了漏洞。到写报告为止,漏洞基本被找出,并得到修正。通过写这个程序,我对程序的健壮性有了更深的认识,也更加注意程序的细节问题。参考文献:日历推算天才邓国俊 浸会大学教育学系助理教授;C程序设计谭浩强 全国高等院校计算机全国基础教育研究会荣誉会长。


    注意事项

    本文(C语言课程设计万年历Word下载.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开