这哪有问题啊

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

qq_death_gimKQ6

2018-10-16 20:12

#include <stdio.h>
int main()
{
    /* 定义需要计算的日期 */
    int year = 2008;
    int month = 8;
    int day = 8;
    int sum,i;
   
    /*
     * 请使用switch语句,if...else语句完成本题
     * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
     * 小编还是希望大家独立完成哦~
     */
    if(year%400==0||(year%4==0&&year%100!==0))i=1;
    else i=0;
    switch(month)
    {
        case 3:sum=0;break;
        case 2:sum=31;break;
        case 3:sum=31+28;break;
        case 4:sum=31+28+31;break;
        case 5:sum=31+28+31+30;break;
        case 6:sum=31+28+31+30+31;break;
        case 7:sum=31+28+31+30+31+30;break;
        case 8:sun=31+28+31+30+31+30+31;break;
        case 9:sun=31+28+31+30+31+30+31+31;break;
        case 10:sum=31+28+31+30+31+30+31+31+30;break;
        case 11:sum=31+28+31+30+31+30+31+31+30+31;break;
        case 12:sum=31+28+31+30+31+30+31+31+30+31+30;break;
      
    }
    sum=sum+day;
    if(i==1&&month>1)sum+=1;
    printf("%d年%d月%d日是这年的第几天",year,month,day,sum);
    return 0;

写回答 关注

3回答

  • qq_梁小胖咂_cGIMSZ
    2018-10-18 19:04:47
    已采纳


    int main() 

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

        int year = 2008;

        int month = 8;

        int day = 8;

        int sum,i;

        

        /*

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

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

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

         */

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

    )i=1;

        else 

    i=0;

        switch(month)

        {

            case 1:sum=0;break;

            case 2:sum=31;break;

            case 3:sum=31+28;break;

            case 4:sum=31+28+31;break;

            case 5:sum=31+28+31+30;break;

            case 6:sum=31+28+31+30+31;break;

            case 7:sum=31+28+31+30+31+30;break;

            case 8:sum=31+28+31+30+31+30+31;break;

            case 9:sum=31+28+31+30+31+30+31+31;break;

            case 10:sum=31+28+31+30+31+30+31+31+30;break;

            case 11:sum=31+28+31+30+31+30+31+31+30+31;break;

            case 12:sum=31+28+31+30+31+30+31+31+30+31+30;break;

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

           

        }

        sum = sum+day;

        if(i==1&&month>2)

        sum+=1;

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

        return 0;

    }


  • qq_梁小胖咂_cGIMSZ
    2018-10-18 19:25:12

    注意全角和半角,符号,括号

  • qq_death_gimKQ6
    2018-10-16 20:17:15

    #include <stdio.h>
    int main()
    {
        /* 定义需要计算的日期 */
        int year = 2008;
        int month = 8;
        int day = 8;
        int sum,i;
       
        /*
         * 请使用switch语句,if...else语句完成本题
         * 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
         * 小编还是希望大家独立完成哦~
         */
        if(year%400==0||(year%4==0&&year%100!==0))i=1;
        else i=0;
        switch(month)
        {
            case 1:sum=0;break;
            case 2:sum=31;break;
            case 3:sum=31+28;break;
            case 4:sum=31+28+31;break;
            case 5:sum=31+28+31+30;break;
            case 6:sum=31+28+31+30+31;break;
            case 7:sum=31+28+31+30+31+30;break;
            case 8:sun=31+28+31+30+31+30+31;break;
            case 9:sun=31+28+31+30+31+30+31+31;break;
            case 10:sum=31+28+31+30+31+30+31+31+30;break;
            case 11:sum=31+28+31+30+31+30+31+31+30+31;break;
            case 12:sum=31+28+31+30+31+30+31+31+30+31+30;break;
          
        }
        sum = sum+day;
        if(i == 1&&month>1)
        sum+=1;
        printf("%d年%d月%d日是这年的第几天",year,month,day,sum);
        return 0;

    是这个 刚才那个没发对

    Cover_...

    if(i == 1&&month>1)这个是什么意思

    2018-10-23 11:43:45

    共 1 条回复 >

C语言入门

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

926869 学习 · 21176 问题

查看课程

相似问题