用C语言编写一个年历.doc_第1页
用C语言编写一个年历.doc_第2页
用C语言编写一个年历.doc_第3页
用C语言编写一个年历.doc_第4页
用C语言编写一个年历.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

黑龙江八一农垦大学理学院 C 程序设计课程设计报告 2011-2012 学年第二学期 设计题目: 用 C 语言设计一个年历系统 指导教师: 魏老师 完成时间:2012 年 6 月 13 日 至 2012 年 6 月 20 日 第 一 组报告成员 姓 名专业班级学 号 Student1Student1 信息与计算科学信息与计算科学 201X40X1000201X40X1000 Student2Student2 信息与计算科学信息与计算科学 201X40X1000201X40X1000 Student3Student3 信息与计算科学信息与计算科学 201X40X1000201X40X1000 Student4Student4 信息与计算科学信息与计算科学 201X40X1000201X40X1000 Student5Student5 信息与计算科学信息与计算科学 201X40X1000201X40X1000 成绩评定: 分 任课教师签字: 2012 年 6 月 20 日 目录 第 0 页 共 10 页 目录目录 1、程序设计与分析、程序设计与分析.- 2 - 1、功能分析与任务分配 - 2 - 2、流程图 - 4 - 3、数据结构 - 6 - 2、详细设计、详细设计.- 8 - 3、参考文献、参考文献.- 10 - 4、附录、附录.- 10 - 5、总结、总结.- 10 - 黑龙江八一农垦大学理学院C 程序设计课程设计报告 Page - 1 - of 10 1、程序设计与分析、程序设计与分析 1、功能分析与任务分配 (一)功能分析(一)功能分析: 1、要输入任一年显示出该年的所有月份日期,应该先设计具体的输出格式,如 下: the calendar of the year2012. January Sun Mon Tue Wed Thu Fri Sat 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 = 2、判断是不是闰年 (year%4!=0|year%100=0 else if(month=2) if(year%4!=0|year%100=0 else return(3); else return(4); int main() int year,i,j,a,n,m,k; /定义变量 char * p; /指向指针的指针变量 char * week=“Sun“,“Mon“,“Tue“,“Wed“,“Thu“,“Fri“,“Sat“; char*month=“January“,“February“,“March“,“April“,“May“,“June“,“July“,“Aug ust“,“September“,“October“,“November“,“December“; printf(“please inter the year:“); /输入所求年份 scanf(“%d“, printf(“n“); printf(“the calendar of the year%d.“,year); printf(“n“); a=(year+(year-1)/4-(year-1)/100+(year-1)/400)%7; /判断每年的第一天是周 几 当 a 值为 0 的时候,对应周日 for(i=0;i12;i+) /月份循环 n=judge(year,i+1); / 调用函数,n 值为 1234,代表每月为多少天 p=month+i; /数组名为首地址,加 i 循环 printf(“%sn“,*p); /输出月份名 printf(“n“); for(j=0;j7;j+) /星期循环 p=week+j; /数组名为首地址,加 j 循环 黑龙江八一农垦大学理学院C 程序设计课程设计报告 Page - 8 - of 10 printf(“%6s“,*p); /.六列,字符串输出 printf(“n“); for(k=0;ka;k+) / a 代表每年第一天,后为每月前空格天数 printf(“ “); /输出六个空格 for(m=1;m32;m+) /每月天数循环 printf(“%6d“,m); /输出格式占六列,右端对齐 if(a+m)%7=0) printf(“n“); /满星期换行 if(n=1 /从此处至以下执行整月停止 else if(n=2 else if(n=3 else if(n=4 a=(a+m)%7; / a 为每月末行天数 printf(“n“); printf(“=“); printf(“n“); 5、总结、总结 通过本次课程设计我们第一次通过自己的实践对书本上的知识进行了与生 活相关的运用。在这个程序中,主要应用了这学期所学习的循环,条件语句, 数组以及调用函数。这些知识的应用使我们对课本内容的认识得到了加深。 在编写程序的过程中,也出现了很多错误。比如程序语句错误导致检测时 连续报错;函数语句编写错误导致输出结果与实际不符等。出现这些情况后, 通过对一些新知识的学习和对网上相关资料的阅览,我们发现了自己的程序的 问题所在并进行了改正。最后得到了正确的结果。 在程序的编写完成后,我们本想对程序进行拓展,想增

温馨提示

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

评论

0/150

提交评论