《劍指offer》面試題20:表示數值的字串
請實現乙個函式用來判斷字串是否表示數值(包括整數和小數)。例如,字串「+100」、「5e2」、「-123」、「3.1416」及「-1e-16」都表示數值,但「12e」、「1a3.14」、「1.2.3」、「+-5」及「12e+5.4」都不是
表示數值的字元格式a[.b[e|ec]],其中a表示整數部分、b表示小數部分、c表示指數部分。ac為帶符號的整數,可以有'-'or'+'作為字首,b為無符號整數。abc之間有小數點'.' 和'e'區分。
#include "iostream"
#include using namespace std;
//問題:判斷字串為表示數值的字串
//整數部分[.小數部分[e/e指數部分]]
bool is_number(char* str);
bool is_unsigned_int(char** str);
bool is_int(char** str);
//測試函式
void test01()
int main(int argc, char const *ar**)
//功能:判斷字串表示數值
//返回:true 成功, false 失敗
bool is_number(char* str)
//4.判斷指數部分
if (*str == 'e' || *str == 'e')
//5.返回結果
return (*str == '\0' && is_number);
}//功能:判斷字串表示整數(不帶符號)
//返回:true 成功, false 失敗
bool is_unsigned_int(char** str)
return *str > before;
}//功能:判斷字串表示整數(帶符號)
//返回:true 成功, false 失敗
字串練習題
1.請編寫乙個c函式,該函式可以實現將乙個整數轉為任意進製的字串輸出 include include char ch 16 函式宣告 將整數轉換為任意進製的字串 charchar int2sys int num,int n,int move bit int main else if n 8 else...
字串練習題
變數名是否合法 1.變數名只能由字母 數字 下劃線組成 2.只能以字母或下劃線開頭 源 while true s input 變數名 if s exit print 歡迎下次使用 break if s 0 isalpha or s 0 for i in s 1 if not i.isalnum or...
字串練習題
輸入兩個字串,從第乙個字串中刪除第二個字串中所有的字元。例如,輸入 they are students.和 aeiou 則刪除之後的第乙個字串變成 thy r stdnts.s1 input 請輸入第乙個字串 s2 input 請輸入第二個字串 s3 方法一 for i in s1 print i,...