C语言字符串转化为整数输出

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int Tencifang(int i,int n);
int Atof(char s[]);
int main (void)
{
int n;
char s[255];
printf("please input a digit string:");
gets(s);
n=Atof(s);
printf("%d",n);
system("pause");
}
int Atof(char s[])
{
int i;
int n;
int m=0;
n=strlen(s);
for(i=0;i<=n;i++)
{
m=m+Tencifang(n-i-1,s[i]-'0');
}
return m;
}
int Tencifang(int i,int n)
{
int m;
int q;
for(m=n,q=1;q<=i;q++)
{
m=m*10;
}
return m;
}

哪错了

#include<stdio.h>
int Atof(char s[]);
int main (void)
{
        int n;
        char s[255];
        printf("please input a digit string:");
        gets(s);
        n=Atof(s);
        printf("%d",n);
        return 0;
}
int Atof(char s[])
{
        int i;
        int m=0;
        for(i=0;s[i]!='\0';i++)
        {
                m=m*10+s[i]-'0';
        }
        return m;
}

温馨提示:答案为网友推荐,仅供参考
相似回答