#include<stdio.h>

main(){
int i;
float f;
f=1234.0098;
i=f;
printf("%f %d",f,i);}

1234.0098 1234 と表示されるはずが
1234.009766 1234 と表示されます。
どうしてですか?教えてください。
ちなみに環境はwinXP,bcc5.5です