夜雨de街灯 发表于 2016-3-8 10:02:14

我新手看不出错误,大家帮帮忙!

我现在学到分支语句这,看的是小甲鱼旧的教程,以下是他给的作业:
请输入某年某月某日,用于计算这天是这一年的第几天!

{:10_274:}
代码:#include <stdio.h>
void main(void)
{
        int a , b , c , d , e ;
        printf("请输入某年某月某日,用于计算这天是这一年的第几天(日期之间用空格隔开):\n");
        scanf("%d%d%d",&a ,&b ,&c );
//判断是否是闰年:
        if(a%4==0)
        {
                if(a%100==0)
                {
                        if(a%400==0)
                        {
                       
                                e=29;//二月二十九天
                       
                        }else
                        {
                                e=28;       
                        }
                }else
                {               
                        e=29;       
                }
        }else
        {
                e=28;
        }
//计算天数:
        if(b==1 && 1<=c && c<=31)
        {
                d=c;
        }else if(b==2 && 1<=c && c<=e)//判断是否闰年后,确定二月天数的范围最大值e:
        {
                d=c+31;
        }else if(b==3 && 1<=c && c<=31)
        {
                d=c+59;
        }else if(b==4 && 1<=c && c<=30)
        {
                d=c+90;
        }else if(b==5 && 1<=c && c<=31)
        {
                d=c+120;
        }else if(b==6 && 1<=c && c<=30)
        {
                d=c+151;
        }else if(b==7 && 1<=c && c<=31)
        {
                d=c+181;
        }else if(b==8 && 1<=c && c<=31)
        {
                d=c+212;
        }else if(b==9 && 1<=c && c<=30)
        {
                d=c+243;
        }else if(b==10 && 1<=c && c<=31)
        {
                d=c+273;
        }else if(b==11 && 1<=c && c<=30)
        {
                d=c+304;
        }else if(b==12 && 1<=c && c<=31)
        {
                d=c+334;
        }else
        {
                printf("请输入正确的日期\n");
        }
        //判断是否要在大于三月的日期加一:
        if(e==29)
        {
                if(b>=3)
                {
                        d+=1;
                }else
                {
                        d;
                }
        }else
        {
                d;
        }
        printf("一共%d天!\n",d);
}


可是编译不了......{:10_266:}
以下是错误信息:

人造人 发表于 2016-3-8 10:23:22

看看这个吧,多用百度,你遇到的其他人估计也遇到过,而且很有可能已经解决了
http://tieba.baidu.com/p/569403576

夜雨de街灯 发表于 2016-3-8 11:24:25

人造人 发表于 2016-3-8 10:23
看看这个吧,多用百度,你遇到的其他人估计也遇到过,而且很有可能已经解决了
http://tieba.baidu.com/p/5 ...

我以为是代码的错误,所以没百度,百度也不一定找出代码的错误,所以我才在论坛问,原来是程序问题?{:10_262:}

笨小黑 发表于 2016-3-8 13:24:12

夜雨de街灯 发表于 2016-3-8 11:24
我以为是代码的错误,所以没百度,百度也不一定找出代码的错误,所以我才在论坛问,原来是程序问题?{:10 ...

我如果有错了,就直接百度的在线翻译,把一些英文翻译了,就大概明白是什么错了。如果翻译解决不了,就百度搜一下,这样子还不行我才论坛提问。
页: [1]
查看完整版本: 我新手看不出错误,大家帮帮忙!