C语言,中国有句俗语:“三天打鱼两天晒网”,某人从1990年1月1日起开始“三天打鱼两天晒网”。问这个人在以后的某一天是在“打鱼”还是在“晒网”?
#include<stdio.h>
long y_tianshu(int y);
int n_tianshu(int y, int n);
int T(int y, int n,int d);
long y_tianshu(int y)//计算当年之前的天数
{
long a=0;
if (y == 1990) a = 0;
else if (y == 1991) a = 365;
else if (y == 1992) a = 365 * 2;
else if (y == 1993) a = 365 * 2 + 366;
else if (y > 1993 && y < 1997)
a = 365 * 2 + 366 + (y - 1993) * 365;
else if (y >= 1997)
a = 365 * 2 + 366 + (y - 1993) * 365 + (y - 1993) / 4;
return a;
}
int n_tianshu(int y, int n)//计算在本年,当月之前的天数
{
int s; int b=0;
for (int a = 1; a <= n - 1; a++)
{
switch (a)//根据月份判断天数
{
case 1:s = 31; break; case 2:s = 28; break;
case 3:s = 31; break; case 4:s = 30; break;
case 5:s = 31; break; case 6:s = 30; break;
case 7:s = 31; break; case 8:s = 31; break;
case 9:s = 30; break; case 10:s = 31; break;
case 11:s = 30; break; case 12:s = 31; break;
}
if (a == 2)//判断闰年2月差异
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
s = 29;
else
s = 28;
}
b = b + s;
}
return b;
}
int T(int y, int n,int d)//判断输入的月份的天数是否正确
{
int s=0;
switch (n)//根据月份判断天数
{
case 1:s = 31; break; case 2:s = 28; break;
case 3:s = 31; break; case 4:s = 30; break;
case 5:s = 31; break; case 6:s = 30; break;
case 7:s = 31; break; case 8:s = 31; break;
case 9:s = 30; break; case 10:s = 31; break;
case 11:s = 30; break; case 12:s = 31; break;
}
if (n == 2)//判断闰年2月差异
{
if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
s = 29;
else
s = 28;
}
if (d <= s) return 0;
else return 1;
}
void main()
{
int y, n, d;
while (1)
{
scanf_s("%d-%d-%d", &y, &n, &d);//输入时间
while (y <= 0 || n <= 0 || d <= 0 || y < 1990||T(y, n, d)||n>12)
{ //控制输入的数据为正,并且在1990之后
//控制相应月份对应所具有的相应天数
printf("input error!please re-input:\n");
scanf_s("%d-%d-%d", &y, &n, &d);
}
long a = y_tianshu(y) + n_tianshu(y, n) + d;
a = a % 5;
if (a <= 3&&a>0) printf("他在打鱼\n");//利用总日子除以5的余数判断
else printf("他在晒网\n");
}
}
C语言,中国有句俗语:“三天打鱼两天晒网”,某人从1990年1月1日起开始“三天打鱼两天晒网”。问这个人在以后的某一天是在“打鱼”还是在“晒网”?的更多相关文章
- 【每日一题】【找到位置返回&升序数组中第K大就是n-K小】2022年1月17日-NC88 寻找第K大
描述有一个整数数组,请你根据快速排序的思路,找出数组中第 k 大的数. 给定一个整数数组 a ,同时给定它的大小n和要找的 k ,请返回第 k 大的数(包括重复的元素,不用去重),保证答案存在. 方法 ...
- C语言学习笔记:15_c语言中的进制操作.c
/* * 15_c语言中的进制操作.c * * Created on: 2015年7月5日 * Author: zhong */ #include <stdio.h> #include & ...
- YTU 2811: 打鱼还是晒网
2811: 打鱼还是晒网 时间限制: 1 Sec 内存限制: 128 MB 提交: 192 解决: 150 题目描述 中国有句俗话"三天打鱼,两天晒网".小王从2000年的1月 ...
- 3道acm简单题(2011):1.判断是否能组成三角形;2.判断打鱼还是晒网;3.判断丑数。
//1.输入三个正整数A.B.C,判断这三个数能不能构成一个三角形.//思路:最小的两边之和是否是大于第三边#include<iostream>#include<algorithm& ...
- c语言中实现从0-1的随机数输出
原文:c语言中实现从0-1的随机数输出 今天晚上同学问了一个巨简单的问题,问我怎么用c语言输出0-1的随机数,可别说,一时之间还想不出来.在写的过程中发现,直接调用random函数还不能实现,用以下方 ...
- C语言中时钟编程
目录 C语言中时钟编程 1. 文章目的 2.基本概念 2.1 UTC时间 2.2 UNIX纪元时间 2.3 格林威治时间 (GMT) 3.时间转换 3.1 asctime函数 3.2 ctime函数 ...
- C语言中一个语句太长用什么换行?
C语言中一个语句太长用什么换行? 5 C语言中一个语句太长用什么换行?比如我有一个printf语句很长很长,问了美观,我不想写在这一行了,要换到下一行,是不是在这行结尾的时候,要用个什么标识来表 ...
- C语言:渔夫打鱼晒网问题
//如果一个渔夫从 2011 年 1 月 1 日开始三天打渔,两天晒网,编程实现当输入 2011 1 月 1 日以后的任意一天,输出该渔夫是在打渔还是在晒网. #include <stdio.h ...
- 在Go语言中记录log:seelog包
前两周调bug调的吐血,虽然解决了但是还是挺浪费时间的.跟同事聊了聊,觉得我们现在项目中的日志记录太少了,导致出了问题不知道怎么下手,还得自己改代码记录日志,然后排查问题.这样如果将来还有bug的话还 ...
- R语言学习笔记1——R语言中的基本对象
R语言,一种自由软件编程语言与操作环境,主要用于统计分析.绘图.数据挖掘.R本来是由来自新西兰奥克兰大学的Ross Ihaka和Robert Gentleman开发(也因此称为R),现在由“R开发核心 ...
随机推荐
- IOS Safari、微信小程序 img或者其他标签元素出现黑边、黑线阴影
这个问题最开始出现在小程序上,然后在社区找到一个一样得案例 案例:https://developers.weixin.qq.com/community/develop/doc/000608420706 ...
- jdk安装自动化
写个在linux环境安装Java的脚本(install_java.sh),只需将jdk上传至/opt目录下,执行脚本即可. #!/bin/bash #author:zhangyl #本安装使用jdk版 ...
- Kali开机启动模式修改
kali Linux安装之后默认启动图形化界面,为了减轻系统负担,可以修改启动进入字符界面. 具体步骤如下: 1.打开引导配置文件 vim /etc/default/grub 2.修改GRUB_CMD ...
- [ABC146E] Rem of Sum is Num
2023-02-27 题目 题目传送门 翻译 翻译 难度&重要性(1~10):4 题目来源 AtCoder 题目算法 数学 解题思路 先对整个序列求前缀和 \(sum_k=\sum_{i=1} ...
- 「AntV」x6 框选添加右键菜单
今天在群里有个小伙伴提出了这么个问题:如何在框选完成后给框选的区域添加一个右键菜单的功能,我看到了这个问题后也是有点懵,心里想着怎么还有这个需求,直接快捷键删除不是更好吗,谁知这位小伙伴也是这么写的, ...
- ABP Framework 7.4 RC 新增功能简介:增强微服务架构支持
ABP Framework 版本号:7.4.0-rc.1 发布时间:2023.8.16 阅读原文:ABP.IO Platform 7.4 RC Has Been Published 翻译:iEricL ...
- AI绘画StableDiffusion实操教程:冰霜旗袍美女
飞书原文链接,获取更多资源:AI绘画StableDiffusion实操教程:冰霜旗袍美女 前几天分享了StableDiffusion的入门到精通教程:AI绘画:Stable Diffusion 终极炼 ...
- 详谈 springboot整合shiro
背景: 上文学习了shrio 基本概念后,本章将进一步的落地实践学习,在springboot中如何去整合shrio,整个过程步骤有个清晰的了解. 利用Shiro进行登录认证主要步骤: 1. 添加依赖: ...
- ATtiny88初体验(七):TWI
ATtiny88初体验(七):TWI TWI模块介绍 ATtiny88的TWI模块兼容Phillips I2C以及SMBus,支持主从模式,支持7bit地址,最大允许128个不同的从机地址.在多主机模 ...
- Springboot多种字段copy工具比较
结论:推荐使用spring自带的copy工具,不能copy的手动set 1.springboot自带的BeanUtils.copyProperties package com.admin; impor ...