这样可以吧

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

zcz大

2018-07-11 17:20

#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;

}


写回答 关注

2回答

  • 慕粉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吗?

    zcz大

    if里面判断条件 你可以试试1月份

    2018-07-12 14:43:41

    共 1 条回复 >

C语言入门

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

926215 学习 · 20797 问题

查看课程

相似问题