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

正在回答

2 回答

你写在switch里面跟没有写一样,所以就执行default

0 回复 有任何疑惑可以回复我~
#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;
}

看不懂在问我

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

Ccyd00 提问者

score /= 10; 在这两个代码中位置不同有什么差别呢?
2018-08-03 回复 有任何疑惑可以回复我~
#2

修裾欲溯空 回复 Ccyd00 提问者

你觉得呢,score在条件句外时,switch()里的score是多少?在里面时,switch()里的score又是多少?
2018-08-03 回复 有任何疑惑可以回复我~
#3

总有民女想推朕 回复 Ccyd00 提问者

我感觉是没问题的,你可以在其他编译器上运行一下,我敢保证这两种情况运行结果会是一样的,这只是慕课网这个检测代码的小程序自带的小问题而已,它只会死脑经的检测你第五行是否有score/=10这句话,你把他写到第六行中的switch中它就会报错
2018-08-24 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

请问怎么回事

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