zoukankan      html  css  js  c++  java
  • 表示数值的字符串

    请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。

    思路:若开始有+-号,string++;+.123是正确的;.只能出现一次;e,E之后可以紧跟+-号,但之后不能出现.;e,E后必须有数字。

     1 class Solution {
     2 public:
     3     bool isNumeric(char* string)
     4     {
     5         if(string==NULL) return false;
     6         int flagpoint=0;
     7         int flagE=0;
     8         int flagnum=0;
     9         int flagsign=0;
    10         if(*string=='+'||*string=='-')
    11             string++;
    12         while(*string!=''){
    13             if(*string>='0'&&*string<='9'){
    14                 flagnum=1;
    15                 string++;
    16                 if(flagE!=0)
    17                     flagE++;
    18                 continue;
    19             }
    20             if(flagpoint==0&&*string=='.'){
    21                     string++;
    22                     flagpoint++;
    23                     continue;
    24                 }
    25             if(flagnum==1&&flagE==0){
    26                 if(*string=='e'||*string=='E'){
    27                     if(*(string+1)=='-'||*(string+1)=='+'){
    28                         string++;
    29                     }
    30                     string++;
    31                     flagE++;
    32                     flagpoint++;
    33                     continue;
    34                 }
    35             }
    36             return false;
    37         }
    38         if(flagE==1) return false;
    39         return true;
    40     }
    41 
    42 };
  • 相关阅读:
    KETTLE:mongdb与mysql互传数据
    6.azkban的监控
    5.azkaban权限管理
    3.azkaban3.0测试
    2.azkaban3.0安装
    1.编译azkaban
    十六:The YARN Service Registry
    十四:Using CGroups with YARN
    十二:NodeManager
    十 Writing YARN Applications
  • 原文地址:https://www.cnblogs.com/zl1991/p/4799720.html
Copyright © 2011-2022 走看看