为了账号安全,请及时绑定邮箱和手机立即绑定

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

#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 回答

https://img1.sycdn.imooc.com//5b9db80100019c9201630123.jpg

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

0 回复 有任何疑惑可以回复我~
#1

小帅f

还有就是你的case后的date语句也不对,daye应该是前n月份的和
2018-09-16 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926206    人
  • 解答问题       20797    个

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

进入课程

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信