Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Для новичков > У файле нужно посчитать количество слов |
Автор: sswt 7.10.2015, 22:22 | ||
Нужно у файле посчитать количество слов. Кажеться правильно сделал, но ответ не правильный. Где ошибка?
|
Автор: baldman88 7.10.2015, 23:02 | ||
А оно вообще работает? Это же бесконечный цикл из которого нет выхода. Попробуйте как-то так:
PS: если не работает, я не виноват ![]() Добавлено через 11 минут и 36 секунд Плюс здесь не учтены всякие знаки препинания, например тире, которое обромляется пробелами с двух сторон, но словом не является. |
Автор: feodorv 8.10.2015, 11:07 |
Здесь, всё-таки, лучше int. Для char и виндовской кодировки, например, 'я' и EOF неразличимы ![]() |
Автор: sswt 8.10.2015, 12:11 | ||
math64, переделал, но так и не правильно работает, всегда о выводит((((
|
Автор: math64 8.10.2015, 12:49 | ||
файл нужно закрывать после цикла, а не на каждой иттерации. печатать colWord, для отладки, можете и внутри цикла. Но тогда лучше видеть все переменные:
И кстати, действия по if и else нужно поменять местами. |
Автор: a0730 11.10.2015, 18:16 | ||
Компилил gcc, работает с UTF8.
Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/U-fayle-nuzhno-poschitat-kolichestvo-slov-id56157154ae2015ca748b4567#findElement_E7045_561a7d62ae2015a769b12c69_0 |
Автор: baldman88 12.10.2015, 16:37 |
Логику подсчета слов не трогал, просто подсказал автору, где он сделал явно неправильно (посимвольное чтение до конца файла, вместо бесконечного цикла; закрытие файла только после полного прочтения, а не на каждой итерации цикла). |