C语言实现简单的万年历

这个C语言程序可以生成输入年份的整年日历。它使用了特定的函数来计算日期和星期,并根据闰年条件调整二月的天数。程序通过二维数组存储每个月的日期,并按星期排列显示。
摘要由CSDN通过智能技术生成
//C语言实现简单的日历 ,输入年份,就会输出整年的日历
#include <stdio.h>
#include <conio.h>

#include <windows.h>



long int f(int year, int month)
{/*f(年,月)=年-1,如月<3;否则,f(年,月)=年*/
	if (month<3) return year - 1;
	else return year;
}

long int g(int month)
{/*g(月)=月+13,如月<3;否则,g(月)=月+1*/
	if (month<3) return month + 13;
	else return month + 1;
}

long int n(int year, int month, int day)
{
	/*N=1461*f(年、月)/4+153*g(月)/5+日*/
	return 1461L * f(year, month) / 4 + 153L * g(month) / 5 + day;
}

int w(int year, int month, int day)
{
	/*w=(N-621049)%7(0<=w<7)*/
	return(int)((n(year, month, day) % 7 - 621049L % 7 + 7) % 7);
}

int date[12][6][7];
int day_tbl[][12] = { { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 },
{ 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 } };
mai
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值