- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言--打印日历
第1章需求分析
(1)程序运行时,首先给出四个菜单选项和输入提示:
图1-1
(2)用户可以通过主菜单选择不同选项。输入1,通过输入年份可显示一年每个月份的日历;输入2,通过输入年份和月份(中间以空格分开)可显示该月的日历;若输入3,通过输入年份月份和日期(中间以空格分开)可显示该日的星期;输入0,则退出查询系统。
第2章 概要设计
菜单选择界面可通过下面所示函数时现;
主要思路:
通过while语句与swich…case以及if条件语句实现菜单的循环功能和不同选项的功能实现。
闰年与平年的判断:
代码如下:
void main()
{
int year,month,day,a,b;
while(1)
{
printf(\n\n\n\n);
printf( **********************************************************\n\n);
printf( * * \n);
printf( 欢迎进入万年历查询系统 \n);
printf( * * \n\n);
printf( **********************************************************\n\n\n);
printf( 1 年历 2 月历 3 日历 4 退出\n);
printf( 请输入您的选择1~4,按回车键确定: );
scanf(%d,b);
switch(b)
{
case 1:
printf(\n请输入您要查的年份: );
scanf(%d,year);
a=x3(year,1,1);
if(a==0)
{
printf(错误!请您重新输入。\n);
break;}
nianli(year);
break;
case 2:
printf(\n请输入您要查的年和月,年月之间用空格隔开: );
scanf(%d%d,year,month);
a=x3(year,month,1);
if(a==0)
{
printf(错误!请您重新输入。\n);
break;}
yueli(year,month);
break;
case 3:
printf(\n请输入您要查的年月日,年月日之间用空格隔开: );
scanf(%d%d%d,year,month,day);
a=x3(year,month,day);
if(a==0)
{
printf(错误!请您重新输入。\n);
break;}
rili(year,month,day);
break;
case 4:
exit(0);
default:
printf(错误!请您重新输入。\n\n);
}
}
显示一年的日历,可通过函数void x1()实现,
思路如下:
●先判断输入年份是否为闰年,若为闰年,则定义二月为29天,
通过调用函数判断是否为闰年及每个月的天数
●依次打印12个月的月份
●打印每个月的日历,显示个每个月的日历:
printf(%2s%2s%2s%2s%2s%2s%2s\n, 星期日 , 星期一 , 星期二, 星期三 , 星期四 , 星期五 , 星期六 );
闰年的判断:
计算所输入的年份是否可被4整除,若不能被整除,为平年。若可被4整除,计算此年份能否被100整除,不能被100整除则为闰年。既能被4整除,也能被100整除的年份,若也能被400整除,则为闰年,否则为平年。闰年366天,平年365天
图2-1
代码:
int runnian(int year)
{
if(year%4==0year%100!=0||year%400==0)
return 1;
else
return 0;
}
判断某月的天数;
通过函数:
int day1(int year,int month)
{
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
若为闰,则二月为29天。
图2
您可能关注的文档
- 图像非监督分类实习指导书.doc
- HPY18—11空压机技术操作规程.doc
- 【Android】GestureDetector类及其用法.docx
- 2010高考模拟镇海中学最后一卷(英语试卷).doc
- java答案第三章.doc
- 石台煤矿井田概述及井田地质特征.doc
- 北师大新版八年级数学上册《三元一次方程组》同步练习卷(含答案解析).docx
- iOS常用的手势.docx
- Android Gesture之触摸屏手势识别操作.docx
- 山师附中2015-2016学年第一学期期中数学测试题(2015级).docx
- 2024年中国钽材市场调查研究报告.docx
- 2024年中国不锈钢清洗车市场调查研究报告.docx
- 2024年中国分类垃圾箱市场调查研究报告.docx
- 2024年中国水气电磁阀市场调查研究报告.docx
- 2024年中国绿藻片市场调查研究报告.docx
- 2010-2023历年初中毕业升学考试(青海西宁卷)数学(带解析).docx
- 2010-2023历年福建厦门高一下学期质量检测地理卷.docx
- 2010-2023历年初中数学单元提优测试卷公式法(带解析).docx
- 2010-2023历年初中毕业升学考试(山东德州卷)化学(带解析).docx
- 2010-2023历年初中毕业升学考试(四川省泸州卷)化学(带解析).docx
文档评论(0)