题目
解决
#include <stdio.h>
int leap(int a)
{
if (a%4==0&&a%100!=0||a%400==0)
return 1;
else
return 0;
}
int number(int year,int month,int day)
{
int sum = 0, i, j, k;
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31};
int b[12]={31,29,31,30,31,30,31,31,30,31,30,31};
if(leap(year)==1)
{
for(i=0;i<month-1;i++)
sum+=b[i];
}
else
{
for(i=0;i<month-1;i++)
sum+=a[i];
}
for(j=2019;j<year;j++)
{
if (leap(j)==i)
sum+=366;
else
sum+=365;
}
sum+=day;
return sum;
}
int algo(int d)
{
if(d%5==0||d%5==4)
return 0;
else
return 1;
}
void main()
{
int year,month,day,d;
year=2019,month=1,day=1;
printf("开始打鱼晒网的日期是\n%d %d %d\n",year,month,day);
printf("请输入开始打鱼晒网后任意一天的日期:\n");
scanf("%d%d%d",&year,&month,&day);
d=number(year,month,day);
printf("开始日期和输入日期相隔%d天\n",d);
if(algo(d))
printf("渔夫这天打鱼\n");
else
printf("渔夫这天晒网\n");
}