输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/17 05:06:23
![输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面有T行,接下来每输入某年某月某日,判断这一天是这一年的第几天?Input 第一行输入一个整数T,表示是下面](/uploads/image/z/14672837-29-7.jpg?t=%E8%BE%93%E5%85%A5%E6%9F%90%E5%B9%B4%E6%9F%90%E6%9C%88%E6%9F%90%E6%97%A5%2C%E5%88%A4%E6%96%AD%E8%BF%99%E4%B8%80%E5%A4%A9%E6%98%AF%E8%BF%99%E4%B8%80%E5%B9%B4%E7%9A%84%E7%AC%AC%E5%87%A0%E5%A4%A9%3FInput+%E7%AC%AC%E4%B8%80%E8%A1%8C%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0T%2C%E8%A1%A8%E7%A4%BA%E6%98%AF%E4%B8%8B%E9%9D%A2%E6%9C%89T%E8%A1%8C%2C%E6%8E%A5%E4%B8%8B%E6%9D%A5%E6%AF%8F%E8%BE%93%E5%85%A5%E6%9F%90%E5%B9%B4%E6%9F%90%E6%9C%88%E6%9F%90%E6%97%A5%2C%E5%88%A4%E6%96%AD%E8%BF%99%E4%B8%80%E5%A4%A9%E6%98%AF%E8%BF%99%E4%B8%80%E5%B9%B4%E7%9A%84%E7%AC%AC%E5%87%A0%E5%A4%A9%3FInput+%E7%AC%AC%E4%B8%80%E8%A1%8C%E8%BE%93%E5%85%A5%E4%B8%80%E4%B8%AA%E6%95%B4%E6%95%B0T%2C%E8%A1%A8%E7%A4%BA%E6%98%AF%E4%B8%8B%E9%9D%A2)
输入某年某月某日,判断这一天是这一年的第几天?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;
}