2022年C语言万年历系统 .pdf

上传人:Che****ry 文档编号:34264648 上传时间:2022-08-15 格式:PDF 页数:16 大小:374.43KB
返回 下载 相关 举报
2022年C语言万年历系统 .pdf_第1页
第1页 / 共16页
2022年C语言万年历系统 .pdf_第2页
第2页 / 共16页
点击查看更多>>
资源描述

《2022年C语言万年历系统 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言万年历系统 .pdf(16页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、山东交通学院面向对象课程设计字符统计软件院( 系) 别信息科学与电气工程学院班级计算 111 学号姓名李峰辉指导教师徐硕博时间2012-03-052012-03-09名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 16 页 - - - - - - - - - 课 程 设 计 任 务 书题目万年历系统程序设计系 ( 部) 信息科学与电气工程学院专业计算机科学与技术班级计算 111 学生姓名李峰辉学号 3 月 5 日至 3 月 9 日共 1 周指导教师 ( 签字) 系 主 任

2、( 签字) 年月日名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 16 页 - - - - - - - - - 一、设计内容及要求编写一万年历系统(限最多1 人完成)要求: 模仿现实生活中的挂历 . 当前页以系统当前日期的月份为准显示当前月的每一天( 显示出日及对应的星期几 ). 当系统日期变到下一月时 , 系统自动翻页到下一月 . 二、设计原始资料C语言程序与设计三、主要参考资料谭浩强 C程序设计第四版四、设计完成后提交的文件和图表文件:万年历系统文件,及源代码图表1,

3、进入万年历系统2,任意键进入菜单3,当输入非法字符时,提示错误,重新输入4,进入选项 1,日历显示并显示日历5,进入选项 2,日历查询并显示所查询的日期6,当查询输入非法字符时,提示错误,返回主菜单7,进入选项 3,退出名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 16 页 - - - - - - - - - 五,流程图功能模块显示模块月 历 显示日 期 查询日 期 判断日 期 调整闰 年 判断程序进入显示当前 时1、日期显示1、日期显示2、日期查询3、退出程序3、退出

4、程序2、日期查询名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 16 页 - - - - - - - - - 六,源代码#include #include #include #include int year,month,day; / 全局变量记录时间int daysOfMonth212=31,28,31,30,31,30,31,31,30,31,30,31,31,29,31,30,31,30,31,31,30,31, 30,31; void main() int run

5、Year(int year); struct tm* getDay();/从系统取得当前时间,结构体,在函数中指定程序员需要的标准类型 ( 实践结构体 ) int chaxunday(int year,int month,int day);/检查日期是否正确int qudeDay(int year,int month,int day);/取得星期void printrili(int year,int month,int day);/打印月历void checkrili();/查询日历void backMenu(); void mainMenu(int &year,int &month,int

6、&day);/主菜单struct tm *gmt=getDay();/用系统时间进行初始化,year=gmt-tm_year+1900; month=gmt-tm_mon+1; day=gmt-tm_mday; printrili(year,month,day);/打印当前月历backMenu(); mainMenu(year,month,day); struct tm* getDay()/从系统取得当前时间 time_t timer; struct tm* gmt; time(&timer); gmt=localtime(&timer); 名师资料总结 - - -精品资料欢迎下载 - - -

7、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 16 页 - - - - - - - - - return gmt; int runYear(int year) / 判断是否是闰年 int run=0; if(year%400=0|(year%4=0&year%100!=0) run=1; return run; int chaxunday(int year,int month,int day)/检查正确 if(year=10000|month12|day31) return 0; switch(month) case 1

8、:case 3:case 5:case 7:case 8:case 10:case 12: if(day31)return 0;break; case 4:case 6:case 9:case 11: if(day30)return 0;break; default: if(runYear(year)&day29) return 0; else if(runYear(year)=0&day28) return 0; return 1; int qudeDay(int year,int month,int day)/取得星期 int nday=0,nDay,i,x; for(i=0;imonth

9、-1;i+) nday+=daysOfMonthrunYear(year)i; nday+=day; nDay=year-1+(year-1)/4-(year-1)/100+(year-1)/400+nday; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 16 页 - - - - - - - - - x=nDay%7; return x; void printrili(int year,int month,int day)/打印月历 int i; char wday7

10、4=日, 一, 二, 三, 四, 五, 六; printf( %d年%d月%d日n,year,month,day); for(i=0;i7;i+) printf(%5s,wdayi); printf(n); int w; int nowDay=1; w=qudeDay(year,month,nowDay);/找到第一天的星期int n; n=daysOfMonthrunYear(year)month-1; switch(w) / 放置第一天 case 0:printf(%5d,nowDay);break; case 1:printf(%10d,nowDay);break; case 2:pri

11、ntf(%15d,nowDay);break; case 3:printf(%20d,nowDay);break; case 4:printf(%25d,nowDay);break; case 5:printf(%30d,nowDay);break; default:printf(%35dn,nowDay); nowDay+; for(i=1;i2)f=1; /测量字符串长度。数字字符串长2. while(f=1); switch(*menu) case 1: system(cls); / 清屏printrili(year,month,day); backMenu(); / 实现任意键返回主菜

12、单mainMenu(year,month,day); break; case 2: system(cls); checkrili(); backMenu(); mainMenu(year,month,day); break; case 3:system(cls);printf(程序已退出! n);exit(0); default:printf(%c 输入错误! n,7);flag=1; while(flag); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 16 页 -

13、 - - - - - - - - 七,程序截图1, 进入万年历系统2, 任意键进入菜单名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 16 页 - - - - - - - - - 当输入非法字符时,提示错误,重新输入3, 进入选项 1,日历显示并显示日历名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 11 页,共 16 页 - - - - - - - - -

14、4, 进入选项 2,日历查询并显示所查询的日期当查询输入非法字符时,提示错误,返回主菜单5, 进入选项 3,退出名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 12 页,共 16 页 - - - - - - - - - 成 绩 评 定 表作品成绩报告成绩口试(答辩)成绩总评成绩名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 13 页,共 16 页 - - - - - - -

15、 - - 目 录1总体. 错误!未定义书签。1.1 设计内容及要求 . 错误!未定义书签。1.2设计原始资料. 错误!未定义书签。1.3 主要参考资料 . 错误!未定义书签。1.4文件和图表总结 . 错误!未定义书签。2流程图 . 23源代码 . 34程序测试 . 错误!未定义书签。4.1系统界面 . 错误!未定义书签。4.2主菜单 . 错误!未定义书签。4.3日历显示 . 错误!未定义书签。4.4日历查询 . 错误!未定义书签。4.5退出界面 . 错误!未定义书签。设计体会及今后的改进意见. 1名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - -

16、- - - - 名师精心整理 - - - - - - - 第 14 页,共 16 页 - - - - - - - - - 1 设计体会及今后的改进意见为了提高我们的实践能力,让我们学以致用,能灵活运用所学的知识进行再创造,学校特安排我们进行为期一周的Visual C课程设计实习,并安排了指导老师帮助辅导,让我们在规范化、严谨化、实用化上面有了很大进展。在此次字符统计程序开发过程中,有很多东西值得我们思考并总结。开发过程大体可分为以下几个步骤:(1)思考总体设计方案:总体结构和模块外部设计,功能分配。思考要实现整个程序大体需要的几个模块和其中用到的Visual C语言基本操作符、语句等。(2)画

17、出总体设计方案流程图:用流程图的形式展现你的基本编程思想。(3)流程图具体化:即将流程图中的几大模块的具体实现思考清楚,可以用流程图的形式展现并想好实现的关键代码。(4)编辑程序代码:这是一个至关重要复杂而且需要反复修改的环节,在此环节中你将发现总体设计和模块思想会存在很多问题,需不断改进如何实现各函数功能,达到预期效果也将是一项繁复的工作。(5)代码的调试:在Visual C+6.0环境下输入代码并进行调试和正确运行。在调试过程中会遇到很多需要精化的地方,需要十足的耐心与细心,不断改进完善程序。(6)最后修饰:程序可以正确运行之后,再不影响程序功能的情况下,运用各种辅助性符号,使界面更加美观

18、漂亮,操作更人性化增强程序的新意与可行性。通过这次课程设计,使我们更加熟悉的掌握了Visual C+ 语言的运用。帮助我们熟悉了更多 Visual C+ 语言的功能,提高了我们的动手能力,学到了许多解决实际问题的宝贵经验同时也挖掘出了我们潜在的能力,使我们对自己更有自信,对编程也更有兴趣。我相信,只要努力、勤奋、坚持不懈,就没有什么做不到的事,不能还没开始就退缩,要勇于拼搏,敢于创新。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 15 页,共 16 页 - - - - - - - - - 2 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 16 页,共 16 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com