C语言课程设计报告-万年历_第1页
C语言课程设计报告-万年历_第2页
C语言课程设计报告-万年历_第3页
C语言课程设计报告-万年历_第4页
C语言课程设计报告-万年历_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计题目:万年历实验题目:万年历程序的编写实验目的:综合运用所学的C语言知识解决一个比较实际的简单问题,侧重对数组、函数、指针、结构体和文件等相关内容的综合应用,使同学们能进一步熟悉掌握C语言的基本语法,进一步提升自己的编程能力并逐步培养编程思维,进而不断提高同学们解决问题的能力,并为以后的语言学习打下良好的基础。实验要求:万年历设计主要功能包括:1、查询某年某月每一天对应星期几。2 、可以查询某年某月的上个月或是下个月的日历情况。3 、查询某年某月某日是这一年的第几天,并查询改天是星期几。4、判断该年是闰年还是平年,判断这一年的生肖。实现思路(要求有文字描述,并画出流程图):该天使星期几

2、及该月和上下月的情况结束实现过程(要求有文字说明实现的过程,并对相应的代码添加注释):见程序(程序见后)后的解析。运行时只要你输入年月日,你要的星系都会显示出来;如果想继续输入日期的话,只需按y就可以,祥结束按n就可以结束。实验总结(分析程序的得与失):得:通过这次程序设计,更使我了解了编程序的严谨性,每个问题,每个不走都得有依据,不得盲目乱造,同时也让我获得了一点编写简单程序的能力,使自己平时在理论课中很多部明白的东西明白了好多,学会了好多语句的用法,比如会用yorn来决定程序是否要继续;怎么控制输出格式等等。总之在这次程序设计中我学到了很多。失:在编程序过程中有些函数的用法不怎么会用,偶尔

3、会落下写简单的东西。如,;等;同时在编写输出上下个情况及判断程序是否要继续的程序上花费了好多时间;函数的声明、调用既然不清楚,感到很惭愧。实验的过失就是成功的阶梯,在过失中我也学到很多。心得体会:我体会到了编程序的严谨性,也觉得如果我们要是熟悉课本所讲的内容,不怕麻烦,坚持不懈,我们一定可以将它实现的。要有耐心,有时候很多的错误就是一个地方引起的,只要认真检查,一定能突破的,所以在以后的编程序是要细心,有耐心,人不断调试程序,直至最后成功。#includestruct询某年某月某天对应星期几;nt2.查询某年某月上下个月情况;nt3.显示该日子是该年的第几天,并查询改天星期几;nt4.判断该年

4、是平年还是闰年以及生肖等。n);printf(&+&n);printf(请输入年月日:);scanf(%d,%d,%d,&,&,&;);/getchar();z=getchar();if(z=y|z=Y)/判断是rili();/调用函数if(z=n|z=N)/判断不是结束getchar();return0;是否还要继续输入日期voidprint(intyear,intmonth)inti,j,n,leap,days,k,count;leap=dobb(year);/print函数的定义函数调用及赋值days=date1(year,month-1,1);/printf(%d年n,year);fo

5、r(i=month-1;i=month+1;i+)/if(i12)printf(%3d月份n,i-12);/if(i0&i13)printf(%3d月份n,i);/printf(n);printf(t);printf(%-8s%-8s%-8s%-8s%-8s%-8s%-8sn,输出上下月的情况上年的12月下年的1月本年的月份,一,二,三,四,五,六);输出格式if(days=7)/days=0;elsen=days;printf(t);for(j=1;j=8*days;j+)/控制输出的个数控制输出的日期对齐printf();switch(i)case0:case1:case3:case5:c

6、ase7:case8:case10:case12:count=31;break;case4:case6:case 9:月不同情况的判断逐渐输出每月的日期case11:count=30;break;case2:if(leap)count=29;/2elsecount=28;break;for(k=1;k=count;k+)/printf(%-8d,k);n+;if(n=7)printf(n);printf(t);n=0;printf(nn);days=n;intdobb(intyear)/判断年份的类型函数的定义if%4=0&%100!=0|%400=0)return(1);/闰年输出1elsereturn(0);/平年输出0函数的定义intdate1(intyear,intmonth,intday)/date1intleap,cn=0,sum;leap=dobb(year);/调用函数switch(month-1)case11:cn+=30;case 10: cn+=31;case9:cn+=30;case8:cn+=31;case7:cn+=31;case6:cn+=30;case5:cn+=31;case4:cn+=30;case3:cn+=31;case2:if(leap)cn+=29;els

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论