switch、case的使用

代码如下:
#include <stdio.h>
main()
{
  char c;
  printf("please input '0' to '9' ;");
  c=getchar();
    switch(c)
       {
       case '0':printf("Sundayn");break;
       case '1':printf("Mondayn");break;
       case '2':printf("Tuesdayn");break;
       case '3':printf("Wednesdayn");break;
       case '4':printf("Thursdayn");break;
       case '5':printf("Fridayn");break;
       case '6':printf("Saturdayn");break;
       default:printf("errorn");break;          /*default用于实现case未定义的条件时,输出的结果*/
        }
}
以上代码很简单,是实现星期输入的。
又一个例子,是实现分数输入,计算优良等级的。
#include <stdio.h>
 main()
{
        float score;
        char grade;
        printf ("please input score(0-100):");
        scanf("%f",&score);
        switch ((int) (score/10)){
        case 10:
        case 9:grade='A';break;
        case 8:grade='B';break;
        case 7:grade='C';break;
        case 6:grade='D';break;
        default:grade='E';break;
        }
        printf("score is %.1f,grade is %c n",score,grade);
}
注:case后的值只能是一个常量,不能是一个表达式,如case: a>5,这是不允许的。如果想指定一个范围段的条件,可以使用if语句,不要使用switch、case结构。
break是单独的一种语句,并不是switch语句的组成部分。
多个case语句调用同一个分支语句时,格式为:
case 8:
case 9:
case 10:

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注