字串中如何提取數值

2022-07-29 05:00:17 字數 814 閱讀 2698

給一段字串,如何在給定的字串中提取出相應的數值,並運用這些數值;

可以使用 getchar() 找到特殊字元 , 然後把相應的數值存入乙個字元陣列中,最後在字元陣列的最後一位加上'\0'(字串結束標誌),然後字元陣列中的字元轉換成數值,可以使用sscanf(s,"%lf",&a) 也可以使用atof(s) ;兩種方法效果相同;

具體解法如下:

#include#include#include#includeusing namespace std ;

char a[105] , aa ;

char flag ;

void getss(char *s)

}a[j] = s[i] ;

if(a[j] == '.')

continue ;

if(a[j] < '0' || a[j] > '9')

}break ;

} }}int main()

return 0 ;

}

在網上也發現一些其他方法解決了此題,下面介紹一種方法,從中學到一些:

標頭檔案 #include

char s[100] ;

gets(s) ;

istringstream sin(s) ;

double d ;

int i = 0 ;

char s1 ;

while(sin>> s1)  

else if(ch=='u')

else if(ch=='i')

}cout<<"problem #"

如何從字串中提取數值

如何從字串中提取數值,比如從 10 16mn 中提取10這個數值,當然在字串中 後面 的數值長度不定,而 中的字串長度也不定。來個迴圈比較看看,條件是 in 0.9 str abc056 s for i 1 to length str do begin if str i in 0 9 then s ...

字串提取

請從字串中提取以最後乙個 img 開頭 以最後乙個 img 結尾的字串,未找到匹配的字串返回 null 可能包含 img img 的字串擷取後的字串bbb img ccc img ddd img eee img img ddd img eee img abcnull先找出最後乙個 img 的 所在下...

字串提取

比如乙個字串 110,hello,119,world,120,computer 我想提取第3個逗號 之後 第4個逗號 之前 的那一段,即 world 如何用 實現 如下 define uart recv field lenth 512 define uint16 unsigned short uin...