结果为啥是217?

来源:4-17 switch与if语句的应用

qq_慕标5409091

2019-08-02 19:57

#include <stdio.h>
int main()
{
    int year = 2008;
    int month = 8;0<month<=12;
    int day = 8;
    int cen;
        year=year%4;
    if (year==0)
    {day+=29 ;
    }
    else
    {day+=28;
    }
    for( month=month-1;month>=1 ; month--)
    {if (month==4||6||9||11)
        {cen=2;
        }
     else
        {cen=1;
        }
   
       
     if (month==2)
        {continue;
        }
   
            switch (cen)
                {case 1:
                day+=31;
                break;
                 case 2:
                day+=30;
                break;
                }
    }   

    printf ("2008年8月8日是该年的第%d天" , day);
   return 0;
}


写回答 关注

2回答

  • 小小疾飞
    2019-08-02 22:09:41
    已采纳

    #include <stdio.h>

    int main() 

        int year = 2008;

        int month = 8;

        int day = 8;

        int cen;

        for( int i=1;i<month ; i++)

        {

    if (i==4||i==6||i==9||i==11)

            {

    cen=2;

            }

    else if(i==2)

    {

    cen=3;

    }

    else

    {

    cen=1;

            }

    switch (cen)

    {

    case 1:

    day+=31;

    break;

    case 2:

    day+=30;

    break;

    case 3:

    day+=28;

    break;

    }

    }

    if(((year%4==0&&year%100!=0)||year%400==0)&&month>=3)

    day+=1;

        printf ("2008年8月8日是该年的第%d天", day);

       return 0;

    }


  • 小小疾飞
    2019-08-02 21:35:01

    你这个代码太奇怪了。

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926210 学习 · 20797 问题

查看课程

相似问题