c语言switch语句格式

作者&投稿:樊袁 (若有异议请与网页底部的电邮联系)
C语言中的Switch-case语句~

Switch语句可以理解为if-else语句的另一种表现形式 。 break的作用是跳出Switch,如果不跳出则继续向下执行,直到遇到break或执行到结束为止。
Switch case 语句表达式为:
switch{case 常量1: 语句体1;case 常量2: 语句体2;case 常量3: 语句体3;case 常量4: 语句体4;....default : 语句体;}

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

C语言程序语句
Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。
直线翻译:switch语句,即“切换”语句;case即“情况”。
switch语句的语法如下(switch,case,break和default是关键字):
switch ( 变量表达式 )
{
case 常量1 :语句;break;
case 常量2 :语句;break;
case 常量3 :语句;break;
...
case 常量n:语句;break;
default :语句;break;
}

参考资料:
百度百科-switch (计算机语言关键字)

凡是使用过的人都会有同样的感觉——C语言的使用灵活这个特点既是优点又是缺点, 因为对精通C语言的用户来讲, 灵活就意味着编程可以无拘无束, 甚至随心所欲; 但对初学者或者是尚未摸着规律的用户来说, 有时候就会觉得C程序设计有点象雾里看花, 摸不着头脑。 因为灵活就意味着没有一个标准。 而实际上,C 语言和其它计算机语言一样, 只要你真正掌握了该语言的每一个语句的特点, 理解、 运用就不难掌握了。 下面就C语言中switch 语句的使用特点谈谈自己的体会。 ---- switch 语句的格式如下: switch( 表达式) {case 常量表达式1: 语句1 case 常量表达式2: 语句2 case 常量表达式3: 语句3 case 常量表达式n: 语句n default : 语句n+1 } ---- 从表面上看来,switch 语句与PASCAL 语言中的case 语句以及FOXBASE 中的do case 语句非常类似, 只是关键字有所不同: 一个是switch; 而另一个是case 或do case。 但如果仔细阅读过教材或有关参考书的话, 就绝不会有此想法。 从语句的功能上来看,PASCAL 和case 语句或FOXBASE 的do case 语句中的常量表达式是用来与case 后面的表达式比较以确定执行哪一个语句, 一旦执行了某一语句, 则会自动地结束这一case 后的语句; 而C 的switch 语句则不然。 首先,switch 语句中的常量表达式只是起到一个入口作用, 一旦执行了相应的语句后, 只要没有强迫中断语句(break),它就会一直按顺序继续执行下去, 也就是会执行其它case 后面的语句, 直到遇到“}” 符号才停止。 乍看觉得有点不可事议, 但若仔细回味且切身编程体会, 那么就会感司到C的switch 语句的独到之处。 接下来就几个具体例子来剖析:switch 语句的特点以及区别于其它语言中的相应语句的妙处。 ---- 第一个例子: 根据输入的百分制成绩, 然后给出‘A’ ~‘E’ 相应的等级符(90-100 为‘A’、80-89 为‘B’、70-79 为‘B’、60-69 为‘C’、0-59 为‘E’)。主要的处理程序段如下:(temp、score、grade 皆为整型变量) temp=score/10; switch(temp) {case 9:grade=‘A’; case 8:grade=‘B’; case 7:grade=‘C’; case 6:grade=‘D’; case 5:grade=‘E’; } printf(“the grade is %c”,grade); ---- 仔细阅读这段程序( 根据C语言的特点),就会发现有很多错误。 首先, 对100 分和低于50 分的情况没有考虑; 其次,C 语言的switch 特点是顺序执行, 那么这段程序不输入的分数如何, 最后的输出都将是‘E’。因此, 修改这段程序, 可以得到一个正确答案是: temp=score/10; switch(temp) {case 10: case 9:grade=‘A’;break; case 8:grade=‘B’;break; case 7:grade=‘C’;break; case 6:grade=‘D’;break; case 5: case 4: case 3: case 2: case 1: case 0:grade=‘E’; } printf(“the grade is %c,grade”); ---- 但这么一个结果还不算是一个好的C程序, 因为它只是能得到正确的解, 没有真正用到C的特点。 如果将C的特点运用到这段程序中, 则程序将优化成如下: grade=‘A’; temp=score/10; switch(temp) {case 0: case 1: case 2: case 3: case 4: case 5:grade++; case 6:grade++; case 7:grade++; case 8:grade++; case 9: case 10: } printf(“the grade is %c,grade”); ---- 从这段程序中, 我们可以体会到前面所说的该语句的特点。 ---- 第二个例子: 运输公司对用户计算运费。 距离(s) 越远, 每公里运费越低。 具体标准如下: s =12 时,d=15%。 所以可以有如下没有错误的程序段: scanf(“%f,%f,%d”,&p,&w,&s); if(s>=3000)c=12 else c=s/250 switch(c) {case 0:d=0;break; case 1:d=2;break; case 2: case 3:d=5;break; case 4: case 5: case 6: case 7:d=8;break; case 8: case 9: case 10: case 11:d=10;break; case 12:d=15; } f=p*w*s*(1-d/100.0); printf(“freight%15.f”,f); ---- 如同前一个题目, 这个程序段也完全可以利用switch 特点, 改进优化得到如下程序段: d=0 scanf(“%f,%f,%k”,&p,&w,&s); if(s>=3000)c=12 else c=s/250 switch(c) {case 12:d+=5; case11: case 10: case 9: case 8:d+=2; case 7: case 6: case 5: case 4:d+=3; case 3: case 2:d+=3; case 1:d+=2; case 0: } f=p*w*s*(1-d/100.0); printf(“freight%15.4f”,f); ---- 从上面两个例子分析, 使我们可以比较清楚地看见C语言中switch 语句与其它语言中相应语句的区别。 尽管在学习和教计算机语言的过程中, 我们始终认为语言是相通的, 这样便于学习一门新的语言。 但是真正要把某一门计算机语言学好, 非得掌握它的特点。 ---- 这里仅仅是自己在编程实践过程中的一点体会, 有错误的地方恳请批评指正。 希望对你有帮助!

switch 是另外一种选择结构的语句,用来代替简单的、拥有多个分枝的 if else 语句,基本格式如下:
switch(表达式){
case 整型数值1: 语句 1;
case 整型数值2: 语句 2;
......
case 整型数值n: 语句 n;
default: 语句 n+1;
}
它的执行过程是:
1) 首先计算“表达式”的值,假设为 m。

2) 从第一个 case 开始,比较“整型数值1”和 m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的 case 是否匹配成功。

3) 如果“整型数值1”和 m 不相等,就跳过冒号后面的“语句1”,继续比较第二个 case、第三个 case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设 m 和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。

4) 如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行 default 后的“语句 n+1”。


switch语句怎么用啊
在C语言中,switch语句是开关语句,一般与case、break、default配合使用,对流程进行控制。switch语句的语法规则:switch ( 变量表达式 ){ case 常量1 :语句;break;case 常量2 :语句;break;case 常量3 :语句;break;...case 常量n:语句;break;default :语句;break;} 其中switch、case、break、default...

switch语句中的break语句和default语句都正确吗?
都正确。switch语句都必须遵循规则如下:只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。switch()的参数类型不能为实型 。case标签必须是常量表达式(constantExpression),如42或者'4'。case标签必须是惟一性的表达式;也就是说,不允许两个case具有...

C语言中switch语句什么意思
Switch在C语言中是保留字,其作用是进行判断选择。switch(开关语句)常和case break default一起使用。Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。直线翻译:switch语句,即“切换”语句;case即“情况”。当变量表达式所表达的量与其中一个case...

switch语句
执行过程:先计算并获得switch后面小括号里的表达式或变量值,然后将计算结果顺序与每个case后的常量比较。当二者相等时,执行个case块中的代码,当遇到break时,就跳出switch选择结构,执行switch选择结构之后的代码。如果任何一个case之后的常量与switch后的小括号中的值相等,则执行switch尾部的default块中...

switch语句中的case能否为0?
不可以,C语言中的switch case中的case后面仅可以跟整形常量或常量表达式。原因:如果case后面跟 100>x>50是会出现逻辑错误的。首先C语言中像100>x>50这种表达式的意义并不和数学里的一样表示x落在(50,100)这个区间。这个在C语言中100>x会先被计算得到真或假。直接用关系运算得到的真和假在C语言...

switch语句的格式和功能
(6)多个case可以共用一组执行语句,如: case 'A': case 'B': case 'C': prinf(">60\\n");break;SWITCH语句的基本格式、基本意思? xxhelforever弱智玩意case后面是冒号 要VF中SQL语句的格式 VF常用SQL语句大全 SQL是结构化查询语言,查询是SQL语言的重要组成部分,但不是全部,SQL还包括...

简述c语言中switch语录的特点
switch语句属于选择语句,其表达形式就像一个选择结构,大体的格式如下:switch(表达式){\/\/short、int、char case 取值1:执行语句1;break;case 取值2:执行语句2;break;... ...default:默认执行语句;break;} 语法结构解读:1、其中的“表达式”的结果以及case后的“取值”只能是3种类型:short...

在C语言中, switch语句可以包含if语句吗?
在C语言中,switch语句的case分支中可以包含if语句。这样可以在满足特定条件时执行特定的代码块。以下是一个简单的C语言程序,用于演示switch语句的case分支中包含if语句的情况:在这个程序中,我们首先定义了一个整型变量num,用于存储用户输入的数。然后,我们使用printf函数输出提示信息,使用scanf函数从用户...

关于C语言中的switch语句变量类型的问题
关于C语言中switch语句的问题 在switch语句中,“case 常量表达式”只相当于一个语句标号, 表达式的值和某标号相等则转向该标号执行,但不能在执行完该标号的语句后自动跳出整个switch 语句,所以出现了继续执行所有后面case语句的情况。 即x=1时 从case 1开始执行到最后;即x=2时 从case 2开始...

switchcase语句用法
switchcase语句用法如下:1、Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。直线翻译:switch语句,即“切换”语句;case即“情况”。2、switch语句一行接一行地执行(实际上是语句接语句)。开始时没有代码被执行。仅当一个 case语句中的值和switch...

浪卡子县17515567652: 请问c语言的switch语句到底是什么? -
苌邦因瑞: C语言中,switch语句的使用格式如下:switch(表达式){ case 常量表达式1 : 语句1; break; case 常量表达式2 : 语句2; break; ...... case 常量表达式n : 语句n; break; default : 语句n+1;}举例如下:int i=4, a=0; switch(i) {case 1 : ...

浪卡子县17515567652: C语言的switch语句 -
苌邦因瑞: 比如.你要开灯,现在有7种颜色的灯:1--赤;2--橙;3--黄;4--绿;5--蓝;6--靛;7--紫.各种颜色的代号如上所示.现在你要选择灯的颜色,就可以用swtich语句:switch(light) { case 1:printf("开赤灯\n");break; case 2:printf("开橙灯\n...

浪卡子县17515567652: 求一个switch语句的例子感觉自己对switch语句的理解不够好,书上也没有比较好的例子,希望能有人给个指点... -
苌邦因瑞:[答案] 比如下面的例子 输入数字,按下列对应关系显示.当输入^Z时,程序结束. 输入数字显示 1A 2B 3C 4D 其他? 说明: C语言中switch语句的格式是这样的 switch(表达式) { case常量表达式1:语句1 case常量表达式2:语句2 ...

浪卡子县17515567652: C语言中switch语句是怎样的?
苌邦因瑞: #include<stdio.h>main(){ int k=5,n=0; while(k>0) { switch(k) { defult : break; case 1 : n+=k; case 2 :case 3 : n+=k; } printf("k=%d,n=%d\n",k,n); k--; }}

浪卡子县17515567652: switch语句用法 -
苌邦因瑞: switch是多分支语句的关键词,在很多语言中都有使用,一般都是跟case配套使用,c语言中格式举例如下:switch (a) { case 1:处理程序 case 2:处理程序.............case n:处理程序 default:处理程序 } 其中a为变量,case后面为常量或常量表达式,处理程序可以由多条语句组成,处理程序一般以break;作为结束.

浪卡子县17515567652: c语言中switch怎么用? -
苌邦因瑞: 简单的说switch语句也是属于判断语句,if else语句适合3个以内的判断,但是多了用if就不太方便了,所以这时3个以上的判断用switch语句就比较方便了,结构就像楼上的兄弟们那样写的,大概怎么用我举个例子你就懂了.例:判断一周的食谱...

浪卡子县17515567652: C语言switch语句 -
苌邦因瑞: 正确答案是C A:switch后的括号内只能是整形或字符型变量 B:switch后不能加分号 C:正确 D:case后必须是常量

浪卡子县17515567652: 【c语言初学者】switch语句用法,给写个例子,比如1+1=?,a:2,b:3,c:4,d:5 -
苌邦因瑞: #include void main() { switch(1+1){ case 2:printf("回答正确"); break; case 3:printf("错误"); break;case 4:printf("错误"); break; case 5: printf("错误"); break;default : d=a/b; printf("报错咯“); break; }

浪卡子县17515567652: c语言switch语句怎么用 -
苌邦因瑞: switch(表达式){ case常量表达式1: 语句1; case常量表达式2: 语句2; … case常量表达式n: 语句n; default : 语句n+1; }每一case语句之后增加break 语句, 使每一次执行之后均可跳出switch语句,从而避免输出不应有的结果.

浪卡子县17515567652: switch语句怎么用啊 具体啊! -
苌邦因瑞: switch(){case : case :...... }先说语法,再说注意事项switch的判断变量类型只能是字符型或者整型,请注意,只有这两种才可以switch后面紧跟的那个小括号里面就是 要判断的变量名称 然后switch要求它后面的大括号完整,不能不写case 后面加...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网