c语言课程设计电子日历培训课件.

上传人:men****ain 文档编号:131979049 上传时间:2020-05-11 格式:PDF 页数:17 大小:263.59KB
返回 下载 相关 举报
c语言课程设计电子日历培训课件._第1页
第1页 / 共17页
c语言课程设计电子日历培训课件._第2页
第2页 / 共17页
c语言课程设计电子日历培训课件._第3页
第3页 / 共17页
c语言课程设计电子日历培训课件._第4页
第4页 / 共17页
c语言课程设计电子日历培训课件._第5页
第5页 / 共17页
亲,该文档总共17页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《c语言课程设计电子日历培训课件.》由会员分享,可在线阅读,更多相关《c语言课程设计电子日历培训课件.(17页珍藏版)》请在金锄头文库上搜索。

1、课 程 设 计 论 文 任 务 书 信息学院专 业信息工程班 级2 一 课程设计 论文 题目电子日历 二 课程设计 论文 工作 自2011年12 月26 日起 至2011年12 月30 日止 三 课程设计 论文 的内容要求 1 主界面 2 基本要求 a 编写一个实用日历程序 并且可以多次进行 b 编写一个 2012 年 1 月份日历与农历对照程序 3 补充自己的设计内容 1 根据日期查星期几 2 某月日历 3 某年日历 4 2012年 1 月的农历 学生签名 戴斌 2011年 12月 30 日 课程设计 论文 评阅意见 等级 项目 课程设计 态度评价 出勤情况 评价 设计中创 新性评价 论文书

2、写 规范化评 价 综合评定 等级 优秀好好3 补充好 良好好好2 补充好 中等好好1 补充好 及格好好无补充好 不及格不好不好无补充不好 评阅人王更生职称教 授 2011年 12 月 30 日 目录 一 设计思路 二 功能实现详细设计 三 测试结果分析 四 用户手册 五 设计体会 一 设计思路 If 语句 判断该年是否为闰年 判断一年是否为闰年需要符合下面二者之一 1 能被 4 整除 但不能被 100 整除 2 能被 400整除 满足上述条件时 返 回值为 1 否则返回值为 0 day函数 判断某年某月最多多少天 定义一个十二个元素的数组a 12 给十二 个月的天数分别赋初值31 28 31

3、30 31 30 31 31 30 31 30 31 调用 runnian函数 当 if 语句中条件为真实即返回值为1 时 将二月份 改为 29 天 即 a 1 29 week函数 判断某年某月某日的编号 根据公式 年份 1 年分 1 除以 4 年 份 1 除以 100 年份 1 除以 400 该天是该年的第几天 调用 day2函数 把算出的值赋给number 再用 number除以 7 取余数 即得到某年某月某日 的编号 定义一个字符型指针变量 利用 switch 语句 当 number 0时 使指针 指向星期日 当number 1 时 指针指向星期一 当number 2时 指针指 向星期二

4、 当 number 3 时 指针指向星期三 当number 4时 指针指向 星期四 当 number 5 时 指针指向星期五 当number 6时 指针指向星 期六 当 number不是上述数值时 指针指向错误 x 函数 输出该天星期几 调用week1 函数 将编号的值赋给number 调用 week2 函数 根据number 的值 确定指针指向 从而输出星期几 输出 年 月 日 星期几 显示月历 先输出星期日星期一 星期二 星期三 星期四 星期五 星期六 星期日 检验有效性 即当输入的年小于零 月小于一或大于十二 天大于该 月最大值 调用 day1 函数 时将 0 返回给主函数 否则将1 返

5、回给主函数 nianli 函数 输出年历 先调用runnian 函数 定义变量 i 赋初值为 1 利用 for 循 环 循环十二次 调用x2 函数 输出各个月的月历 从而显现出该年的每 一天达到年历的效果 yueli 函数 输出月历 先调用 runnian 函数 调用showmonth函数 输出该月月历 rili 函数 输出日历 先调用函数 调用printmonth函数 输出该日日期 二 功能实现详细设计 输入选择 选择 回车键 输入相应信息 回车键 输出结果 流程图如下 程序包含多个函数 分别为main 函数 nianli 函数 yueli 函数 rili 函数 nongli 函数 prin

6、tmonth函数 printyear 函数 SelectMenu 函数 HandleMenu 函数 showmonth 函数 week1 函数 week2 函数 day1 函数 day2 函数 通过函数间的调用 实现 程序的运行 开始 选择 年历月历日历日期 输入年输入年月输入年月日 输出该年的所有日 期 输出该月的日期输出这一天是 星期几 输入 2012 年 1 月 输 出 该 月农历 退出 详细程序 include include void nongli int j printf n n t t t t 2012年 1 月 n printf n t星期日星期一星期二星期三星期四星期五星期

7、六 n n for j 1 j0 printf t n include char MonthDay 31 28 31 30 31 30 31 31 30 31 30 31 char MonthDayLeap 31 29 31 30 31 30 31 31 30 31 30 31 char WeekDayName 星期日 星期一 星期二 星期三 星期四 星期五 星 期六 char getkey char c s 10 scanf s s c s 0 return c char isLeapYear int y return y 4 0 int WeekDay int y int m int d

8、int week if m 1 m 13 if m 2 m 14 week d 2 m 3 m 2 5 y y 4 y 100 y 400 7 return week char queryweekday int y m d week c 0 do printf 请输入年月日 XXXX XX XX n scanf d d d week WeekDay y m d printf d年 d月 d日 是 星期 s 是否 继续 查 询 Y N y m d WeekDayName week c getkey while c Y c y return c void showmonth int y int m

9、 int d dt week week WeekDay y m 1 if isLeapYear y dt MonthDayLeap m 1 12 else dt MonthDay m 1 12 for d 0 d 7 d printf t s WeekDayName d printf n printtab week for d 1 d dt d printf t 6d d if WeekDay y m d 6 printf n printf n char printmonth int y m c 0 do printf 请输入年月 XXXX XX n scanf d d printtab 3

10、printf d 年 t d 月 n y m showmonth y m printf 是否继续查询 Y N c getkey while c Y c y return c char printyear int y m c 0 do printf 请输入年份 XXXX n scanf d printtab 3 printf d 年年历 n y for m 1 m 12 m printtab 4 printf d 月 n m showmonth y m printf n 是否继续查询 Y N c getkey while c Y c y return c void quit printf n t

11、 谢谢使用该程序 n exit 0 int SelectMenu int choice printf n t n printf 4 2012 年 1 月的农历 n printf 3 某年日历 n printf 2 某月日历 n printf 1 根据日期查星期几 n printf 0 退出 n printf t n printf t 请选择菜单号 0 4 while scanf d printf n t n printf 4 2012 年 1 月的农历 n printf 3 某年日历 n printf 2 某月日历 n printf 1 根据日期查星期几 n printf 0 退出 n pri

12、ntf t n printf t 请选择菜单号 0 4 return choice void HandleMenu printf t t 欢迎使用该程序 n while 1 switch SelectMenu case 0 quit break case 1 queryweekday break case 2 printmonth break case 3 printyear break case 4 nongli break void main HandleMenu 三 测试结果分析 程序主界面 四 用户手册 可以根据界面的提示根据您的需要输入0 1 2 或 3 然后输入您要查的 日期即可

13、五 设计体会 忙了好久总算将此程序设计出来 尽管不是自己独立完成 但仍然很 高兴 因为在设计的过程中 让我了解到要设计一个大型程序 查找资料 是至关重要的 在他人的基础上 再根据自己所学进行修改与调试 最后 设计出自己想要的程序 另外平时扎实的基础也很关键 因为如果你平时学得就不怎么样 那 么你面对这么一个比较有难度的程序 你可能会望而却步 看他人的程序 都是个难点 更别说让你自己去设计 为了解决此类问题 最好就是多向 同学 老师请教 不要怕难为情 尤其是老师 凭他们多年的编写程序的 经验 要解决我们的问题 对他们来说只是小问题 在设计这个程序时 我刚开始是根据老师给我提供的资料 用画图以 及循环将框架设计出来 但是接下去便无从下手了 计算是个关键和难点 我们也查了相应的资料 最好这个计算问题解决了 从这一个多星期的设计过程中 遇到了一些细节性的问题 比如在乱 输入的情况下 有时会出现程序崩溃 后来通过修改 修正了漏洞 到写 报告为止 漏洞基本被找出 并得到修正 通过写这个程序 我对程序的 健壮性有了更深的认识 也更加注意程序的细节问题 总之 这次设计程序让我受益良多 我会好好珍惜像这种难得的机会

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

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号