资源描述:
《用c语言编写一个年历》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、黑龙江八一农垦大学理学院《C程序设计》课程设计报告2011-2012学年第二学期设计题目:用C语言设计一个年历系统指导教师:魏老师完成时间:2012年6月13日至2012年6月20日第一组报告成员姓名专业班级学号Student1信息与计算科学201X40X1000Student2信息与计算科学201X40X1000Student3信息与计算科学201X40X1000Student4信息与计算科学201X40X1000Student5信息与计算科学201X40X1000成绩评定:分任课教师签字:2012年6月20日目录目录1、程序设计与分析-
2、2-1、功能分析与任务分配-2-2、流程图-4-3、数据结构-6-2、详细设计-8-3、参考文献-10-4、附录-10-5、总结-10-第0页共10页黑龙江八一农垦大学理学院《C程序设计》课程设计报告1、程序设计与分析1、功能分析与任务分配(一)功能分析:1、要输入任一年显示出该年的所有月份日期,应该先设计具体的输出格式,如下:thecalendaroftheyear2012.JanuarySunMonTueWedThuFriSat12345678910111213141516171819202122232425262728293031==
3、===========================================2、判断是不是闰年(year%4!=0
4、
5、year%100==0&&year%400!=0)满足条件就是平年,把一年中的所有月份分为四类(28,29,30,31)。3、求出一年中的第一天是周几(year+(year-1)/4-(year-1)/100+(year-1)/400)%7。4、有指针数组存放十二个月的英文和星期的英文缩写。5、用FOR循环输出各月份的日历(二)任务分配:1、Student1:程序综合整理2、Student2:判断闰年程序编写3、S
6、tudent3:月份循环程序编写4、Student4:主函数程序编写5、Student5:天数循环程序编写2、流程图1)整个函数流程图:Page-8-of10黑龙江八一农垦大学理学院《C程序设计》课程设计报告输出占六个字节的天数输出六个空格j++,j<7输出星期回车输出月份回车定义整型变year,i=0,j=0,a,n,m=1,k=0和函数judgen=judge(year,i+1),p=month+ii++,i<4定义两个字符型数组,month,week定义一个指针变量**pa=(year+(year-1)/4-(year-1)/100+
7、(year-1)/400)%7输入年份,year开始Nbreak,退出本次循环n==4&&m==30break,退出本次循环n==3&&m==29break,退出本次循环YYn==2&&m==28输出回车(a+m)%7==0NYYm++,m<32k++,k8、
9、month==3
10、
11、month==5
12、
13、month=
14、=7
15、
16、month==8
17、
18、month==10
19、
20、month==12否当月是31天是month==2否year%4==0是否当月是30天否year%100==0是当月是28天当月是29天year%400==0是否当月是29天当月是28天3、数据结构1)整型:intjudge(intyear,intmonth)intyear,i,j,a,n,m,k;2)字符型:char**p;3)字符型数组:week[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};month[]={"January","Febru
21、ary","March","April","May","June","July","August","September","October","November","December"};Page-8-of10黑龙江八一农垦大学理学院《C程序设计》课程设计报告4)指针数组:char*week[]={"Sun","Mon","Tue","Wed","Thu","Fri","Sat"};char*month[]={"January","February","March","April","May","June","July","August"
22、,"September","October","November","December"};2、详细设计想要编写一个万年历程序,按其要求输出相应的功能。1)首先,需要对任一输入年