为什么我这个代码的目的实现不了
# include <stdio.h># include <conio.h>
int main()
{
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);
//count<<num<<endl;
return 0;
}
这个代码的目的是为了实现字符串和数字之间的相互转换,但是为什么不管我输入什么字符串结果就只是0.00000