题目描述
给定一个日期,输出这个日期是该年的第几天。
输入
输入数据有多组,第一行输入一个整数n表示样例个数。每组占一行,数据格式为 year / month / day (年 / 月 / 日)组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
输出
对于每组输入数据,输出一行,表示该日期是该年的第几天。
样例输入
2
1985/1/20
2006/3/12
样例输出
20
71
题目描述
给定一个日期,输出这个日期是该年的第几天。
输入
输入数据有多组,第一行输入一个整数n表示样例个数。每组占一行,数据格式为 year / month / day (年 / 月 / 日)组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
输出
对于每组输入数据,输出一行,表示该日期是该年的第几天。
样例输入
2
1985/1/20
2006/3/12
样例输出
20
71
供参考:
#include<stdio.h>
int H(int y, int m, int d);
int main()
{
int n, year, month, day;
scanf("%d", &n);
while(n--){
scanf("%d/%d/%d", &year, &month, &day);
printf("%d", H(year, month, day));
if (n) printf("\n");
}
return 0;
}
int H(int y, int m, int d)
{
int sum = 0, i;
for (i = 1; i < m; i++)
{
if (i == 2)
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
sum += 29;
else
sum += 28;
}
else if (i == 4 || i == 6 || i == 9 || i == 11)
sum += 30;
else
sum += 31;
}
return sum += d;
}