问答详情
源自:4-16 分支结构之switch语句

哪里错了啊?向大神求助!

#include <stdio.h>
int main()
{
    int score = 87; //考试分数为87分
    score=score/10;
    switch(score)
    {
        /*想想以下代码为什么用这种方式;
          这种方式的好处?*/
        case 10:
        case 9:
            printf("等级A");
            break;
        case 8:
            printf("等级B");
            break;                //这里是不是缺点什么?           
        case 7:
        case 6:
            printf("等级C");
            break;              //这里是不是缺点什么? 
        default:
            printf("等级D");
            break;   
    }
    return 0;
}

提问者:火空 2015-12-11 08:08

个回答

  • RockenRoll
    2015-12-11 09:26:53
    已采纳

    这个没有问题,估计是编译器的问题

  • 火空
    2015-12-12 15:43:31

    我再试试

  • 流浪_老
    2015-12-11 08:47:48

    http://img.mukewang.com/566a1d2200010ddc06230775.jpg这个在线也能过啊

  • 一毛钱
    2015-12-11 08:43:48

    这个得到的是一个浮点数,你这块是不是写错了  score=score/10; 是不是应该是 score=score%10;或者说 score=(int)(score/10);

  • 火空
    2015-12-11 08:31:47

    这个和我的代码等价啊,运行结果依旧是空白。。。。依然感谢你的解答,么么哒~~

  • 流浪_老
    2015-12-11 08:14:50

    #include <stdio.h>

    int main() 

    {

        int score = 87; //考试分数为87分 

        score/=10;

        switch(score)

        {

            /*想想以下代码为什么用这种方式;

              这种方式的好处?*/

            case 10:

            case 9:

                printf("等级A");

                break;

            case 8:

                printf("等级B");

                   break;             //这里是不是缺点什么?            

            case 7:

            case 6: 

                printf("等级C");

                 break;               //这里是不是缺点什么?  

            default:

                printf("等级D");

                break;    

        }

        return 0;

    }