第幾天hdu2005
阿新 • • 發佈:2018-12-15
給定一個日期,輸出這個日期是該年的第幾天。
Input
輸入資料有多組,每組佔一行,資料格式為YYYY/MM/DD組成,具體參見sample input ,另外,可以向你確保所有的輸入資料是合法的。
Output
對於每組輸入資料,輸出一行,表示該日期是該年的第幾天。
Sample Input
1985/1/20
2006/3/12
Sample Output
20
71
我的程式碼:
#include <iostream> using namespace std; int main() { int a, b, c; char e='/'; while (cin >> a >>e>> b >>e>> c) { int d; switch (b) { case 1:d = c; break; case 2:d = 31 + c; break; case 3:d = 28 + 31 + c; break; case 4:d = 28 + 31 + 31 + c; break; case 5:d = 31 + 28 + 31 + 30 + c; break; case 6:d = 28 + 31 + 30 + 31 + 31 + c; break; case 7:d = 31 + 28 + 31 + 30 + 31 + 30 + c; break; case 8:d = 31 + 28 + 31 + 30 + 31 + 30 + 31 + c; break; case 9:d = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + c; break; case 10:d = 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c; break; case 11:d = 31 + 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + c; break; default:d = 28 + 31 + 30 + 31 + 30 + 31 + 31 + 30 + 31 + 31 + 30 + c; } if ((a % 4 == 0) && (a % 100 != 0)&&(b>2)) { d = d + 1; cout << d << endl; } else if ((a % 400 == 0)&&(b>2)) { d = d + 1; cout << d << endl; } else cout << d << endl; } return 0; }
題解:希望大家記得斜槓/