void float_to_str(char *str,double num)
{
int high;//float_整数部分
double low;//float_小数部分
char *start=str;
int n=0;
char ch[20];
int i;
double tp = 0.1;
high=(int)num;
low=num-high;
while(high>0){
ch[n++]='0'+high%10;
high=high/10;
}
for(i=n-1;i>=0;i--){
*str++=ch[i];
}
num -= (int)num;
*str++='.';
while(num > 0.001){//精度限制
num -= tp * (int)(low * 10);
tp /= 10;
*str++='0'+(int)(low*10);
low=low*10.0-(int)(low*10);
}
*str='\0';
str=start;
}