请问这样写可以吗?

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

慕斯卡2111790

2016-07-27 17:07

#include <stdio.h>

int main() 

    /* 定义需要计算的日期 */

    int year = 2008;

    int month = 8;

    int day = 8;

    /*

     * 请使用switch语句,if...else语句完成本题

     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”

     * 小编还是希望大家独立完成哦~

     */

    int sum, feb;

    if(year % 400 = 0 || (year % 100 !=0 && year % 4 ==0))

        feb = 29;

    else

        feb = 28;

    switch(month)

    {

        case 1:sum = 0;break;

        case 2:sum = 31;break;

        case 3:sum = 31 + feb;break;

        case 4:sum = 62 + feb;break;

        case 5:sum = 92 + feb;break;

        case 6:sum = 123 + feb;break;

        case 7:sum = 153 + feb;break;

        case 8:sum = 184 + feb;break;

        case 9:sum = 225 + feb;break;

        case 10:sum = 255 + feb;break;

        case 11:sum = 286 + feb;break;

        case 12:sum = 316 + feb;break;

        default:printf("一年当中只有12个月");break;

    }

    sum += day;

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

    return 0;

}


写回答 关注

1回答

  • 萌粉
    2016-07-27 21:05:13
    已采纳

    可以的,不过你if(year%400==0.....)少写了一个“=”,改过来就对了

    慕斯卡211...

    谢了

    2016-07-28 18:14:16

    共 1 条回复 >

C语言入门

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

926209 学习 · 20797 问题

查看课程

相似问题