linux如何实现渔夫打鱼c程序,(C语言)关于渔夫打鱼问题

该博客介绍了一个C语言程序,用于根据输入的日期判断渔夫是在打鱼还是晒网。程序基于每三天打鱼、两天晒网的规律,通过计算输入日期与2011年1月1日之间的天数来确定渔夫的状态。同时,程序还包含了判断闰年的功能。
摘要由CSDN通过智能技术生成

如果一个渔夫从2011年1月1日开始没三天打一次鱼,两天嗮一次网

编程实现输入2011年1月1日后的任意一天,输出渔夫是在打鱼,还是在晒网`

#include

int leap(int a) //自定义函数leap用来输入的年份是否为闰年

{

if(a%4==0&&a%100!=0||a%400==0)

return 1;

else

return 0;

}

int number(int year,int month,int day) //计算输入日期据2011年1月1日共有多少天

{

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

sum=b[i]+sum; //是闰年累加b前m-1个月的天数

else

for(i=0;i

sum=sum+a[i];

for(j=2011;j

if(leap(j)==1)

sum+=366; //2011年到输入的年份之间是闰年的加366

else

sum+=365; //2011年到输入年份之间不是闰年的加365

sum+=day; //将前面累加的结果加上日期

return sum;

}

int main(){

int year,month,day,n;

printf("请输入年月日:\n");

scanf("%d%d%d",&year,&month,&day);

n=number(year,month,day); //调用number函数进行天数计算

if(n%5<4&&n%5>0) //余数是1,2,3时说明在打鱼,否者在晒网

printf("%d: %d: %d: 打鱼\n",year,month,day);

else

printf("%d: %d: %d: 晒网\n",year,month,day);

return 0;

}

输入年份的方法

2011 1 4 表示2011年1月4日

标签:打鱼,int,31,30,C语言,渔夫,year,2011

来源: https://blog.csdn.net/meridian002/article/details/88141891

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值