C语言算法:三天打鱼两天晒网的C实践与闰年计算
49 浏览量
更新于2024-08-03
1
收藏 808KB DOCX 举报
本文档是一篇关于C语言编程的实践教程,主题是通过"三天打鱼两天晒网"的民间谚语,设计一个算法来解决一个实际问题:从1990年1月1日起,某人按照打鱼两天、晒网三天的周期,如何确定在任意给定日期他是处于打鱼还是晒网状态。以下是文档的主要知识点概述:
1. **问题描述**:问题基于中国的传统说法,模拟一个人的日常生活节奏,即每五天交替进行打鱼和晒网。需要编写程序来计算从1990年1月1日开始,到给定日期为止,该人经历了多少个完整的五天周期,从而判断他在指定日期是处于打鱼还是晒网。
2. **题目分析**:
- **步骤1**:计算总天数,包括1990年之前的年份和指定年份的每一天。
- **步骤2**:用总天数除以5,得到周期数,余数表示剩余的天数,决定打鱼或晒网。
- **步骤3**:判断闰年,C语言中通过求余运算符`%`来判断,闰年条件为能被4整除但不能被100整除,或能被400整除。
3. **算法设计**:
- 使用循环结构,遍历年份和月份,计算总天数。
- 利用数组`perMonth`存储每个月的天数,包括闰年2月多出的一天。
- 设计一个辅助函数`intrunYear()`用于判断是否为闰年,以便正确处理天数。
4. **流程框架**:
- 初始化`totalDay`变量,先计算1990年之前所有年份的总天数,加上指定年份中到指定日期的天数。
- 在循环中,根据闰年规则调整天数累加,最后判断总天数除以5的余数,确定打鱼还是晒网。
5. **代码实现**:这部分内容涉及具体的C语言代码编写,包括循环结构、闰年判断逻辑和累加月份天数的代码。这部分是实际编程任务的关键部分,但为了保持摘要的简洁性,未在此处详述。
这篇文章为读者提供了一个用C语言解决实际问题的实例,通过算法分析和编码实践,帮助理解C语言中的循环、闰年判断以及日期计算等基础知识。
2024-08-31 上传
341 浏览量
402 浏览量
315 浏览量
339 浏览量
148 浏览量
xiaoshun007~
- 粉丝: 4111
- 资源: 3118
最新资源
- CVS与配置管理.ppt
- linux命令大全~~~~~~
- 软件测试规范使你更加了解软件测试的规则
- sql语法帮助大全sql
- CISCO IOS名称意义详解
- Measurement technique for characterizing memory effects in RF power amplifiers
- Eclipse中文教程
- Microsoft Introducing Silverlight 2.0
- MyEclipse6 中文教程
- Java水晶报表教程
- Linux菜鸟过关(赠给初学者)
- Test.Driven.TDD.and.Acceptance.TDD.for.Java.Developers
- 编写高效简洁的C语言代码
- AIX 5L 安装手册
- Linux下的shell与make
- C#.Net函数方法集