數字字符串轉爲相應的浮點數

#include <stdio.h>
#include<ctype.h>
double atof(char s[])
{
    double sum,power;
    int i,sign;
    for(i=0;isspace(s[i]);i++);
    sign=(s[i]=='-')?1:-1;
    if(s[i]=='+'||s[i]=='-')i++;
    for(sum=0;isdigit(s[i]);i++)
    sum=sum*10+s[i]-'0';
    if(s[i]=='.')i++;
    for(power=1.0;isdigit(s[i]);i++);
    {
    sum=sum*10+s[i]-'0';
    power=power*10.0;
    }
    return sign*sum/power;
}
int main()
{
    char s[20];
    char c;
    int i=0;
    double m;
    gets(s);
    m=atof(s);
    printf("%lf",m);
 } 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章