题目:
表示数值的字符串
链接:
https://www.nowcoder.com/practice/6f8c901d091949a5837e24bb82a731f2?tpId=13&tqId=11206&rp=3&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
题目描述:
请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。
思路:
表示数值的字符创应该符合以下模式:
【正负号】数字【.【分数数字】】【e|E【指数正负号】指数数字】 。
其中【表示这里的内容可有可无】
代码:
1 /************************************************************************* 2 > File Name: jz54.cpp 3 > Author: wangshujing 4 > Mail: wangshujingu@163.com 5 > Created Time: Fri 09 Jun 2017 10:47:19 AM CST 6 ************************************************************************/ 7 8 // 剑指offer 第 54 题:表示数值的字符串 9 10 #include<iostream> 11 using namespace std; 12 class Solution{ 13 public: 14 bool isNumeric(char* string){ 15 if(string == nullptr){ 16 return false; 17 } 18 if(*string == '+' || *string == '-') 19 ++string; 20 if(*string == '