53 表示數值的字串

2021-09-25 05:51:30 字數 763 閱讀 5116

題目描述

請實現乙個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串"+100",「5e2」,"-123",「3.1416"和」-1e-16"都表示數值。 但是"12e",「1a3.14」,「1.2.3」,"±5"和"12e+4.3"都不是。

class solution 

};

幾個關鍵點:

1.基本邊界。string == null || *string == '\0'

2.檢測是否有符號位

3.檢測除符號位外的第乙個有效位,有效位只能是數字或者小數點.

4.檢測是否有e或者e,且不能重複出現

5.小數點不能重複出現

6.數字的合法性,不能是其他字母如『a』等

• 12e說明e的後面必須有數字,不能有兩個e

• ±5說明符號位要麼出現一次在首位,要麼出現一次在e的後一位,其他地方都不能有

• 12e4.3說明e的後面不能有小數,

• 1.2.3說明不能有兩個小數點

• 1a3.14說明不能有其他的非法字元,比如這裡的a

class solution 

else if(string[i] == '.')

else if(string[i] >'9' || string[i]<'0')

return false;

}return true;

}};

53 表示數值的字串

請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。正規表示式 字元集合 分組 重複 0 1 次 重複 1 n 次 重複 0 n 次 任意字元 轉...

53 表示數值的字串

題目描述 請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。分析 表示數值的字串模式 sign integral digits fraction...

53 表示數值的字串

一 題目描述 請實現乙個函式用來判斷字串是否表示數值 包括整數和小數 例如,字串 100 5e2 123 3.1416 和 1e 16 都表示數值。但是 12e 1a3.14 1.2.3 5 和 12e 4.3 都不是。二 題解 分情況討論,返回true的情況不易列舉,但符合以下6種情況必返回fal...