为什么最后没有加1呢?

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

qq_慕工程6323416

2020-02-02 16:43

int year = 2008;

    int month = 8;

    int day = 8;

    int sum, flag;

     switch(month)

    {

    case 1:sum=0;break;

    case 2:sum=31;break;

    case 3:sum=59;break;

    case 4:sum=90;break;

    case 5:sum=120;break;

    case 6:sum=151;break;

    case 7:sum=181;break;

    case 8:sum=212;break;

    case 9:sum=243;break;

    case 10:sum=273;break;

    case 11:sum=304;break;

    case 12:sum=334;break;

    

    sum = sum + day;

    {

    if(year%400 == 0)

    

        flag=1;

    else

        flag=0;

     

       

    if(flag==1&&month>2)

        sum += 1;

    printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);

    return 0;

}    

        


写回答 关注

1回答

  • 慕容7242776
    2020-02-18 16:01:06

    http://img2.mukewang.com/5e4b993800016d8d02280034.jpg你这里条件少了,在以前if else课里举过闰年的例子,应该是if(year%400==0||year%100!=0&&year%4==0)

C语言入门

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

926021 学习 · 20793 问题

查看课程

相似问题