C语言年历显示主菜单怎么做,c语言程序的设计年历显示.doc
PAGE
.. ..
南京航空航天大学金城学院
设计题目 年历显示
学生姓名 常思达
学 号 2015023310
专业班级
指导教师 闵芳
2016 年 3 月 4 日
目 录
TOC \o "1-2" \h \z \u 一、课程设计问题描述 1
1.课程设计题目 1
2.设计任务要求 1
二、总体设计 1
1.总体思路 1
2.遇到的问题 1
3.问题的解决 1
4.大概的流程图 1
三、详细设计 3
1.显示输入年份的日历 3
2.显示所查询月份的日历 4
3.判断当天是星期几,是否为法定假日 4
四、运行结果测试与分析 5
1.输出结果 5
2.分析 7
五、结论与心得 7
.. ..
一、课程设计问题描述
1.课程设计题目
年历显示
2.设计任务要求
功能要求
(1)输入一个年份,输出是在屏幕上显示该年的日历。假定输
的年份在1940-2040年之间。
(2)输入年月,输出该月的日历。
(3)输入年月日,输出距今天还有多少天,星期几,是否是公历节日。
二、总体设计
1.总体思路
想要实现输出某年的日历,必须知道一个常识,那就是公元一年一月一日是星期一,这是一个重要的切入点。如果知道了这一点,那问题就迎刃而解了。我们可以先计算出公元一年一月一日到这年一月一日之前的总天数,这用for语句较易实现,不过要注意到平年与闰年的区别。有了总天数,再除以7,余数是什么,那这年的一月一日就是星期几,如此依次写出一月的日历。然后一月的天数加上总天数得到的结果再除以7,如此知道二月一日是星期几,写出二月的月历。如此便可以依次写出一到十二月的日历。至于输入年月,输出该月的日历,思路相同。至于判断是否为公历节日,用一个if语句便可实现。
2.遇到的问题
(1)函数的调用与套用,具体来说就是如何在一个构造的函数中调用另一个构造函数。
(2)把每月的日历设计的美观,如何让星期和下面的数字对齐。
(3) 如何把握日历的前几天的空格,使每月的第一天正好对在它应该的星期下。
3.问题的解决
第一个问题我通过查书,需要先把调用的函数在该构造函数中声明。至于第二和第三个问题,都是通过反复调试,反复修改,最后基本达到了要求。
4.大概的流程图
开始输入你查询的年份
开始
输入你查询的年份
输入年月
输入年月日和当前日期
判断所输入的年份是否为闰年
判断所输入的年份是否为闰年
判断当天是星期几,是否为法定假日how(),where()
判断当天是星期几,是否为法定假日
how(),where()
how(),where()
how(),where(),why(),when()
输出该年的日历
输入所查询月份的日历
结束
结束
三、详细设计
1.显示输入年份的日历
当我们输入年份任意公元后的年份year时,可以通过一个for语句,算出从公元一年到year-1年的总天数,这其中要注意平年与闰年的区别,平年365天,闰年是366天,把这一部分用how()函数表示。算出总天数Z后,用Z除以7,余数是d,则year这一年的一月一日便是星期d。如此则一月的日历可表示出来。然后把Z加上一月的天数tian得到的新值赋给Z,再用Z除以7,重新得到新的余数d,如此可知二月的第一天是星期几,可表示出二月的日历。依次循环,用for(i=0;i<12;i++)语句可表示出该年的日历。注意闰年二月是29天,平年是28天。
开始
开始
输入year
输入year
S=0,i=1
S=0,i=1
是否为闰年
是否为闰年
YNS=S+365S=S+366
Y
N
S=S+365
S=S+366
i++
i++
i<=year
i<=year
输出s
输出s
结束
结束
2.显示所查询月份的日历
当我们输入year和month时,同上,用how()函数算出公元一年一月一日到year-1年的总天数Z,再用一个for(i=1;i
3.判断当天是星期几,是否为法定假日
当我
C语言年历显示主菜单怎么做,c语言程序的设计年历显示.doc相关推荐
- Android 9.0 系统设置显示主菜单添加屏幕旋转菜单实现旋转屏幕功能
1.前言 在android9.0的系统rom定制化开发中,在对系统设置进行定制开发中,有产品需求要求增加旋转屏幕功能的菜单,就是在点击旋转屏幕菜单后弹窗显示旋转0度,旋转 90度,旋转180度,旋转2 ...
- Android 12.0 系统设置显示主菜单添加屏幕旋转菜单实现旋转屏幕功能
1.前言 在android12.0的系统rom定制化开发中,在对系统设置进行定制开发中,有产品需求要求增加 旋转屏幕功能的菜单,就是在点击旋转屏幕菜单后弹窗显示旋转0度,旋转 90度,旋转180度, ...
- js动态加载div显示主菜单和子菜单+jquery获取动态id
最近在做项目重构的主界面工作中,需要动态显示主菜单以及子菜单(各个界面的链接),查看原来老系统采用的是asp控件,但是重构的时候采用mvc框架,而且这些菜单并不是死的,而是通过其他界面来配置的,主菜单 ...
- c语言学生作业ppt课件怎么做,C语言课件完整版(精华).ppt
<C语言课件完整版(精华).ppt>由会员分享,可在线阅读,更多相关<C语言课件完整版(精华).ppt(484页珍藏版)>请在人人文库网上搜索. 1.1,计算机程序设计基础(C ...
- 数码管在c语言中显示时间,如何利用单片机数码管程序模拟是时钟显示时间?...
数码管是一种半导体发光器件,其基本单元是发光二极管.数码管按段数可分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,也就是多一个小数点(DP)这个小数点可以更精确的表示数码管想要 ...
- C语言辅导试题,c语言程序的设计辅导试题.doc
c语言程序的设计辅导试题 一.单项选择题: 1.以下叙述正确的是:A)在C程序中,main函数必须位于程序的最前面B)C程序的每行中只能写一条语句C)C语言本身没有输入输出语句D)在对一个C程序进行编 ...
- C语言过河问题主函数,c,c++_C语言踩石头过河问题,用DFS搜索递归了17万次但是没报错,请问是什么原因?,c,c++,算法 - phpStudy...
C语言踩石头过河问题,用DFS搜索递归了17万次但是没报错,请问是什么原因? 这是原题目,后面附上我的代码,刚刚接触DFS,不是很熟练,求教育--谢谢!!!TUT 这是题目,我大概概括一下 用'※'和 ...
- python做的数据图表怎么在flask中显示_Python:如何在Flask应用程序的表中显示MySQL查询的数据...
我对Python/flask还比较陌生,有些数据库方面的东西也有问题. 我能够在不同的函数中连接到MySQL数据库,并从使用wtforms插入数据库的用户那里获得表单输入.现在我想使用jinja模板以 ...
- 如何写一个能被手机打开的C语言小程序,如何用C语言中一些简单的语句做一个小程序,能够输入一个字符就会弹出一句话...
满意答案 lyj1260 2015.03.28 采纳率:43% 等级:11 已帮助:6408人 这个不难,是最基本的C语言程序了,我写个示例给你 #include //包含头 int main( ...
最新文章
- 降维-基于RDD的API
- 使用Mysql ID自增长时 在Mapper的insert里添加对应的代码
- 几款开源富文本编辑器优缺点比较
- 网络光端机产品特点及实际应用范围详解
- php函数、类和对象以及类的封装、继承、类的静态方法、静态属性
- Flink读取Kafka报错:KafkaException ByteArrayDeserializer is not an instance Deserializer
- 谁说 JavaScript 简单的?
- html怎么在jupyter编辑,jupyter home jupyter环境变量怎么设定
- 【POJ 2482】【扫描线问题】Stars in Your Window【包星星问题】
- 【教程】Edraw Max使用教程:Edraw Max快速入门指南
- 000001 Kick off
- C语言中fflush()、fflush(stdin)、fflush(stdout)
- android终端模拟器运行命令可以进行adb connect
- ShaderJoy —— 用 Shader 绘制一只可爱的 “小挠斧” (详细版)【GLSL】
- [转]Google Dremel 原理 - 如何能3秒分析1PB
- 黑客盗走《加勒比海盗5》片源?原来是空手套白狼
- http请求头中的host是什么意思
- Python中使用GoogleMaps API(包含Geocoding API,Places API Web Service )详细教程
- 哪些Python技术助力人工智能发展
- C# 连接PDA扫码枪