C语言switch语句

作者&投稿:汗峡 (若有异议请与网页底部的电邮联系)
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
  int main()
  {
  double score;
  printf("请输入分数:
");
  scanf("%lf",&score);
  switch((int)(score/10)) //如果写成witch((int)score/10)会出现严重错误
  {
  case 10:
  case 9:printf("A(最好)
");break;
  case 8:printf("B(优秀)
");break;
  case 7:printf("C(良好)
");break;
  case 6:printf("D(及格)
");break;
  case 5:
  case 4:
  case 3:
  case 2:
  case 1:
  case 0:printf("E(不及格)
");break;
  default:printf("Error!
");
  }
  }
  例二:
  #include
  int main()
  {
  char rank;
  printf("请输入分数等级:(A、B、C、D、E)
");
  scanf("%c",&rank);
  switch(rank)//switch((int)score/10)出现严重错误,switch(((int)score)/10)出现严重错误,
  {
  case 'A':printf("A(90~100)
");break;
  case 'B':printf("B(80~89)
");break;
  case 'C':printf("C(70~79)
");break;
  case 'D':printf("D(60~69)
");break;
  case 'E':printf("E(0~59)
");break;
  default:printf("error!
");break;
  }
  }
  例三:
  输入年月日,判断这一天是这一年的第几天。
  #include
  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天。
",year,month,date,days);
  }

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

switch结构的一般形式是;
switch(表达式)
{
case(必须为常量):语句1;break;
case(同上):语句2;break;
case(同上):语句3;break;
……
……
case(同上):语句n;break;
default:语句n+
其中
break可以不要,但如果你不加,那么如果执行到没有加break那一句后不跳出case而继续执行紧跟其后的case或default

switch()
{case
常量表达式1:
语句1;
.
.
.
.
case
常量表达式n:
语句n;
default:
语句n+1;
}
说明:
1
switch后面的表达式,ANSI允许它是任何类型
2
当表达式式值和case后面常量表达式值相等的时候,就执行.如果没有一个相等就执行default后面的语句.
3每个case后面的值必须是不等的
4
每个case和default的次序不影响程序执行
5如果执行完一个case
就跳到下一个case
如果case后面有break则执行后跳出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 : a++; break; // 如果i=1,执行case 1 后面的语句,执行完后退出switch
case 2 : a+=2; break; // 如果i=2,执行case 2 后面的语句,执行完后退出switch
case 4 : a+=4; break; // 如果i=4,执行case 4 后面的语句,执行完后退出switch
default : a=0; // 如果i不等于上面所以case中的值,执行default后面的语句,执行完后退出switch
}

c语言switch语句是什么?
答:c语言switch语句是一种多分支选择语句,在实际应用中,要在多种情况中选择一种情况,执行某一部分语句。程序执行时,首先计算表达式的值,与case后面的常量表达式值比较,若相等就执行对应部分的语句块,执行完后利用break语句跳出switch分支语句。若表达式的值与所有的case后的常量表达式均不匹配,则执行...

c语言switch语句
答:case在c语言中是:情况。switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。直线翻译:switch语句,即“切换”语句;case即“情况”。switch语句的语法(switch,case,break和default是关键字):当变量表达式所表达的量与其中一个case语句中的常量相符时...

c语言switch用法举例内容是什么?
答:1、default无论放在case前面还是后面都是执行完case后再执行case,(也可以不加default语句)。2、case后面的常量表达式只能是整型、字符型或枚举型常量的一种语句,结束后一定要带break,不然还会继续执行下一个case。遵守switch语句规则 switch语句非常有用,但在使用时必须谨慎。所写的任何switch语句都必须...

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

C语言中switch()语句的括号内可以是什么类型的呢?
答:switch()语句的括号内的表达式必须是整型,它要与case 里的值呼应。Switch用在编程中,如C语言中它经常跟Case一起使用,是一个判断选择代码。其功能就是控制流程流转的。直线翻译:switch语句,即“切换”语句;case即“情况”。switch语句的语法如下(switch,case,break和default是关键字):switch ( ...

switchc语言的用法
答:c语言switch的用法如下:1、在一个 switch 中可以有任意数量的 case 语句。每个 case 后跟一个要比较的值和一个冒号。2、case 后的 类型 必须与 switch 中的变量具有相同的数据类型,且必须是一个常量或字面量。3、当被测试的变量等于 case 中的常量时,case 后跟的语句将被执行,直到遇到 break ...

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

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

c语言 switch语句执行顺序
答:1、switch的一般形式 switch(表达式){case 常量表达式1: 语句1; break;case 常量表达式2 : 语句2; break;case ...default: 默认语句}switch语句块之后的语句;;2、执行顺序 第一步:计算switch后面的条件表达式的值。第二步:将表达式的值,分别与case语句中的常量表达式进行比较。如果相等,则执...

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 : 语句体;} ...