问答详情
源自:4-17 switch与if语句的应用

这样可以吧

#include <stdio.h>

int main() 

{

    int m,d,y,sum;

    y=2008;

    m=8;

    d=8;

    sum=0;

    if(y%4==0)

    {

    switch(m-1)

    {

    case 12 :sum+=31;

    case 11 :sum+=30;

    case 10 :sum+=31;

    case 9 :sum+=30;

    case 8 :sum+=31;

    case 7 :sum+=31;

    case 6 :sum+=30;

    case 5 :sum+=31;

    case 4 :sum+=30;

    case 3 :sum+=31;

    case 2 :sum+=29;

    case 1 :sum+=31;

    break;

}

sum+=d;

printf("%d",sum);

}

else

{

switch(m-1)

    {

    case 12 :sum+=31;

    case 11 :sum+=30;

    case 10 :sum+=31;

    case 9 :sum+=30;

    case 8 :sum+=31;

    case 7 :sum+=31;

    case 6 :sum+=30;

    case 5 :sum+=31;

    case 4 :sum+=30;

    case 3 :sum+=31;

    case 2 :sum+=28;

    case 1 :sum+=31;

    break;

}

sum+=d;

printf("%d",sum);

}

    return 0;

}


提问者:zcz大 2018-07-11 17:20

个回答

  • 慕粉3804702
    2018-07-12 17:39:22
    已采纳

      if(y%4==0&&y%100!=0||y%400==0)这才是瑞年的判断条件,case 12 不需要一年只有12个月

  • 慕粉3804702
    2018-07-11 19:01:05

    你这瑞年判断条件都没全,m-1也错了,要是一月份你m-1=0;你有case 0吗?