c语言实现万年历程序带节日,【C】万年历
用C语言实现一个万年历
一、如何实现一个万年历
①要实现万年历,首先你得知道每年的1月1日是星期几
这里要用到一个数学公式(这里不做数学证明)
w = d+2*m+3*(m+1)/5+y+y/4-y/100+y/400;
②要判断一年是否为闰年,关系到输出2月的天数
③写一个年份数组,然后输出,并且在周六(当然是你的每周最后一天)过后换行
二、代码块
#include
int TheFirstDay(int y) //计算1月1日星期几
{
int m = 13,d = 1;
int w;
y--;
w = d+2*m+3*(m+1)/5+y+y/4-y/100+y/400;
w=w%7+1;
printf("w = %d",w);
return w;
}
int IsLeapYear(int year)//判断是否为闰年
{
return ((year%4==0&&year%100!=0)||year%400==0);
}
void Print_year()//打印一年的日历
{
int year = 0;
int day = 0;
int count = 0;//一行7个,根据count取余来换行
int kong = 0;//月历中第一行空的格数
int month[12]={31,28,31,30,31,30,31,31,30,31,30,31} ;//月份数组,记录每月天数
printf("请输入年份:");
scanf("%d",&year);
count = TheFirstDay(year);//判断是否为闰年
if(IsLeapYear(year)==1)
month[1]+=1;//闰年的二月加一天
for(int i = 0; i<12; i++)//打印每个月的月历。从1月到12月
{
printf("\n========%d月=========",i+1);
printf("\n日 一 二 三 四 五 六\n");
kong = count%7;
while(kong)
{
printf(" ");
kong--;
}
for(int j=1;j<=month[i];j++)
{
printf("%2d ",j);
count++;//每输出一个,count就+1
if(count%7==0)//count到7就输出换行符“\n”
{
printf("\n");
count = 0;
}
}
}
}
int main()
{
Print_year();
return 0;
}
三、运行结果
今天是2016.6.12星期日,咦。对啦
-------------------->>>C++实现万年历及查询节日功能
c语言实现万年历程序带节日,【C】万年历相关推荐
- c语言电子万年历大作业,C语言实现一个简单的电子万年历
最近帮朋友做一些C语言的练习题,期间遇到了个比较有意思的题目,意在考察模块化程序设计,大致要求如下: 电子万年历: 1.编写函数int isleapyear(int year);判某年是否为闰年,如该 ...
- 万年历C语言程序可参考的文献,万年历的c语言程序
c语言编写的万年历(包含农历和阳历) #include time.h #include stdio.h #include string.h #include stdlib.h #include con ...
- c语言万年历算天干地支,万年历计算 之 干支
1.基本知识 中国古代的一种纪年法.即以甲.乙.丙.丁.戊.己.庚.辛.壬.癸为十干,子.丑.寅.卯.辰.巳.午.未.申.酉.戌.亥为十二支,把干.支顺序配合.如甲子.乙丑等,经过六十年又回到甲子.周 ...
- 万年历设计单片机c语言,基于51单片机的电子万年历的设计
基于51单片机的电子万年历的设计(论文9400字) 功能要求 1. 万年历能用数码管显示阳历年.月.日.星期.[小]时.分.秒并设置指定时间的闹铃. 2. 数字式温度计要求测温范围-50~100°C, ...
- C语言 我的第一次课程设计---万年历
#要求 输入任意一年将显示出该年的所有月份日期,对应的星期 其显示格式要求如下 1.月份用中文显示 2.下一行显示星期,从周日到周六,中英文都可以 3.下一行开始显示日期,从一号开始,并按其实周期实际 ...
- c语言万年历论文3000字,万年历C语言报告3
<万年历C语言报告3>由会员分享,可在线阅读,更多相关<万年历C语言报告3(7页珍藏版)>请在人人文库网上搜索. 1.软件工程实验报告姓名: 学号: 班级:指导老师第三章 实验 ...
- 单片机万年历阴阳历c语言,单片机阴历阳历c算法万年历.pdf
单片机阴历阳历c算法万年历 当前位置: 首页 > 嵌入式系统 > 51 单片机万年历优化算法源程序 51 单片机万年历优化算法源程序 字体大小 : 小 中 大 作者: 来源: 日期: 20 ...
- c语言万年历的设计报告,万年历设计报告
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include char* month_str[]={"January","February" ...
- c语言万年历的设计任务,万年历设计报告
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include char* month_str[]={"January","February" ...
最新文章
- python的继承用法_Python 中的继承之Super用法
- 如何高效输出移动app产品原型?
- Python从头/尾删除子符串的正确操作
- 06 | 哨兵机制: 主库挂了, 如何不间断服务
- 温柔得叫人想死:日本电影《火宅之人》手记
- 微软自带iscsi客户端对iqn的要求
- Apache Flink 进阶入门(二):Time 深度解析
- 查看服务器大文件,linux 查看服务器大文件
- 恩施机器人编程_恩施安川机器人水切切割编程
- 关于synergy的问题
- Atitit 常见数据结构之编程语言源文件与编译文件 目录 1.1. 通过反射api得到结构	1 1.2. 通过源码ast信息	1 2. 常见语言	1 2.1. Php ast 解析	1 2.2.
- 开源点云数据处理 开源_开源云–充满希望的未来
- Homography 单应性变换详解
- 苹果屏蔽更新描述文件_iPhone|IOS10-IOS12屏蔽系统更新描述文件|去除设置①小红点教程...
- hibernate四种状态
- Git——详解操作码云
- mysql 1114错误_mysql cluster导表时报1114问题
- choco无法将choco识别_终于有个可以量产的法甜配方了,来自巴黎CHOCO(已打包可下载)...
- 计算机储存元件原理,计算机原理之存储器组织
- Linux上使用docker运行酷Q机器人
热门文章
- Intel超线程技术 Hyper-Threading Technology (7) - 最早的一篇超线程论文介绍
- 如何根据离散点自动绘制等值线(等高线)之 三角形法
- c++ 使用未初始化的内存_C语言内存分布(内核区、堆栈区等)
- 2 环境设置_VS Code 虚拟环境设置
- python中函数的可变参数_Python中函数的参数定义和可变参数
- 佐治亚理工学院 计算投资公开课第六周作业 投资策略分析平台
- Metal Framework基础使用教程
- android Intent 全面点的介绍
- glob,正则表达式元字符,扩展正则表达式总结
- Spring框架 AOP面向切面编程(转)