思路分析:
1.首先输入年月日,为了保证正确性,输入年月日错误的时候就要重新输入(可单独写个函数,避免main函数太臃肿)
2.除开闰年,每年都是365天,刚好是5的倍数,所以这一年的第一天就是一个新的周期,但是没经过一个闰年,就会措开一天,所以需要计算输入的年份与1990年中间有几个闰年num1
3.自然是判断闰年的问题
4.计算一年中某天到该年1月1号的天数num2。
5.用(num1+num2)%5即可得到我们想要的结果
C语言代码:
#include<stdio.h>
bool data(int y,int m,int d); //输入正确年月日
int Ryear(int y); //判断输入年份与1990年间的闰年数有几个
int Rdata(int y,int m,int d);//判断输入的年月日到该年1月1日有多少天;
int main(){
int y,m,d,b,i,j,num,sum;
printf("请输入年月日\n",y,m,d);
do{
scanf("%d %d %d",&y,&m,&d);
}while(!data(y,m,d));
num=Ryear(y);
sum=Rdata(y,m,d)+num;
if(sum%5>=0&&sum%5<=3)
printf("在打渔");
else
printf("在晒网");
}
bool data(int y,int m,int d){
if(y<1990)
{
printf("您输入的年份有误,请重新输入\n");
return false;