小数を引数とし 戻り値の値だけ倍すれば小数点がなくなる(?)ようなユーザー関数を作りたいんですが
どうしてもうまくいきません

BorlandとCPadを使ってます

#include <stdio.h>

int dtoi( double d );

void main(void)
{
double d ;
int bai ;
printf("小数の入力 ==> ");
scanf("%lf", &d);
bai = dtoi( d );
printf("%fを%d倍すれば小数点が消える\n", d, bai);
return ;
}

int dtoi( double d )
{
int bai ;
for( bai = 1 ; d * bai - (int)( d * bai ) > 0 ; bai *= 10 ){
printf("引かれる数 = %f\n", d * bai);
printf("引く数 = %d\n", (int)( d * bai ));
printf("差 = %f\n", d * bai - (int)( d * bai ));
}
return bai ;
}

お願いします