资源描述:
《c语言万年历系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、山东交通学院面向对象课程设计字符统计软件院係)别信息科学与电气工程学院班级学号姓名李峰辉指导教师徐硕博时间2012-03-05—2012-03-09课程设计任务书题目万年历系统程序设计系(部)信息科学与电气工程学院专业计算机科学与技术班级计算111学生姓名李峰辉学号3月5日至3月9日共1周指导教师(签字)系主任(签字)一、设计内容及要求编写一万年丿力系统(限最多1人完成)要求:模仿现实生活屮的挂丿;/J・当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期儿).当系统日期变到下一月时,系统口动翻页到下一月.二、设计原始资料C语言程序与设计三、主要参考
2、资料谭浩强《C程序设计》第四版四、设计完成后提交的文件和图表文件:万年历系统文件,及源代码图表进入万年历系统任意键进入菜单当输入非法字符时,提示错误,重新输入进入选项1,日历显示并显示日历进入选项2,日历查询并显示所查询的日期当查询输入非法字符时,提示错误,返回主菜单进入选项3,退出一、设计内容及要求编写一万年丿力系统(限最多1人完成)要求:模仿现实生活屮的挂丿;/J・当前页以系统当前日期的月份为准显示当前月的每一天(显示出日及对应的星期儿).当系统日期变到下一月时,系统口动翻页到下一月.二、设计原始资料C语言程序与设计三、主要参考资料谭浩强《C程序设计》第四版四、设
3、计完成后提交的文件和图表文件:万年历系统文件,及源代码图表进入万年历系统任意键进入菜单当输入非法字符时,提示错误,重新输入进入选项1,日历显示并显示日历进入选项2,日历查询并显示所查询的日期当查询输入非法字符时,提示错误,返回主菜单进入选项3,退出六,源代码ttinclude#includettinclude#includeintyear,month,day;//全局变量记录时间intdays0fMonth[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31}
4、,{31,29,31,30,31,30,31,31,30,31,30,31}};voidmainO{intrunYear(intyear);structtm*getDayO;//从系统取得当前时间,结构体,在函数中指定程序员需要的标准类型(实践结构体)intchaxunday(intyear,intmonth,intday);//检查日期是否正确intqudeDay(intyear,intmonth,intday)://取得星期voidprintrili(intyear,intmonth,intday);//打印月历voidcheckrili();//査询日历void
5、backMenu();voidmainMenu(intfeyear,int&month,int&day);//主菜单structtm*gmt=getDay();//用系统时间进行初始化,year=gmt->tm_year+1900;month=gmt一>tm_mon+l;day=gmt一>tm_mday;printrili(year,month,day);//打印当前月历backMenu();mainMenu(year,month,day);}structtm*getDay()//从系统取得当前时间{time_ttimer;structtm*gmt;time(&tim
6、er);gmt=localtime(&timer);returngmt;}intrunYear(intyear)//判断是否是闰年{intrun二0;if(year%400==0
7、
8、(year%4==0&&year%100!=0))run=l;returnrun;}intchaxunday(intyear,intmonth,intday)//检查正确{if(year<=0&&year>=10000
9、
10、month12
11、
12、day13、
14、day>31)return0;switch(month){case1:case3:case5:case7:case8:
15、case10:case12:if(day>31)return0;break;case4:case6:case9:case11:if(day>30)return0;break;default:辻(runYear(year)&&day>29)return0;else辻(runYear(year)==0&&day>28)return0;}return1;}intqudeDay(intyear,intmonth,intday)//取得星期{intnday二0,nDay,i,x;for(i=0;i