第几天?
Problem Description
给定一个日期,输出这个日期是该年的第几天。
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
Sample Input
1985/1/20
2006/3/12
Sample Output
20
71
Author
lcy
Source
C语言程序设计练习(一)
解题思路
主要在于闰年的判断
AC
#include<iostream>
using namespace std;
int month[13];//全局数组
int main()
{month[1] = 31;month[2] = 28;//二月份赋值不必要month[3] = 31;month[4] = 30;month[5] = 31;month[6] = 30;month[7] = 31;month[8] = 31;month[9] = 30;month[10] = 31;month[11] = 30;month[12] = 31;//月份赋值int a, b, c,ans;while (scanf("%d/%d/%d", &a, &b, &c) != EOF) {ans = 0;if(a%400==0)month[2] = 29;else if(a%4==0 && a%100!=0)month[2] = 29;while (b--)ans += month[b];cout << ans + c << endl;month[2] = 28;}return 0;
}