1. 程式人生 > >Problem E: 第幾天

Problem E: 第幾天

Problem E: 第幾天

Time Limit: 1 Sec  Memory Limit: 64 MB

Description

給定一個日期,輸出這個日期是該年的第幾天。

Input

輸入資料有多組,每組佔一行,資料格式為YYYY-MM-DD組成,具體參見sample input ,另外,可以向你確保所有的輸入資料是合法的。

Output

對於每組輸入資料,輸出一行,表示該日期是該年的第幾天。

Sample Input

2000-01-01

Sample Output

1

HINT

參考答案:

#include<stdio.h>
int main()
{
	int year,month,day;
	int c;
	scanf("%d-%d-%d",&year,&month,&day);
	switch(month)
	{
	case 1:
		c=day;
		break;
	case 2:
			c=31+day;
			break;
	case 3:
		{c=31+day;
		break;}
	case 4:
		c=31*2+day;
		break;
	case 5:
		c=31*2+30+day;
		break;
	case 6:
		c=31*3+30+day;
		break;
	case 7:
		c=31*3+30*2+day;
		break;
	case 8:
		c=31*4+30*2+day;
		break;
	case 9:
		c=31*4+30*3+day;
		break;
	case 10:
		c=31*5+30*3+day;
		break;
	case 11:
		c=31*5+30*4+day;
		break;
	case 12:
		c=31*6+30*4+day;
		break;
	}
	if(month==1||month==2)
		printf("%d",c);
	else if(year%4==0&&year%100!=0||year%400==0)
			printf("%d",c+29);
		 else
			printf("%d",c+28);
		
	return 0;
}

程式設計軟體及學習視訊下載:點選開啟連結