首页技术switch语句用法详解(switch开关语句怎么用)

switch语句用法详解(switch开关语句怎么用)

编程之家2026-06-291060次浏览

大家好,今天小编来为大家解答以下的问题,关于switch语句用法详解,switch开关语句怎么用这个很多人还不知道,现在让我们一起来看看吧!

switch语句用法详解(switch开关语句怎么用)

switch语句的用法

switch(表达式){

case常量表达式1:语句1;

case常量表达式2:语句2;

case常量表达式n:语句n;

default:语句n+1;

switch语句用法详解(switch开关语句怎么用)

}

意思是先计算表达式的值,再逐个和case后的常量表达式比较,若不等则继续往下比较,若一直不等,则执行default后的语句;若等于某一个常量表达式,则从这个表达式后的语句开始执行,并执行后面所有case后的语句。

与if语句的不同:If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其他if语句;

而switch语句不会在执行判断为真后的语句之后跳出循环,而是继续执行后面所有case语句。在每一case语句之后增加break语句,使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果。

switch语句用法

在C语言中,switch语句是开关语句,一般与case、break、default配合使用,对流程进行控制。switch作为一个开关,当变量表达式的值对应case中的值时,执行case后面的语句后跳出switch语句,如果都不符合则执行default后面的语句后跳出switch语句。

switch语句用法规则 1.在一个switch中可以有任意数量的case语句。每个case后跟一个要比较的值和一个冒号。

switch语句用法详解(switch开关语句怎么用)

2.case后的类型必须与switch中的变量具有相同的数据类型,且必须是一个常量或字面量。

3.当被测试的变量等于case中的常量时,case后跟的语句将被执行,直到遇到break语句为止。

4.当遇到break语句时,switch终止,控制流将跳转到switch语句后的下一行。

5.不是每一个case都需要包含break。如果case语句不包含break,控制流将会继续后续的case,直到遇到break为止。

6.一个switch语句可以有一个可选的defaultcase,出现在switch的结尾。default case可用于在上面所有case都不为真时执行一个任务。default case中的break语句不是必需的。

求教c语言中switch 语句的详细用法

C语言程序语句switch:

switch用在编程中,如C语言中它经常跟case一起使用,是一个判断选择代码。其功能就是控制业务流程流转的。

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

switch( controllingExpression)

{

case constantExpression1:

case constantExpression2:

case constantExpression3:

statements;//当满足constantExpression1、constantExpression2、constantExpression3任何一个都执行statements

break;

case constantExpression:

statements;

break;

...

default:

statements;

break;

}

遵守switch语句规则

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

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

case标签必须是常量表达式(constantExpression),如42或者"42"。如果需要在运行时计算case标签的值,必须使用if语句。

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

C语言switch应用例子:

例一:

#include<stdio.h>

int main()

{

double score;

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

scanf("%lf",&score);

switch((int)(score/10))//如果写成witch((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");

}

}

例二:

#include<stdio.h>

int main()

{

char rank;

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

scanf("%c",&rank);

switch(rank)//switch((int)score/10)出现严重错误,switch(((int)score)/10)出现严重错误,

{

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;

}

}

例三:

输入年月日,判断这一天是这一年的第几天。

#include<stdio.h>

int main()

{

int year,month,date,leap,days=0;

scanf("%4d%2d%2d",&year,&month,&date);

leap=(year%4==0&&year%100!=0||year%400==0);

switch(month)

{

case 12:days+=30;

case 11:days+=31;

case 10:days+=30;

case 9:days+=31;

case 8:days+=31;

case 7:days+=30;

case 6:days+=31;

case 5:days+=30;

case 4:days+=31;

case 3:days+=28+leap;

case 2:days+=31;

case 1:days+=date;break;

}

printf("%4d年%2d月%2d日是这一年的第%d天。\n",year,month,date,days);

}

希望对你有帮助。

如果你还想了解更多这方面的信息,记得收藏关注本站。

xml文件打开后是一堆代码,打开xml文件的软件php随机数代码,php生成随机数