D语言switch语句

switch语句允许一个变量来对值的列表相等进行测试。每个值被称为一个case,并且在接通该变量被检查每个switch case。

语法

在D编程语言中的switch语句的语法如下:


switch(expression){
    case constant-expression  :
       statement(s);
       break; /* optional */
    case constant-expression  :
       statement(s);
       break; /* optional */
  
    /* you can have any number of case statements */
    default : /* Optional */
       statement(s);
}

以下规则适用于switch语句:

  • 在switch语句中使用的表达式必须有一个整体或枚举类型,或者是一个类类型,其中的类有一个单一的转换函数将一个整数或枚举类型。

  • 一个switch可以有任何数量的case语句。每个case后面进行比较的值和一个冒号。

  • 常数在表达式case后,必须具有相同的数据类型作为switch变量,它必须是一个常量或文字。

  • 当被打开了变量等于case,下列case语句将执行,直到break语句为止。

  • 当达到一个break语句,switch终止,并且控制流程跳转到下一行下面的switch语句。

  • 不是每一种case 需要包含break。如果没有出现break,控制流将下降通过之后的case直到出现break为止。

  • switch语句可以有一个可选默认情况下,它必须出现在switch的结束。缺省情况下,可用于执行任务时,所有case都不为true。在默认casebreak 不是必要的。

流程图:


例子:

import std.stdio;
 
int main ()
{
   /* local variable definition */
   char grade = 'B';

   switch(grade)
   {
   case 'A' :
      writefln("Excellent!" );
      break;
   case 'B' :
   case 'C' :
      writefln("Well done" );
      break;
   case 'D' :
      writefln("You passed" );
      break;
   case 'F' :
      writefln("Better try again" );
      break;
   default :
      writefln("Invalid grade" );
   }
   writefln("Your grade is  %c", grade );
 
   return 0;
}
当上面的代码被编译并执行,它会产生以下结果:
Well done
Your grade is B
联系我们

邮箱 626512443@qq.com
电话 18611320371(微信)
QQ群 235681453

Copyright © 2015-2024

备案号:京ICP备15003423号-3