周赛3

问题:
给定一个日期,输出这个日期是该年的第几天。
Input
输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。
Output
对于每组输入数据,输出一行,表示该日期是该年的第几天。
分析:最主要要知道判断闰年的条件,先定义a[1]=28,如果是闰年就加一,否则就不加。

#include<iostream>
using namespace std;

int main()
{
	int y, m,d;
	char b[2];
	while (cin >> y >> b[0] >> m >> b[1] >> d)
	{
		int a[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
		if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
		{
			a[1] = a[1] + 1;
		}

		int sum = 0;
		for (int i = 0; i < m - 1; i++)
		{
			sum = sum + a[i];
		}
		cout<< sum + d << endl;
	}

}

猜你喜欢

转载自blog.csdn.net/weixin_43792166/article/details/85010003