请大佬指教一下,哪有问题

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

IMYSA

2018-09-15 21:37

#include <stdio.h>
int main()
{
    /* 定义需要计算的日期 */
    int year = 2008;
    int month = 8;
    int day = 8;
    switch(month)
    {
   
    int date=0;
    int j;
    case 12:date+=30;
    case 11:date+=31;
    case 10:date+=30;
    case 9:date+=31;
    case 8:date+=31;
    case 7:date+=30;
    case 6:date+=31;
    case 5:date+=30;
    case 4:date+=31;
    case 3:date+=29;
    case 2:date+=30;
    case 1:date-=1;break;
       
    }
    if((year%4==0&&year%100!=0)||year%400==0)
   
   
        j=0;
    else
       j=1;
         date=date+j+day;
        printf("2008年8月8日是本年的第%d天",date);


 return 0;
}


写回答 关注

1回答

  • 小帅f
    2018-09-16 09:56:29

    https://img.mukewang.com/5b9db80100019c9201630123.jpg

    将date,j定义到switch外面,因为switch是直接跳转,不执行这两句

    小帅f

    还有就是你的case后的date语句也不对,daye应该是前n月份的和

    2018-09-16 09:58:57

    共 1 条回复 >

C语言入门

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

926206 学习 · 20797 问题

查看课程

相似问题