c语言里面的switch支持那个数是浮点数

c语言里面的switch支持那个数是浮点数吗?
试了下不行,为什么啊?

一、switch case 用法

  • switch 是另外一种选择结构的语句,用来代替简单的、拥有多个分枝的 if else 语句,基本格式如下:
    switch(表达式){
      case 整数1: 语句1;
      case 整数2: 语句2;
            ...
      case 整数n: 语句n;
      default: 语句n + 1;
    }
    

    对于 switch case 语句的执行过程,如下:
      1)首先,计算 表达式 的值,假设为 $x$;
      2)然后,从第一个 case 开始,比较 $x$ 和 整数1 的值,如果相等,就执行冒号后面的所有语句,也就是从 语句1 一直执行到 语句n + 1,而不管后面的 case 是否匹配成功(这是平时开发的易错点,需要特别注意)。
      3)如果 $x$ 和 整数1 不相等,就跳过冒号后面的 语句1,继续比较第二个 case、第三个 case……,一旦发现和某个 整数 相等了,就会执行后面所有的语句。假设 $x$ 和 整数6 相等,那么就会从 语句6 一直执行到 语句n + 1
      4)如果直到最后一个 整数n 都没有找到相等的值,那么就执行 default 后的 语句n + 1

二、扩展阅读