桌面日历设计.doc

桌面日历设计.doc

ID:57578782

大小:34.66 KB

页数:6页

时间:2020-08-27

桌面日历设计.doc_第1页
桌面日历设计.doc_第2页
桌面日历设计.doc_第3页
桌面日历设计.doc_第4页
桌面日历设计.doc_第5页
资源描述:

《桌面日历设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、桌面日历设计一、设计思路输入的年份判断从定义年到输入的年份中每个年份是否为闰年是否每年为366天每年为365天返回该年的天数1.图一输入的年月判断输入年是否为定义年是否总天数S=1总天数S为定义年到输入年的总天数把S加上该年一月到输入月份的天数,再加1判断输入的月份是否为闰年中的月份是否该月是否大于二月是否把S加上该年一月到输入月份的天数把S再加上该把S加上该年年一月到输入一月到输入月的月份的天数份的天数再加1总天数为S判断S的最后一天为星期几从这一天起依次输出输入月份的天数直到该月底为止1.图二#include

2、tdio.h>/*根据年份测试是否是闰年。参数:年份返回值:0—不是闰年,1—是闰年*/intisLeap(int);/*计算给定年份的元旦是星期几参数:年份返回值:星期几注:该函数可以改进成为——计算给定的年月的第一天是星期几*/intFirstDay(int,int);/*计算给定某年某月的天数参数:年份,月份返回值:天数(28~31)*/intLenOfMonth(int,int);main(){shorti,flagInput=0;//i--循环变量,flagInput--输入标志intyear,month;

3、//输入数据。year--年份,month--月份//中间变量。day--日子,weekday--每月第一天是星期几,daysOfMonth--每月的天数intday,weekday,daysOfMonth;/*————改进代码——开始*/do{/*检验用户的输入是否合法*/if(flagInput==1)printf("——————————Error!您输入的年份和月份有误,请重新输入!!");/*————改进代码——结束*///接收年份printf("请输入年份(>=1900):");scanf(

4、"%d",&year);/*————改进代码——开始*///接收月份printf("请输入月份(1~12):");scanf("%d",&month);flagInput=1;//用户输入后,标志=1}/*如果输入的年份和月份非法,则重新循环接收*/while(!(year>=1900&&month>0&&month<=12));/*————改进代码——结束*/weekday=FirstDay(year,month);//计算每月第一天是星期几//for(month=1;month<=12;month++)//如果启

5、用改进代码,则将本行注释起来{/*显示日历的标题*/printf("年份:%6dt",year);printf("月份:%6d",month);//改进代码/*显示日历的抬头*/printf("---------------------------------------");printf("SUNMONTUEWEDTHUFRISAT");printf("---------------------------------------");for(i=0;i

6、据每月第一天是星期几,来决定输出每月前面的空格printf("%-6c",'');daysOfMonth=LenOfMonth(year,month);//计算出每月的天数for(day=1;day<=daysOfMonth;day++)//根据每月的天数,输出日子{printf("%-6d",day);weekday=(weekday+1)%7;//计算出当前是星期几,决定判断是否回车if(weekday==0)//如果到了周末,则换行printf("");}//结束本月日历的输出printf("");pr

7、intf("---------------------------------------");}return0;//返回操作系统}/*根据年份测试是否是闰年。参数:年份;返回值:0—不是闰年,1—是闰年*/intisLeap(intyear){intleap=0;//leap用来表示是否是闰年if((year%4==0&&year%100!=0)

8、

9、(year%400==0))//判断是否闰年leap=1;returnleap;//返回测试结果}/*计算给定某年某月的天数参数:年份,月份返回值:天数(28~31

10、)*/intLenOfMonth(intyear,intmonth){intdayNumber;//计算天数//如果是小月,则30天if(month==4

11、

12、month==6

13、

14、month==9

15、

16、month==11)dayNumber=30;//如果是大月和闰月elseif(month==2)//如果是2月,则要先判断是否是闰年if(isLe

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。