您的位置:首页 > 其它

【OJ练习】三天打渔两天晒网

2014-07-07 12:20 204 查看
描述:

俗话说三天打渔两天晒网,某人从2010年1月1日开始打三天鱼,然后晒两天网,然后再打三天鱼,再晒两天网,周而复始,输入任意一天,求该天是打渔还是晒网

// 功能:从2010年1月1日起判断输入时期是否为打渔

// 输入: unsigned int nYear
输入日期的年, unsigned int nMonth
输入日期的月, unsigned int nDay 输入日期的日

// 输出:无

// 返回: 1
表示该天为打渔,0表示该天为晒网

unsigned int IsTodayFishing (unsigned int nYear, unsigned int nMonth, unsigned int nDay)

{

int Num_year;

int Num;

int i;

int Num1[12]={31,29,31,30,31,30,31,31,30,31,30,31};

int Num2[12]={31,28,31,30,31,30,31,31,30,31,30,31};

Num_year=nYear-2010;

Num=Num_year*365+(Num_year+1)/4;

if(nYear%4==0)

{

if(nMonth>1)

{

for(i=1;i<nMonth;i++)

Num+=Num2[i-1];

}

}

else

{

if(nMonth>1)

{

for(i=1;i<nMonth;i++)

Num+=Num1[i-1];

}

}

Num=Num+nDay;

Num=Num%5;

if(Num>=1&&Num<=3)

return 1;

else

return 0;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: