c语言课程设计报告--万年历,最详细.doc 立即下载
2024-09-09
约1万字
约17页
0
157KB
举报 版权申诉
预览加载中,请您耐心等待几秒...

c语言课程设计报告--万年历,最详细.doc

c语言课程设计报告--万年历,最详细.doc

预览

免费试读已结束,剩余 12 页请下载文档后查看

5 金币

下载文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

.
.
/NUMPAGES17
.






C语言课程设计报告
-----万年历




设计人:贾伟涛
学号:2013010912
班级:13电信应电班
指导老师:X伟
日期:2014年6月9日






内容提要

通过大一下学期对C语言的学习,了解到了很多C语言的相关知识。学习的过程虽然有很多困惑,但是当自己能够独立的看懂和独立的完成一个简单的程序时,心中就会收获无限的喜悦和成就感。我虽然可以看懂一些简单的程序,编写一些简单的计算程序,更多的是学会了一种思想——编程,它让我在去思考很多日常生活中的事物是怎么样通过一个个小小的函数实现功能的,激发我对c语言的兴趣。
C语言是近年在国内外得到迅速推广应用的一种机器语言。C语言功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点。因此,C语言特别适合于编写各种软件。
在这次的课程设计中我将把日常生活中最经常接触的——日历的查询,利用C语言的程序编成一个简单的万年历查询系统。通过这个小小的系统可以实现很多功能。在程序中你能看到很多熟悉的C语言关键字,同时也加入了很多自己课外了解到的一些关键字。在不断的调试中最终才获得最为完整的程序。接下来就是我的C语言课程设计的具体内容来了,大家拭目以待吧!


目录
系统功能和数据说明-----------------------
问题分析---------------------------------
程序总体设计及功能结构框图---------------
程序流程图-------------------------------
源程序代码-------------------------------
六、使用说明---------------------------------
七、个人心得---------------------------------
八、参考文献---------------------------------


一、系统功能和数据说明
(一)功能简介
在日常生活中能接触到很多不同类型的日历,在日历上我们通常希望它能简单明了的给我们最想要的日期信息。在我的万年历系统当中,就是将日历,月历做的简单明了,很方便我们的查询使用。下面是它要实现的一些基本功能:
C语言编写万年历查询系统:
(1)输入年份,判断是否为闰年
(2)输入年月日,判断是星期几
(3)输入年份,打印出12个月的月历
(4)输入年月,打印出本月的日历
另新增:
对输入指令错误的提示
加入了调用系统时间函数
还添加了欢迎界面并进行界面优化

(二)程序中的数据说明
①intdays[12]={31,28,31,30,31,30,31,31,30,31,30,31};
这是定义的关于每个月天数的数组,根据大小月以及二月份的特殊情况将每个月的天数变为数组中的元素存入数组当中。其中days[1]=28,是将闰年二月的天数28天作为初始元素存入。在经过yearMonth函数后就可以给days[1]中存入正确的月天数。
②tm*tp;
char*week[]={"一","二","三","四","五","六","日"};
这两组数据设计都利用了指针定义,利用指针可以提高程序的可读性,可以更方便使用。这两个数组的作用是用于调用系统时间,而定义的星期数组*week[]和年月日变量*tp,由于还没学到指针,在这里查阅了很多资料,并也借鉴了前辈们的很多程序。



二、问题分析
对于闰年的判断,能被4整除但不能被100整除,或者能被400整除的年份为闰年,否则为平年。日期的查询,就是直接打印改天所在月份的月历。
程序难点在于判断星期,但根据公式,我们可以很容易地用年月日推断出星期:
weekday=(day+2*month+3*(month+1)/5+year+year/4-year/100+year/400)%7;
其中year:要查询的年份
day:从该年的一月一日起到该天的天数
	weekday:得出的星期数。
在打印月历时,只要知道第一天的星期,就可以依次输入后面的日期,通过一定长度输出日期,在遇到某天时星期天时,就换行输出,因此可以按照月历的格式输出。
对于初始输入当前系统时间,可以通过<time.h>中的time和localtime函数取出系统时间进行初始化。
判断日期是否合法,
if((year>=3000||year<=1600)||(month>=12||month<0)||(day>=31||day<=0))
				{
					system("CLS");
					printf("输入错误,系统及即将返回!");
					Sleep(3000);
					got
查看更多
单篇购买
VIP会员(1亿+VIP文档免费下)

扫码即表示接受《下载须知》

c语言课程设计报告--万年历,最详细

文档大小:157KB

限时特价:扫码查看

• 请登录后再进行扫码购买
• 使用微信/支付宝扫码注册及付费下载,详阅 用户协议 隐私政策
• 如已在其他页面进行付款,请刷新当前页面重试
• 付费购买成功后,此文档可永久免费下载
全场最划算
12个月
199.0
¥360.0
限时特惠
3个月
69.9
¥90.0
新人专享
1个月
19.9
¥30.0
24个月
398.0
¥720.0
6个月会员
139.9
¥180.0

6亿VIP文档任选,共次下载特权。

已优惠

微信/支付宝扫码完成支付,可开具发票

VIP尽享专属权益

VIP文档免费下载

赠送VIP文档免费下载次数

阅读免打扰

去除文档详情页间广告

专属身份标识

尊贵的VIP专属身份标识

高级客服

一对一高级客服服务

多端互通

电脑端/手机端权益通用