华为笔试题03

C_C++_LQC_06.输入某年某月某日,判断这一天是这一年的第几天?

  • 题目描述:
  • 输入某年某月某日,判断这一天是这一年的第几天? 请注意对闰年的判断。

int CalcDay(int year, int month, int day);

【输入】year:输入数字,例如 2011

       month:输入数字,例如 3

day:输入数字,例如 5

【输出】返回值为该年得第几天,例如,上述输入为该年的第64天;

【注意】只需要完成该函数功能算法,中间不需要有任何IO的输入输出

  • 示例

输入:“2011,3,5”

输出:“64”

#include "stdafx.h"
#include <iostream>
using namespace std;

int CalcDay(int year,int month,int day)
{
	int m=0;
	if(((year%4==0)&&(year%100!=0))||(year%400==0))
		m=1;
	int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
	int result=0;
	for(int i=0;i<month-1;i++)
	{
		result+=a[i];
	}
	result+=day;
	if(1==m)
		result+=1;	
	return result;
}
int _tmain(int argc, _TCHAR* argv[])
{
	int a=CalcDay(2011,3,5);
	return 0;
}

  

 

原文地址:https://www.cnblogs.com/xd-jinjian/p/3275831.html