题解 | #计算日期到天数转换#
计算日期到天数转换
http://www.nowcoder.com/practice/769d45d455fe40b385ba32f97e7bcded
//四年一润,百年不润,四百年再润。
//一三五七八十腊,三十一天永不差
#include<stdio.h>
int main(){
int year,month,date;
scanf("%d %d %d",&year,&month,&date);
int common[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int leap[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};
//判断是否是闰年,计算天数
int days=0;
if(year%100==0){
if(year%400==0){
for(int i=1;i<month;i++)
days+=leap[i];
}
else{
for(int i=1;i<month;i++)
days+=common[i];
}
}
else{
if(year%4==0){
for(int i=1;i<month;i++)
days+=leap[i];
}
else{
for(int i=1;i<month;i++)
days+=common[i];
}
}
printf("%d",days+date);
}