я не понял как это проверять. может покажешь?
Что-то вроде такого
Код:
while(1)
{
if( fscanf(fl, "%f", &x) != 1)
break;
sum += x;
}
или еще короче
Код:
while( fscanf(fl, "%f", &x) == 1)
sum += x;
Добавлено спустя 7 минут 13 секунд:а как теперь реализовать в случае если в фаиле будет две точки или к примеру буква стоять, исключительные ситуации. плохо представляю как это реализовать. помогите плиз
Это уже сложнее. Вы должны описать, какие отклонения от нормального содержания файла допускаются, и вручную их обработать.
Если хотите пропускать лишние символы, то можно сделать что-то вроде такого: если fscanf не сумела считать число, а файл еще не кончился, то можно считать один символ и пробовать читать дальше.
С двумя точками посложнее, так как они стоят в середине одного числа. Можно попробовать считать во вспомогательный буфер строку и предварительно ее обработать, заменив, например, две точки на одну, и затем из нее считывать числа. Но в любом случае нужно продумать, что Вы хотите видеть, например, если файл будет содержать текст "1.2.3" и много других похожих примеров. Короче, нужна модель ошибок во входных данных, которые программа должна исправлять.