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

请问哪里出错

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

请问哪里出错


正在回答

2 回答

case8和case6后面少了break;

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

1)score=(int)score/10; 应该写成 score=score/10; 因为score本身是int就算有小数点也只能得到整数

2)您忘了放break在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;
}


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

举报

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

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

进入课程

请问哪里出错

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