Я точно не знаю, как, почему выход приходитОбъясните вывод при преобразовании Float в integer?
float f=1.4, t;
int d,s;
d=(int)f;
printf("d=%d\n",d);
t=f-d;
printf("t=%f\n",t);
t=t*10;
printf("t=%f\n",t);
s=(int)t;
printf("s=%d\n",s);
выход
d=1
t=0.400000
t=4.000000
s=3
и точно так же, когда f=1.1
выход
d=1
t=0.100000
t=1.000000
s=1
Является это связано с тем, как целое число и float хранятся в памяти или что-то еще?
Нееет, не снова! Вы, ребята, не можете «непредвиденный результат арифметики с плавающей запятой», можете ли вы ...>. < –
@ H2CO3 Прошу выполнить почетные права на Google, а затем отправить ответ ...спасибо за то, что вы так вежливы :) – Deepu