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

switch后面没有条件,怎么判断的

switch后面没有条件,怎么判断的


正在回答

5 回答

#include <stdio.h>

int main() 

{

    int score = 87;  

    score/=10;

    switch(score)

    {

        case 10:printf("等级A");break;

        case  9:printf("等级A");break;

        case  8:printf("等级B");break;              

        case  7:printf("等级C");break;

        case  6:printf("等级C");break;               

        default:printf("等级D");break;    

    }

    return 0;

}

90<=分数<=100 ,等级为A。已知最高分为100.

int score = 87;  整形数变量score被赋值应在0~100之间。

score/=10;    score为整形数除以十舍弃小数点及小数点以后数字。score = 8 被赋值8。

switch(score)  理解为  switch(score  8)

case  8:printf("等级B");  对应输出 等级B ,并 break;  结束循环。

如果不在几个选项,即(  case 10:   case  9:……8:……7:……6:)中。那么输出default:printf("等级D");break; 

在switch语句中, switch ,break  ,default。应同时出现。所以switch不是用判断结束的,是用break分号结束的。

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

我改名字了

另外 case 10:case 9:case 8:case 7: case 6:default: 位置可以打乱。 虽然case 10:可以后面为空。但位置不可改变。即:为100分时,case 10:无输出,无结束循环语句break; ,那么执行他下方的case 9:。如case 9:与case 6:位置对调,那么执行case 6:。 希望不光对你的问题有帮助,也对你的本节课有帮助。
2016-08-14 回复 有任何疑惑可以回复我~

在开始先把score配置好

#include <stdio.h>

int main() 

{

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

    score = score/10;//此处为提取score的十位数

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

switch根据switch()括号中的常量在case中匹配啊

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

不执行swith

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

switch中的值与case中给定的值相比较,如果和其中之一相同,则执行该case后面的语句。

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

举报

0/150
提交
取消

switch后面没有条件,怎么判断的

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