=============================================================== Purpose: Change a float number to a string with n numbers proceeding the dot and n numbers come after the dot. ===============================================================// void fmtchg(float a,char *str,int n,int m) {
int i,j,ctr,sign;long d; char c,*tmp;
ctr=0;tmp=str;sign=0;
if (a < 0.0) {sign=-1;a=-a;ctr++;}
for (i=0;i < m;i++) a=a*10.0;d=a+0.5;i=0;
while(1) {
if (d == 0L && i > m) break;
j=d%10L;*tmp++='0'+j;d/=10L;i++;if (++ctr >= n) break;
if (i == m) {*tmp++='.';if (++ctr >= n) break;}
}
if (sign == -1) *tmp++='-';
while (ctr++ < n) *tmp++=' ';*tmp='\0';
for (i=0;i < n/2;i++) {
c=*(str+i);*(str+i)=*(tmp-i-1);*(tmp-i-1)=c;
}
}