Эта программа, похоже, выглядит так, как будто она будет запускаться в течение одного раза, но когда я запускаю в Turbo C, вывод ничего. Может ли кто-нибудь объяснить это?Ошибка сравнения с плавающей запятой
#include<stdio.h>
int main()
{
float x=1.1;
while(x==1.1)
{
printf("%f \n",x);
x=x-0.1;
}
return 0;
}
Посмотрите здесь: http://stackoverflow.com/questions/588004/is-floating-point-math-broken – Inisheer
Это часто ошибка: вы сравниваете float с двойным, и они могут немного отличаться (IOW, не равно), особенно в нестандартной реализации, такой как Turbo C. Обратите внимание, что последняя версия Turbo C была выпущена в 1989 году. –