C语言实现简单日历

这篇博客介绍了如何使用C语言来实现一个简单的日历功能,基于计算机的纪元时间1970年1月1日。文章可能涵盖了时间转换、日期计算等技术,并展示了最终的执行结果。
摘要由CSDN通过智能技术生成

其实时间采用的是计算机起始时间1970年1月1日(纪元时间)。

#define _CRT_SECURE_NO_WARNINGS 1

#include <stdio.h>

int months[2][13] = {
  {0,31,28,31,30,31,30,31,31,30,31,30,31},
					 {0,31,29,31,30,31,30,31,31,30,31,30,31}};

void Input(int *year,int *month)			//输入年和月
{
	printf("请输入年/月:");
	scanf("%d/%d",year,month);
}

int IsLeapYear(int year)					//判断是不是闰年
{
	return ((year%4==0 && year%100!=0) || (year%400==0));
}

int FirstDayOfYear(int year,int month)		//返回当前年的第一天是周几
{
	int total = 0;
	int i = 0;
	for(i = 1970;i < year;i++)
		total += 365 + IsLeapYear(i);
	return (4 + total) % 7;
}

int FirstDayOfMonth(int FirstDay_y,int year,int month)		//返回当前年当前月是周几
{
	int total = 0;
	int i = 0;
	for(i = 1; i < month; i++)
	{
		total += months[IsLeapYear(year)][i];
	}
	return (FirstDay_y + total)%7;
}

void DisPlay(int FirstDay_m,int year,int month)		
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值