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

    c语言课程设计报告万年历Word文件下载.docx

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

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

    c语言课程设计报告万年历Word文件下载.docx

    1、在日常生活中能接触到很多不同类型的日历,在日历上我们通常希望它能简单明了的给我们最想要的日期信息。在我的万年历系统当中,就是将日历,月历做的简单明了,很方便我们的查询使用。下面是它要实现的一些基本功能:C语言编写万年历查询系统:(1)输入年份,判断是否为闰年(2)输入年月日,判断是星期几(3)输入年份,打印出12个月的月历(4)输入年月,打印出本月的日历(5)输入指令错误的提示(二)程序中的数据说明unsigned int run12 =31,29,31,30,31,30,31,31,30,31,30,31;unsigned int ping12=31,28,31,30,31,30,31,31

    2、,30,31,30,31;这是定义的关于每个月天数的数组,根据大小月以及二月份的特殊情况将每个月的天数变为数组中的元素存入数组当中。其中run1=29,是将闰年二月的天数28天作为初始元素存入。另一个ping1=28,是将平年二月的天数28天作为初始元素存入。char month_str10=一月,二月三月四月五月六月七月八月九月十月十一月十二月;这个数组是定义12个月份的数组。二、问题分析对于闰年的判断,能被4整除但不能被100整除,或者能被400整除的年份为闰年,否则为平年。日期的查询,就是直接打印改天所在月份的月历。程序难点在于判断星期,但根据公式,我们可以很容易地用年月日推断出星期:c

    3、=days+day; w=(year-1+(year-1)/4-(year-1)/100+(year-1)/400+c)%7;/求星期公式其中year:要查询的年份 day:从该年的一月一日起到该天的天数 w:得出的星期数。在打印月历时,只要知道第一天的星期,就可以依次输入后面的日期,通过一定长度输出日期,在遇到某天时星期天时,就换行输出,因此可以按照月历的格式输出。判断日期是否合法,if(nian6000)|(nian=0)|(yue12)|(yue=0)|(ri31)|(ri=0) printf(输入错误,请重新输入n); goto zailai; 可以先判断年月日是否有小于0的值,月和日

    4、是否有超出最大值12和31 ,如果通过此判断合法,再判断是否是闰年,如果是闰年,则判断二月份是否满足要求,闰年二月份不能超过29天,平年二月份不能超过28天。在查询过程中,如果发现输入不合法或者不满足输入要求,则提示错误,并返回主菜单。三、程序总体设计及功能结构框图(一)功能结构框图(二)程序设计头文件:#include/基本输入输出函数#include /调用清屏函数windows.h/调用延时函数在程序中运用了大量的自定义函数,都涉及为了使程序更简介明了。其中有:int menu()/选择菜单void nian_yue()/输入年月函数void in_nian()/只输入年函数void _

    5、in()/年,月,日输入,范围判别int _nian2(int year)/判断是否为闰年int yue_day(int year,int month)/计算某年某月有多少天函数int xingqi_(int year,int month,int day)/判断某年某月某日是星期几的函数void _4(int year,int month)/第四功能:显示某月的月历int _3( int year)/第三功能:显示某年的月历void _2()/第二功能:计算某年是否为闰年void _1()/第一功能:计算某年某月某日是星期几这些函数的定义及其相应的内部程序共同构筑起了这个万年历查询系统的总程序

    6、。其中int _nian2函数是用来判断输入的年份是否为闰年,实现了预计功能的第一个方面;int xingqi函数则是为了实现判断星期而编写的;void _4函数则是为了实现单个月的月历而编写的,int _3函数则是为了实现某年的月历而编写的。四、程序流程图(一)总流程图(二)算法说明1. 总天数的算法:int _nian2函数的使用,判断出了输入年份是否为闰年的信息。判断一年是否为闰年的方法是:该年分而能被4整除但不能被100整除,或者是能被400整除。判断是否为闰年的流程图:2.输入日期计算星期几:利用int xingqi_函数可以判断出星期,然后对于输入的日期可以通过公式c=days+d

    7、ay;w=(year-1+(year-1)/4-(year-1)/100+(year-1)/400+c)%7计算就可以输出相应的星期数。/*判断某年某月某日是星期几的函数,返回星期对应的数字,如返回对应星期天*/int xingqi_(int year,int month,int day) int c,i,days=0,t,w; for(i=1;imonth;i+)/月份循环 t=yue_day(year,i);/调用求某年某月有多少天函数 days+=t; c=days+day; return w;3. 对输入信息的汇总:void _4(int year,int month)/打印某年某月的

    8、月历,int _3( int year)/打印某年的月历。/*-第四功能:显示某月的月历-*/void _4(int year,int month) int i,temp,k; temp=xingqi_(year,month,1);/调用判断某年某月某日是星期几的函数 printf(n %d-%dn,year,month);n0 1 2 3 4 5 6nnS M T W T F Sn /*以下是月历排版*/=temp;i+) for(k=1;k=yue_day(year,month);k+,i+)%-2d ,k); if(i%7=0)n/*-第三功能:显示某年的月历-*/int _3( int

    9、 year)int temp;int i,j,k;printf(nn%d 年n,year);for(i=1;=12;nn%s(%d)n,month_stri-1,i);0 1 2 3 4 5 6nS M T W T F S nntemp=xingqi_(year,i,1);/*以下是月历排版*/for(j=1;j/*-判断是否为闰年 方式二,是返回,否则返回-*/int _nian2(int year) if(year%400=0|year%4=0&year%100!=0)/计算闰年 return 1 ; else return 0;/*-求某年某月有多少天-*/int yue_day(int

    10、 year,int month) int mon_day=31,28,31,30,31,30,31,31,30,31,30,31; if(_nian2(year)&month=2)/如果为闰年,月加 return 29; return(mon_daymonth-1);/*-第二功能:计算某年是否为闰年-*/void _2() in_nian();/输入年函数nn if(_nian2(nian)=1)%d年是闰年n,nian);%d年是平年n/*-第一功能:计算某年某月某日是星期几-*/void _1() _in();/输入年月日函数%d年%d月%d日是星期%dnn,nian,yue,ri,xi

    11、ngqi_(nian,yue,ri);/*-主函数-*/void main() int x; star:/菜单重选跳转标志 switch (menu() case 1: G1:/G1跳转标志 _1();/启动第一功能计算某年某月某日是星期几 printf(输入1 并回车,返回主菜单n输入2 并回车,重新输入n输入其他则退出程序n scanf(x); system( if(x=1) goto star; /goto语句跳转到菜单重选跳转标志 if(x=2) goto G1; /goto语句跳转到G1 break; case 2:G2:/G2跳转标志 _2(); /第二功能: goto G2; /

    12、goto语句跳转到G2 case 3:G3:/G3跳转标志 in_nian();/输入年 _3(nian);/启动第三功能 goto G3; /goto语句跳转到G3 case 4:G4:/G4跳转标志 nian_yue();/输入年月 _4(nian,yue);/启动第四功能 goto G4; /goto语句跳转到G4 case 5:你确定要退出吗?确定退出按,取消退出按! exit(0); /退出六、使用说明 运行程序,进入主菜单界面,可看到以下界面 - 万年历系统- 1.计算某年某月某日是星期几 2.计算某年是否为闰年 3.显示某年的月历 4.显示某月的日历 5.退出系统请输入相应的数字

    13、,并回车 请输入1、在“请输入相应的数字,并回车 请输入”后面输入功能序号,如需“.计算某年某月某日是星期几”,请输入“1”,其他功能相同。2、进入附属界面后会出现以下界面:请输入要计算的年份, 输入的 年,月,日 请以逗号隔开例如:要计算2014年6月11日 输入格式为: 2014,6,11 回车3、可在“请输入:”语句后输入年份”2014,6,11”,会出现下面界面:2014,6,112014年 6月 11日 是 星期 3输入 1 并回车,返回主菜单输入 2 并回车,重新输入输入其他则退出程序请输入4、 可在“请输入”后面填写序号,即可得到相应的提示功能。5、 其他功能做法于上相同,就不一一赘述。七、个人心得(略)八、参考文献1谭浩强。C程序设计(第四版).北京:清华大学出版社,20102杜 恒。C程序程序设计(理实一体化教程).北京:机械工业出版社,20133部分资料来源网络,作者不详。在这里对他们表示由衷的感谢


    注意事项

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

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




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

    copyright@ 2008-2022 冰点文档网站版权所有

    经营许可证编号:鄂ICP备2022015515号-1

    收起
    展开