易百教程

Switch使用大写字符值

可以使用toupper()tolower()函数来简化swithc中的case。通过使用其中一个,几乎可以减少一半的case匹配:

示例代码

#include <stdio.h>
#include <ctype.h>
int main(void)
{
  char answer = 0;// 存储输入值

  printf("请输入 Y 或 N: ");
  scanf(" %c", &answer);

  switch (toupper(answer))
  {
  case 'Y':
    printf("你回答是肯定的.\n");
    break;
  case 'N':
    printf("你回答是否定的.\n");
    break;
  default:
    printf("你没有正确回答问题. . .\n");
    break;
  }
  return 0;
}

执行上面示例代码,得到以下结果:

hema@ubuntu:~/book$ gcc main.c
hema@ubuntu:~/book$ ./a.out
请输入 Y 或 N: Y
你回答是肯定的.