上QQ阅读APP看书,第一时间看更新
4.9.4 怎样将带小数点的字符型数据转换成浮点型
怎么将字符型数据“-0.92,344.77”转换成浮点型数据“-0.92,344.77”?其实在C语言中有专门的库函数,它们用于字符串与数字间的转换。当然,也可以自己编程来实现,例如下面的代码。
#include <stdio.h> #include <conio.h> int main(void){ char str[100]; gets(str); double num = 0; int i = 0; double t = 10; while(str[i] ! = '\0') { if( str[i] >= '0' && str[i] <= '9') { if( t == 10) num = num * t + str[i] -48; else { num += ( str[i] -48 ) * t; t = t*0.1; } } if( str[i] == '.' ) { t = 0.1; } i++; } if( str[0] == '-' ) num = 0- num; printf("%lf\n", num); //cout << num << endl; return 0; }