首页 > 代码库 > 第几天?
第几天?
Problem Description
给定一个日期,输出这个日期是该年的第几天。
Input
#include<stdio.h>
int main()
{ //4,5行代码不能是:int y,m,d,i,a[13];
int y,m,d,i,a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31}; // a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
//否则error C2059: syntax error : ‘{‘
while(scanf("%d/%d/%d",&y,&m,&d)!=EOF) //%d/%d中/不是除号!
{
int s=0; //当输入多组数据时,注意要将输出还原,如是s,a[2].
if((y%4==0)&&(y%100!=0)||(y%400==0))
a[2]=29;
for(i=0;i<m;i++)
s=s+a[i];
s=s+d;
printf("%d\n",s);
a[2]=28; //要将a[2]=28还原!
}
return 0;
}
闰年366天,平年365天,两者不同在于闰年2月29天,平年2月28天。
闰年 平年
一月: 31 31
二月: 29 28
三月: 31 31
四月: 30 30
五月: 31 31
六月: 30 30
七月: 31 31
八月: 31 31
九月: 30 30
十月: 31 31
十一月: 30 30
十二月: 31 31