C语言年历课程设计报告.docx
- 文档编号:28342357
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:9
- 大小:144.70KB
C语言年历课程设计报告.docx
《C语言年历课程设计报告.docx》由会员分享,可在线阅读,更多相关《C语言年历课程设计报告.docx(9页珍藏版)》请在冰豆网上搜索。
C语言年历课程设计报告
【摘要】
本次课程设计的内容是设计一个能输出指定年份日历的程序。
用户输入指定年份,如2012,并可输出2012年12个月的所有日历。
该日历程序解决了两个问题:
一是判断这一年是否是闰年;二是确定该年的第一天是星期几。
其中,isleap(y)函数式用于判断y年是否是闰年,daysofmonth(m)函数用于计算返回year年m月的天数,firstday(y)函数通过从公元第一天为星期天计算出y年第1天使星期几。
该程序简单明了,成功的实现了设计要求。
【关键词】
日历闰年函数
第1章概述
1.1系统实现的目标
熟练地掌握用c语言编写日历程序,使一年的12个月份能完整的呈现出来,巩固对C语言课程内容和知识的掌握。
1.2系统实现方案
运用C语言将日历程序系统化,通过编写代码,调试运行,实现体统目标。
1.3系统实现环境
在XP操作系统下VC6.0的开发平台。
1.4具体的开发方法
1.用isleap(y)函数式判断y年是否是闰年,因为闰年和平年的天数是不一样的。
2.用daysofmonth(m)函数计算返回year年m月的天数。
3.用firstday(y)函数通过从公元第一天为星期天计算出y年第1天是星期几。
4.一步步编写程序,调试程序,连接运行程序。
第2章系统设计
2.1系统功能设计
基本功能:
1.用isleap(y)函数式判断y年是否是闰年,因为闰年和平年的天数是不一样的。
2.用daysofmonth(m)函数计算返回year年m月的天数。
3.用firstday(y)函数通过从公元第一天为星期天计算出y年第1天是星期几。
2.2数据设计
输入年份
输出
2012
2012年12个月的日历信息
2009
2009年12个月的日历信息
2000
2000年12个月的日历信息
2020
2020年12个月的日历信息
2.3界面的设计
第3章系统实现
(1)代码如下:
#include
voidmonth(intm);/*函数说明*/
voidhead(intm);/*函数说明*/
intdaysofmonth(intm);/*函数说明*/
intisleap(inty);/*函数说明*/
intfirstday(inty);/*函数说明*/
intyear,weekday;/*全局变量定义*/
main()
{
inti;
printf("输入年份:
");
scanf("%d",&year);
weekday=firstday(year);/*weekday为year年份元月一日的星期号*/
printf("\n\n");
printf("%d年\n",year);/*17个空格*/
for(i=1;i<=12;i++)/*输出year年份12个月的日历信息*/
{
month(i);
printf("\n");
}
printf("\n\n");
}
voidmonth(intm)/*输出第m月份的日历信息*/
{
inti,days;
head(m);
days=daysofmonth(m);
for(i=1;i<=days;i++)
{
printf("%5d",i);
weekday=(weekday+1)%7;
if(weekday==0)/*打印下一个之前是否换行*/
{
printf("\n");/*3个空格*/
}
}
}
voidhead(intm)/*输出第m月份的头部信息*/
{
inti;
printf("\n%d月日一二三四五六\n",m);
printf("");/*3个空格*/
for(i=0;i printf("");/*5个空格*/ } intdaysofmonth(intm)/*返回year年m月的天数*/ { switch(m) { case1: case3: case5: case7: case8: case10: case12: return31; case4: case6: case9: case11: return30; case2: if(isleap(year)) return29; else return28; } return0; } intisleap(inty)/*判断y年是否为闰年*/ { return((y%4==0&&y%100! =0)||y%400==0); } intfirstday(inty)/*从公元第1天为星期天算出y年第1天是星期几*/ { longn=y*365+1; inti; for(i=1;i n+=isleap(i); returnn%7; } (2)运行结果 参考文献 (1)杨文君杨柳.编著C语言程序设计教程[M].清华大学出版社.2010.3 (2)谭浩强.C程序设计教程.北京: 清华大学出版社.2007.07 (3)路俊维马雪松主编.C语言程序设计.中国铁道工业出版社.2009.06 (4)李春葆金晶黄楠喻丹丹编著C语言程序设计清华大学出版社2008
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 年历 课程设计 报告