4-渔夫打鱼晒网问题
题目:
如果一个渔夫从 2011 年 1 月 1 日开始每三天打一次渔,两天晒一次网。
编程实现当输入 2011 年 1 月 1 日以后的任意一天,输出该渔夫是在打渔还是在晒网。
思路:
1.计数, 2011 年 1 月 1 日到今天经过了多少天。
2.对1求出的天数模5,余数为0,1,2是打渔,余数是3,4是筛网。
3.细节,闰年二月与平年二月天数不同,需要特判。闰年2月29天,平年2月28天。
4.细节,什么是闰年。分为一下这两种情况;可以被400整除;可以被4整除但是不能被100整除;
代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>/*
如果一个渔夫从 2011 年 1 月 1 日开始每三天打一次渔,两天晒一次网。
编程实现当输入 2011 1 月 1 日以后的任意一天,输出该渔夫是在打渔还是在晒网。
*/// 平年和闰年的不同月的天数
int days[2][13] = {{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}
};#define true 1
#define false 0
#define bool int// 判断是否为闰年
bool IsLeapYear(int x) {return ((x % 400 == 0) || (x % 4 == 0 && x % 100 != 0));
}int main() {int cnt = 0;int year;int month;int day;printf("please input year month day:");scanf("%d%d%d", &year, &month, &day);int i, j, k;for (i = 2010; i < year; i++) {cnt += (IsLeapYear(i) ? 366 : 365);}for (j = 1; j <= month - 1; j++) {cnt += days[IsLeapYear(year)][j];}cnt += day;if (cnt % 5 == 0 || cnt % 5 == 1 || cnt % 5 == 2) {printf("dayu!\n");} else if (cnt % 5 == 3 || cnt % 5 == 4) {printf("shaiwang!\n");}return 0;
}
4-渔夫打鱼晒网问题相关推荐
- JavaScript网页特效-“渔夫打鱼晒网”程序设计
程序设计时,把可能需要反复执行的代码封装为函数,然后在需要执行该段代码功能的地方进行调用,这样不仅可以实现代码的复用,更重要的是可以保证代码的一致性,只需要修改该函数代码,则所有调用位置均得到体现.同 ...
- java捕鱼设计_java实现渔夫打鱼晒网
package com.example.demo.sample; import java.util.Scanner; /** * Desc :如果一个渔夫从 2015 年 1 月 1 日开始每三天打一 ...
- C语言试题七十七之请编写函实现渔夫打鱼晒网问题
- python练习, 打鱼晒网问题
如果一个渔夫从 2011 年 1 月 1 日开始每三天打一次渔,两天晒一次网,编程实现当输入 2011 1 月 1 日以后的任意一天,输出该渔夫是在打渔还是在晒网. import time # 判断是 ...
- C语言练习题 打鱼晒网问题
题目: 一个渔夫从2011年1月1日起每三天打一次鱼,两天晒一次网,编程实现输入2011年1月1日后任意一天,输出当天是在打鱼还是晒网. 代码: #include <stdio.h> #i ...
- c语言200例 009 打鱼晒网问题
问题:中国有句俗语叫"三天打鱼两天晒网".某人从2011年1月1日起便开始"三天打鱼两天晒网",问这个人在以后的某一天中是"打鱼"还是&qu ...
- 68-C语言-打鱼晒网问题
问题: 正所谓三天打鱼两天晒网,你成为了一名渔夫,每三天第一次鱼,每两天打一次网,若你从2011年1月1日开始干活,请从键盘输入任意日期,问这天是打鱼还是晒网? 思路: 这个什么时候打鱼,什么时候晒网 ...
- 打鱼晒网问题(C++)
题目链接:https://www.bilibili.com/video/av21356335?p=3 问题描述:某人从1999年1月1日起开始三天打鱼两天晒网,计算输入的日期是打鱼还是晒网 问题分析: ...
- Python趣味算法入门 - 打鱼还是晒网
问题描述 中国有句俗语叫"三天打鱼两天晒网".某人从1990年1月1日起便开始"三天打鱼两天晒网",问这个人在以后的某一天中是"打鱼"还是& ...
- 算法初级_Question3_打鱼还是晒网(java实现)
这篇文章讲述的是算法初级部分的打鱼还是晒网问题的java实现,参考的书籍为清华大学出版社出版,贾蓓等编著的<c语言趣味编程1000例>,如有错误或者不当之处,还望各位大神批评指正. 问题描 ...
最新文章
- 敲代码、作诗、写论文无所不能!史上最大AI模型GPT-3强势霸榜Github
- 使用MySQL的geometry类型处理经纬度距离问题
- 在DWR中实现直接获取一个JAVA类的返回值的两种方法
- 如何设置listview每个item高度
- virtualbox安装centos7使用nat+hostonly的网络模式
- 13. PHP 数组
- _stdcall函数调用约定详解
- 《深入解析windows操作系统第6版下册》第10章:内存管理(第三部分译文与图片)...
- 怎么制作鸿蒙系统启动盘,开物成务,鸿蒙操作系统全景解构
- 怎么在苹果手机上进行时间管理?
- 2023年 ZZU ACM 招新赛暨选拔赛题解
- Windows11创建删除账户以及用户权限的相关问题
- 5G NR协议栈及功能2 - MAC RLC PDCP SDAP
- 160809219 徐挺峰 实验2选择结构程序设计
- 2010水瓶座年运势
- Unity地图分割组合时出现接缝的处理办法
- 争创福建省青年文明号
- 科大讯飞和Tizen-TTS语音合成引擎
- [SDOI2009]学校食堂
- 【我要我的音乐】让我们红尘作伴活得潇潇洒洒 轰轰烈烈把握青春年华