C语言入门题-计算到任意日期的总天数

7-1 计算到任意日期的总天数 (10分)

编程序实现:输入任意一个日期的年、月、日的值,求出从公元1年1月1日到该日期前一年的年末总共有多少天,到该日期前一个月的月末总共有多少天,到这一天总共有多少天。假定从公元第一天开始,就实施格里高利历法。格里高利历法的置闰规则是400年97闰,也可以概括为:四闰百不闰,四百闰。

输入格式:

输入三个代表年、月、日的正整数,以空格分隔。

输出格式:

输出三个总天数,数据之间以换行符分隔,最后换行。

输入样例:

2012 3 29

输出样例:

734502
734562
734591

#include<stdio.h>
int main()
{
    
    
	int a,b,c,sum=0;
	int day[12] = {
    
    31,29,31,30,31,30,31,31,30,31,30,31};
	scanf("%d%d%d",&a,&b,&c);
	for(int i=1;i<a;i++)
	{
    
    
		if(i%4==0&&i%100!=0||i%400==0)
		{
    
    
			sum += 366;
		}
		else sum += 365;
	}
	printf("%d\n",sum);
	if(!(a%4==0&&a%100!=0||a%400==0))
	{
    
    
		day[1]-=1;
	}
	for(int i=0;i<b-1;i++)
	{
    
    
		sum+=day[i];
	}
	printf("%d\n",sum); 
	printf("%d\n",sum+c);
 } 

猜你喜欢

转载自blog.csdn.net/weixin_51198300/article/details/111998063