C++ switch case语句讲解

2020-01-06 12:07:42于海丽

            cout <<"ERROR!" <<endl;
            break;
         }
      }
      case 4:
      {
         cout <<"Good!" <<endl;
         break;
      }
      case 3:
      {
         cout <<"Soso" <<endl;
         break;
      }
      case 2://根据前面试一试的结论,如果case没有对应的break,会运行到下一个case中
      case 1:
      case 0:
      {
         if (mark>=0)//同样要用if过滤负数
         {
            cout <<"Please work harder!" <<endl;
            break;
         }
      }
      default://其它情况都是出错
      cout <<"ERROR!" <<endl;
   }
   return 0;
}
这个程序要比原来的程序4.1.2冗长一些。但是这里提到这个程序的目的是要教会大家一种使用switch的方法,即“以点盖面”。

算法时间:数据的转换
在程序设计中,我们经常会遇到这样的问题:我们希望处理的数据和电脑能够处理的数据可能有所不符。不符合的情况一般有两种,一种是范围不符合,另一种是类型不符合。对于范围不符合,我们一般考虑的是使用代数式对数据进行处理。比如C++中的随机函数能够产生一个0~32768之间的一个整数,如果我们希望得到一个0~10之间的随机数,那么就用它对10取余数,那么结果一定就在这个范围内。对于类型不符合,我们只好尽量用已有的数据类型来描述这种难以表达的类型。就如同电脑中用0和1表示真和假一样。