switch语句是什么


本文摘自PHP中文网,作者coldplay.xixi,侵删。

switch语句在一些计算机语言中是保留字,其作用大多情况下是进行判断选择,以C语言来说,switch【开关语句】常和case break default一起使用。

本文操作环境:Windows7系统,Dell G3电脑。

switch语句的语法如下(switch,case,break和default是关键字):

1

2

3

4

5

6

7

8

9

10

switch ( 变量表达式 )

{

    case 常量1 :语句;break;

    case 常量2 :语句;break;

    case 常量3 :语句;break;

    ...

    case 常量n:语句;break;

      

    default :语句;break;

}

当变量表达式所表达的量与其中一个case语句中的常量相符时,就执行此case语句后面的语句,并依次下去执行后面所有case语句中的语句,除非遇到break;语句跳出switch语句为止。如果变量表达式的量与所有case语句的常量都不相符,就执行default语句中的语句。

遵守switch语句规则

switch语句非常有用,但在使用时必须谨慎。所写的任何switch语句都必须遵循以下规则:

  • 只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。

  • switch()的参数类型不能为实型 。

  • case标签必须是常量表达式(constantExpression),如42或者'4'。

  • case标签必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。

C语言switch应用例子:

例一:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

#include<stdio.h>

int main()

{

    double score;

    printf("请输入分数:\n");

    scanf("%lf",&score);

    switch((int)(score/10))

    {   

        case 10:   

        case 9:printf("A(最好)\n");break;   

        case 8:printf("B(优秀)\n");break;   

        case 7:printf("C(良好)\n");break;   

        case 6:printf("D(及格)\n");break;   

        case 5:

        case 4:

        case 3:

        case 2:

        case 1:

        case 0:printf("E(不及格)\n");break;

        default:printf("Error!\n");

    }

}

例二:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

#include<stdio.h>

int main()

{

    char rank;

    printf("请输入分数等级:(A、B、C、D、E)\n");

    scanf("%c",&rank);

    switch(rank)

    {

        case'A':printf("A(90~100)\n");break;

        case'B':printf("B(80~89)\n");break;

        case'C':printf("C(70~79)\n");break;

        case'D':printf("D(60~69)\n");break;

        case'E':printf("E(0~59)\n");break;

        default:printf("error!\n");break;

    }

}

【相关学习推荐:C语言教程视频】

以上就是switch语句是什么的详细内容!

相关阅读 >>

switch语句是什么

更多相关阅读请进入《switch语句》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...