问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言编程。某人从某年1月1日开始,三天打鱼,两天晒网。。从键盘输入x年x月x日,问这个人在该年的

发布网友 发布时间:2022-04-25 04:02

我来回答

4个回答

热心网友 时间:2023-10-24 17:11

你好!

    

程序发上来,你看看吧,满意请采纳

/*
如果一个渔夫从2011年1月1日开始每三天打一次渔,两天晒一次网,
编程实现当输入2011年1月1日,以后的任意一天,输出该渔夫是在打渔还是晒网。
*/
#include<stdio.h>
int leap(int a)               //自定义函数leap,判断输入的年份是否为闰年
{
    if(a%4==0&&a%100!=0||a%400==0)
        return 1;
    else
        return 0;
}
int number(int y,int m,int d)
{
    int sum=0,i,j;
    int a[12]={31,29,31,30,31,30,31,31,30,31,30,31};
    int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    
if(leap(y)==1)
    { 
    for(i=0;i<=m-1;i++)
            sum+=a[i];
    } 
    else
    { 
    for(i=0;i<=m-1;i++)
            sum+=b[i];
    }

for(j=2011;j<y;j++)
                if(leap(j)==1)
                sum+=366;      //2011年到输入的年份是闰年加366
                else
                sum+=365;      //2011年到输入的年份不是闰年加365
            sum+=d;
            return sum;

}
int main()
{
    int y,m,d,n;
     printf("请输入,年 月 日:\n");
     scanf("%d%d%d",&y,&m,&d);
     n=number(y,m,d);

     if((n%5)<4&&(n%5)>0)      //当余数是1,2,3时说明在打渔,否则在晒网
        printf("%d年%d月%d日 打渔\n",y,m,d);
     else
        printf("%d年%d月%d日 晒网\n",y,m,d);
}

热心网友 时间:2023-10-24 17:12

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <math.h>

int main ( int argc, char **argv )
{
        char iBgnYear[5];
        char iBgnMon[3];
        char iBgnDay[3];
        char iEndYear[5];
        char iEndMon[3];
        char iEndDay[3];

        char iBgnDate[9];
        char iEndDate[9];

        int  iDays;
        int  tDay;

        struct tm iBgnTm;
        struct tm iEndTm;

        memset( iBgnDate, 0x00, sizeof( iBgnDate ));
        memset( iEndDate, 0x00, sizeof( iEndDate ));

        fprintf( stdout, "假设捕鱼者从[20140101]开始3天捕鱼, 2天晒网\n" );
        fprintf( stdout, "请输入您要查看捕鱼者在做甚的日期:" );
        scanf( "%s", iEndDate );

        memcpy( iBgnDate, "20140101", 8 );

        memset( iBgnYear, 0x00, sizeof( iBgnYear ));
        memset( iBgnMon,  0x00, sizeof( iBgnMon ));
        memset( iBgnDay,  0x00, sizeof( iBgnDay ));
        memset( iEndYear, 0x00, sizeof( iEndYear ));
        memset( iEndMon,  0x00, sizeof( iEndMon ));
        memset( iEndDay,  0x00, sizeof( iEndDay ));

        memcpy( iBgnYear, "2014", 4 );
        memcpy( iBgnMon,  "01",   2 );
        memcpy( iBgnDay,  "01",   2 );
        memcpy( iEndYear, &iEndDate[0], 4 );
        memcpy( iEndMon,  &iEndDate[4], 2 );
        memcpy( iEndDay,  &iEndDate[6], 2 );

        memset( &iBgnTm, 0x00, sizeof( iBgnTm ));
        memset( &iEndTm, 0x00, sizeof( iEndTm ));

        iBgnTm.tm_year = atoi( iBgnYear ) - 1900;
        iBgnTm.tm_mon  = atoi( iBgnMon ) - 1;
        iBgnTm.tm_mday = atoi( iBgnDay );
        iEndTm.tm_year = atoi( iEndYear ) - 1900;
        iEndTm.tm_mon  = atoi( iEndMon ) - 1;
        iEndTm.tm_mday = atoi( iEndDay );

        iDays = (int)((mktime( &iEndTm ) - mktime( &iBgnTm )) / (24 * 60 * 60)) + 1;
        tDay  = iDays % 5;

        if ( iDays <= 5 )
        {
                if ( iDays <= 3 )  fprintf( stdout, "捕鱼者在[%s]这天正在捕鱼\n", iEndDate );
                else  fprintf( stdout, "捕鱼者在[%s]这天正在晒网\n", iEndDate );
        }
        else
        {
                if ( tDay <= 3 )  fprintf( stdout, "捕鱼者在[%s]这天正在捕鱼\n", iEndDate );
                else  fprintf( stdout, "捕鱼者在[%s]这天正在晒网\n", iEndDate );
        }

        return 0;
}

代码及测试结果如上,纯手打!

热心网友 时间:2023-10-24 17:12

include<stdio.h>

int ruinian(int nian)
{
if((nian%4==0)&&(nian%400)!=0) { return 1; }
else
{ if(nian%400==0) return 1;
else return 0; }
}
main()
{
int nian ,yue ,ri,i;
int cnm=0,cnd;
printf("年月日!");
scanf("%d,%d,%d",&nian,&yue,&ri );
cnd=ruinian();
if(cnd )
{
for(i=1;i<nian+1;i++)
{
switch(i)
{
case 1: cnm+=31;break;
case 3: cnm+=31;break;
case 5: cnm+=31;break;
case 7: cnm+=31;break;
case 8: cnm+=31;break;
case 10: cnm+=31;break;
case 12: cnm+=31;break;
case 2:cnm+=29;break;
default: cnm+=30;
}
}
cnm+=ri;
else
{
switch(i)
{
case 1: cnm+=31;break;
case 3: cnm+=31;break;
case 5: cnm+=31;break;
case 7: cnm+=31;break;
case 8: cnm+=31;break;
case 10: cnm+=31;break;
case 12: cnm+=31;break;
case 2:cnm+=28;break;
default: cnm+=30;
}
cnm+=ri;
}
if((cnm%5)<3)
printf("打渔\n");
else
printf("晒网\n");
}

热心网友 时间:2023-10-24 17:13

first:某年1月1日
second:从键盘输入x年x月x日
int a = difftime(second,first);
int b = a%(5*86400);
if(b>(3*86400))
晒网
else
打鱼
没学过。没用过C语言。献丑了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
华为freebuds4i切歌怎么操作_华为freebuds4i怎么切歌 华为freebuds pro切歌方法_华为freebuds pro怎么切歌 华为耳机怎么切换下一曲 欧美电影,好像是宠物有一个世界,宠物会想办法跟主人的灵魂互换占据 ...的名字,欧洲中世纪,一个王子的继母把他的灵魂和狗的灵魂互换了... 问一部外国电影的名字 剧情记得不大清楚l了 是前几年的片子 灵魂互换的... HUAWEI 华为 AGS2-W09 10.1英寸平板电脑 (香槟金、64GB+4GB、WiFi版... 诛仙3百法和千法差距大吗 微信怎么解除应用授权登录 授权应用删除方法 微信怎么解除应用授权登录授权应用删除方法 39层高的东北向的楼房买8楼的好不好?为什么好或不好? 电梯房总计39层,剩下8楼和37楼,哪层相对好些? 哈尔滨的房子,总高39层,想买38层,东南向的,客厅是东,卧室是南,没有挡光的建筑,优缺点是什么 39层买4楼好吗,会不会太低了 电梯房39选5楼好不好 楼高39层的话10层好不好 39楼电梯房住哪层最好 总楼层47层的房子买了39层的,买完就后悔了,从来没想过住这么高,大家都来说说住高层的感觉吧 43层高层住宅买第39层好吗 39楼的楼层好吗?数字吉利吗? 共39层楼,住3楼好,还是39层好 高层三十九层楼买那层最好 龙船花的作用都有什么? 房子40层34层与39层哪个好 总共41楼是32楼好还是39楼好? 总层41层选了39楼,好吗?网上都说住高了不好,真是这样吗? 总层41层,只剩9楼、38楼还有39楼,选哪个好? 靠马路的高层楼房住在39层好吗?急!!! 总层41层选9楼还是39楼?前后左右都是33及以上高层? 手机上怎么打? 求安利游戏!类似于部落探险那种,收集泉水树木啥的这种经营养成类的,好玩点的~ 高山族风俗习惯是什么? 请教一下什么是不安全用电行为? 开设网络赌局判多少年 说说喜欢篱笆的理由 人类星球 海洋片,急求观后感啊 网游都是以网页形式的吗?如果不是有什么 圆弧面用什么设备磨 水利 电力 请问打磨弧面的东西要用怎样的打磨工具啊? 安和桥的结构特点和历史成就是什么 锉削外圆弧面时,采用对着圆弧面锉胡方法适用于什么场合? 不锈钢圆柱端面的内凹圆弧面怎么加工 半坡居民住的房子是哪种? 用砂纸该怎么打磨,抛光弧面 河姆渡人和半坡人在生产生活上有什么相似之处 如何学习操作圆弧抛光机? 挫削凸弧面和凹弧面要选什么锉刀? 电脑是老师的作文!! 3月12日 围棋子的圆弧面是怎样磨制出来的