杭电oj 2005题

记录一下,之前一直搞不清天数的问题,之前做考研题也是,现在动手写了一下代码,就明白了,

杭电oj 2005题_第1张图片

#include

using namespace std;

/*
这个杭电oj的2005题,主要是闰年的影响的,之前考试的是也做过,只不过不敲代码实在记不住!
*/
int main() {

	int d[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};        //非闰年是第二月是28天

	int y, m, n, sum = 0;
	char c;

	while (cin >> y >> c >> m >> c >> n) 
	{
		

		if (y % 400 == 0 || ((y % 4 == 0) && (y % 100 != 0))) //判断闰年,能被400整除或者被4整除,但是不能被100整除

		{
			//cout << "闰年" << endl;
			d[1] = 29;    //闰年多一天
		}
		else {
			d[1] = 28;
		}

		for (int i = 0; i < m-1; ++i)
		{
			sum += d[i];             //每个月的天数加到一起,注意是m-1个月的
		}
		sum += n;
		cout << sum << endl;
		sum = 0;
	}


	return 1;
}

你可能感兴趣的:(c++,c++)