高斯日记 C语言版

/*高斯日记*/ 

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define N 8113
#define Y 1777
#define M 4
#define D 30
int rn(int y)//判断是否为闰年
{
    
    
if(y%4==0&&y%100!=0||y%400==0)
{
    
    return 1;}
return 0;
}



int main()
{
    
    
int y=Y;
int m=M;
int d=D;
int q=0;
while(q<N-1)
{
    
    
if(m==12&&d==31)
{
    
    y++;
q++;
m=1;
d=1;
continue;
}
if(m==1||m==3||m==5||m==7||m==9||m==10||m==12)
{
    
    
	if(d==31)//已经满了一个月了
	{
    
    
	q++;
	m++;
	d=1;//日归1
	}else
		{
    
    
		q++;
		d++;
		}
continue;

}

if(m==4||m==6||m==8||m==11)	
{
    
    
	if(d==30)//已经满了一个月了
	{
    
    
	q++;
	m++;
	d=1;//日归1
	}else
		{
    
    
		q++;
		d++;
		}	
continue;	
}
if(m==2)
{
    
    if(rn(y))
{
    
    
	if(d==29)//已经满了一个月了
	{
    
    
	q++;
	m++;
	d=1;//日归1
	}else
		{
    
    
		q++;
		d++;
		}	
	continue;
}else
	{
    
    
	if(d==28)//已经满了一个月了
	{
    
    
	q++;
	m++;
	d=1;//日归1
	}else
		{
    
    
		q++;
		d++;
		}
	continue;
	}
}
}
printf("%d-%d-%d\n",y,m,d);
return 0;
}

作者用的是txt文本编写,所以格式不太完美,请见谅!

猜你喜欢

转载自blog.csdn.net/Songbook/article/details/87930630