打鱼还是晒网问题

这篇具有很好参考价值的文章主要介绍了打鱼还是晒网问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、问题描述

一个渔夫从1990年1月1日起开始“三天打鱼两天晒网”,问这人在以后的某一天是打鱼还是晒网

二、设计思路:
1:要求出总天数;
2:考虑到闰年和平年的二月天数不同;
3:打鱼还是晒网主要是找一个周期,明显为5,对5求余找余数;
 
 
三、程序流程图
打鱼还是晒网问题
 
四、代码实现
#include<stdio.h>
typedef struct date//定义一个时间类的结构体
    {
        int year;
        int month;
        int day;    
    }Date;

int runYear(int b)//写一个判断润年的函数
{
    if((b%400==0)||(b%100!=0&&b%4==0))
    {
        return 1;//是闰年则返回真值1
    }
    else return 0;//不是闰年则返回0
}
int coutday(Date a)//写一个计算总天数的函数
{
    int permonth[13]={0,31,28,31,30,31,30,31,31,30,31,30};//初始化当闰年时候的月份天数
    //特意设置13个的长度,为了将数组名月月份相对应
    int year;//定义一个年份中间变量
    int i;
    int totalday=0;//定义并初始化总天数
    for(year=1990;year<a.year;year++)//利用年份的循环求出指定年份与1990年的天数累加和
    {
        if(runYear(year))//条件判断,当该年为闰年
        {
            totalday=totalday+366;//则总天数加上366天
        }
        else totalday=totalday+365;//否则总天数加上365天
        
    }
    if(runYear(a.year))//这里做到了修改二月的天数,如果为闰年,则2月份为29天
    {
        permonth[2]++;
    }
    for(i=0;i<a.month;i++)//把指定日期前的月份加起来,指定日期所在月份不足一个月,不能加,跳出循环
    {
        totalday+=permonth[i];
        
    }
    totalday+=a.day;//把指定日期不足一个月的天数,也加进总天数
    return totalday;//返回总天数的值,等待调用
}

int main()
{    
    Date today;//初始化一个名为today的结构体对象
    int totalday;
    int result;
    printf("请输入年月日,如1999 1 31\n");//提示用户输入,一定要有
    scanf("%d%d%d",&today.year,&today.month,&today.day);//结构体以圆点的形式访问地址
    totalday=coutday(today);//函数声明
    result=totalday%5;//三天打鱼两天晒网,则周期为5天,总天数对5求余,若结果为1,2,3则打鱼,
    if(result>0&&result<4)
    {
        printf("今天打鱼");
    }
    else printf("今天晒网");
    return 0;
}

打鱼还是晒网问题

 文章来源地址https://www.toymoban.com/news/detail-412533.html

打鱼还是晒网问题

 

五、收获
1:结构体来定义多个变量比较好操作;
2:从年,月,日逐层去剥的思路,先加年份,再加月份,再加日
3,找周期,求余数来判断打鱼还是晒网

到了这里,关于打鱼还是晒网问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Bard:一个可以描述图像的人工智能

    Bard 是一个大型语言模型,可以对各种提示和问题进行交流和生成类似人类的文本。它接受了大量的文字和代码训练,可以生成文本、翻译语言、编写不同类型的创意内容,并以信息丰富的方式回答你的问题。 Bard 还可以识别图像。它可以识别图像中的对象、场景和人物。它

    2024年02月17日
    浏览(45)
  • GreatSQL一个关于主从复制的限制描述与规避

    分享一个在项目运维中遇到的一个主从复制限制的一个坑,项目的架构为主集群+灾备集群,每个集群为一主两从模式。主集群到灾备集群的同步为主从复制的方式,根据业务需求灾备集群需要忽略系统库跟某些配置表,所以才会触发此限制,而这个限制如果我们之前没有遇到

    2024年02月08日
    浏览(37)
  • 自己搭一个离线的文本描述生成图片系统

    二话不说先上效果图:(附带代码和模型资源文件)  让它画一个超级汽车在海边。。  近期百度推出了文言一心, 一个能回答问题,能根据文字描述绘制图片的服务,前期可能不太完善出现了一些失误,不过这个idea还是相当不错的   这个东西挺好哈,作为文学创作,生成

    2023年04月08日
    浏览(34)
  • 【问题描述】读入一个正整数n(1<=n<=6),再读入n 阶矩阵a,计算该矩阵除副对角线、最后一列和最后一行以外的所有元素之和(副对角线为从矩阵的右上角至左下角的连线)。

    输入形式】 从键盘输入一个正整数n和n阶矩阵。 【输入输出样例1】(下划线部分表示输入) Input n:4 Input array: 2 3 4 1 5 6 1 1 7 1 8 1 1 1 1 1 sum =35 【样例说明】 输入提示符后要加一个空格。例如Input n: ,其中:后要加一个且只能一个空格。 英文字母区分大小写。必须严格按样例输

    2023年04月25日
    浏览(38)
  • MySQL一个关于derived table的bug描述与规避

    MySQL对derived table的优化处理与使用限制 同事遇到一个有意思的语句,说一条SQL在MySQL8.0.25版本运行出的结果明显与给定的where条件不符,而在8.0.26版本上是正常的,语句上加了一个无关的用户变量后在8.0.25版本上结果才是正确的,想不通这是怎么回事,这么有意思的事情自然

    2024年02月09日
    浏览(35)
  • js判断一个链接是图片还是视频

    要判断一个链接是图片还是视频,可以通过链接的文件扩展名来进行判断。常见的图片文件扩展名包括 .jpg 、 .jpeg 、 .png 、 .gif 等,而常见的视频文件扩展名包括 .mp4 、 .avi 、 .mov 、 .wmv 等。 你可以使用JavaScript中的字符串操作方法来提取链接的文件扩展名,并进行判断。以

    2024年02月05日
    浏览(46)
  • 某软件的一个模块的需求规格说明书中描述【软件测试题目】

    某软件的一个模块的需求规格说明书中描述 (1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2% (2)非年薪制员工:严重过失,扣除当月薪资的8%;过失,扣除当月薪资的4% (1)分析原因及结果 原因 c1:年薪制员工 c2:非年薪制员工 c3:过失 c4:严重过失

    2024年02月08日
    浏览(49)
  • 你更喜欢哪一个:VueJS 还是 ReactJS?

    观点列表: 1、如果你想在 HTML 中使用 JS,请使用 Vue; 如果你想在 JS 中使用 HTML,请使用 React。 当然,如果您希望在 JS 中使用 HTML,请将 Vue 与 JSX 结合使用。 2、Svelte:我喜欢它,对我来说是完美的 VueJS:比 React 好,但不像 Svelte ReactJS:它被广泛使用,所以学习React是必要

    2024年02月11日
    浏览(40)
  • 判断一个dll/exe是32位还是64位

    通过记事本判断(可判断C++或者C#) 64位、将dll用记事本打开,可以看到一堆乱码,但是找到乱码行的第一个PE,如果后面是d?则为64位 32位、将dll用记事本打开,可以看到一堆乱码,但是找到乱码行的第一个PE,如果后面是L则为32位,如下图;

    2024年02月21日
    浏览(40)
  • [n00bzCTF 2023] CPR 最后还是差一个

    给了java的加密原码,AES加密,有key 虽然不怎么熟java,但拿原来的程序稍改一下作个解密还是可以的。然后一运行就OK了, 一个有远端的猜flag游戏,每个字符可以猜3次,返回数字左移16位后模flag字符的结果,这些数字选择不好就会有取模后相同的,经过几次猜测得到 1,2,

    2024年02月08日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包