输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/19 11:52:15
输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面
输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每
输入某年某月某日,判断这一天是这一年的第几天?
Input
第一行输入一个整数T,表示是下面有T行,接下来每一行包含三个整数Y,M,D,分别表示年月日,中间用空格隔开.
Output
针对每一组数据输出一行,该行包含一个整数D,表示对应的日期是该年的第D天,如果不是一个合法的日期,则输出0.
Sample Input
2
2009 1 1
2009 2 30
Sample Output
1
0
Problem Source
HNU Contest
输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面
#include
int main()
{
int day,i;
int dd[]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int y,m,d;
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d%d%d",&y,&m,&d);
if(m>12) //月份大于12
{
printf("0\n");
continue;
}
else if(((y%4==0 && y%100!=0) || y%400==0) && m==2) //是闰年并且是2月.
{
if(d>dd[2]+1) //如果大于29
printf("0\n");
continue;
}
else if(d>dd[m]) //如果大于当月的天数
{
printf("0\n");
continue;
}
day=d;
for(i=1;i2)
day++;
printf("%d\n",day);
}
return 0;
}