鱼C论坛

 找回密码
 立即注册
查看: 1784|回复: 3

[已解决]这段代码哪里错了

[复制链接]
发表于 2017-12-14 20:41:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 御笔剑客 于 2017-12-14 20:45 编辑

题目是:从19990年1月1日开始,某人三天打鱼两天晒网,给出一个年份,判断该人是打鱼还是晒网
#include <stdio.h>
int countday(struct Date);
struct Date{
int year;
int month;
int day}date;
int main()
{
    int i,sumday;
    printf("%请输入今天的日期(如1999 1 1):\n");
    scanf("%d%d%d",date.year,date.month,date.day);
    sumday=countday(date);
    if(0<sumday%5||sumday%5<4) printf("此人今天正在晒网\n");
    else printf("此人今天正在打鱼\n");

        return 0;
}

int countday(struct Date date)
{
    int sumday=0,i;
    int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    for(i=1990;i<=date.year;i++)
    {
    if((i%100!=0&&i%4==0)||i%400==0)
        sumday+=366;
    else sumday+=365;
    }
    if((date.year%100!=0&&date.year%4==0)||date.year%400==0)
        month[2]++;
    for(i=1;i<=date.month;i++)
        sumday+=month[i];
    sumday+=date.day;
    return sumday;

}
最佳答案
2017-12-14 21:12:08
你的这个month数组与全局变量 定义重了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-12-14 20:50:39 | 显示全部楼层
#include <stdio.h>

struct Date{
int year;
int month;
int day;
}date;
int main()
{
    int i,sumday;
    printf("%请输入今天的日期(如1999 1 1):\n");
    scanf("%d%d%d",&date.year,&date.month,&date.day);
    sumday=countday(date);
    if(0<sumday%5||sumday%5<4) printf("此人今天正在晒网\n");
    else printf("此人今天正在打鱼\n");

        return 0;
}

int countday(date)
{
    int sumday=0,i;
    int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
    for(i=1990;i<=date.year;i++)
    {
    if((i%100!=0&&i%4==0)||i%400==0)
        sumday+=366;
    else sumday+=365;
    }
    if((date.year%100!=0&&date.year%4==0)||date.year%400==0)
        month[2]++;
    for(i=1;i<=date.month;i++)
        sumday+=month[i];
    sumday+=date.day;
    return sumday;

}
目前就看出这,我也是新手,sorry
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-14 21:12:08 | 显示全部楼层    本楼为最佳答案   
你的这个month数组与全局变量 定义重了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-12-14 22:09:42 From FishC Mobile | 显示全部楼层
当遇到闰年的时候你将第二月自增1,遇到几个闰年就递增了几次
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-29 01:43

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表