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

我这个代码有什么问题吗 麻烦麻烦 解答解答!!!!!

#include <stdio.h>




int main() 







    int a,b,c,d,e,f,g,h,i,j,k,l,sum,i;sum=0,i=0,a=31,c=31,d=30,e=31,f=30,g=31.h=31,i=30,j=31,k=30,l=31;/* 定义需要计算的日期 */




    int year = 2008;




    int month = 8;




    int day = 8;




    /*




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




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




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




     */




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




    b=29;




    else b=28;




    switch(month)




    {

        case 12:sum=sum=a+b+c+d+e+f+g+h+i+j+k;break;


        case 11:sum=a+b+c+d+e+f+g+h+i+j;break;


        case 10:sum=a+b+c+d+e+f+g+h+i;break;


        case 9:sum=a+b+c+d+e+f+g+h;break;


        case 8:sum=a+b+c+d+e+f+g;break;


        case 7:sum=a+b+c+d+e+f;break;


        case 6:sum=a+b+c+d+e;break;


        case 5:sum=a+b+c+d;break;


        case 4:sum=a+b+c;break;


        case 3:sum=a+b;break;


        case 2:sum=a;break;


        case 1:sum=0;break;


    }




    i=sum+day;




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


    return 0;


提问者:qq_单纯永远_0 2018-06-11 08:14

个回答

  • NZJA
    2018-06-11 13:23:50
    已采纳

    1. if语句少了一个右括号

    2. if语句后面不须加分号

    3. 你的main函数最后没加花括号

  • qq_单纯永远_0
    2018-07-14 11:21:58

    但是改正后还是运行不了的呢?


    麻烦大佬在帮忙解答一下,超级谢谢!

    #include <stdio.h>

    int main() 


        int a,b,c,d,e,f,g,h,i,j,k,l,sum,i;sum=0,i=0,a=31,c=31,d=30,e=31,f=30,g=31.h=31,i=30,j=31,k=30,l=31;/* 定义需要计算的日期 */



        int year = 2008;



        int month = 8;



        int day = 8;


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

        b=29;

        else b=28;

        switch(month)

        {


            case 12:sum=sum=a+b+c+d+e+f+g+h+i+j+k;break;




            case 11:sum=a+b+c+d+e+f+g+h+i+j;break;




            case 10:sum=a+b+c+d+e+f+g+h+i;break;




            case 9:sum=a+b+c+d+e+f+g+h;break;




            case 8:sum=a+b+c+d+e+f+g;break;




            case 7:sum=a+b+c+d+e+f;break;




            case 6:sum=a+b+c+d+e;break;




            case 5:sum=a+b+c+d;break;




            case 4:sum=a+b+c;break;




            case 3:sum=a+b;break;




            case 2:sum=a;break;




            case 1:sum=0;break;




        }


        i=sum+day;


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


        return 0;

    }