Я только что пересмотрел классический учебник C K&R. И прочитайте упражнение 1-11:
Как бы вы протестировали программу подсчета слов? Какие виды ввода, скорее всего, выявят ошибки, если таковые имеются?
На самом деле, у меня есть только базовая идея вручную подсчитать существующий абзац, чтобы получить точное количество слов и сравнить его с результатом, рассчитанным программой подсчета слов.
Есть ли что-то, что я пропустил? И в чем прикол теста?
ИЗМЕНИТЬ
Резюме ответов:
Семантическое определение слова, некоторые частные случаи:
- слово-ссылка: "кошачья прогулка"
- короткое слово: а, б, в
- большие слова: "a fooooooooo‹40MILLIONLETTERS>oooooooo a" состоит из 3 слов
граничные условия:
- Тексты с несколькими пробелами между словами.
- Тексты размером более 2 ГБ
- Слова, которые содержат тире, но не содержат пробелов.
- Не-ascii-слова.
- Файлы в другой кодировке (если ваша программа это поддерживает)
- Символы, окруженные пробелами, но не содержащие словесных символов (например, «привет, мир»)
- Тексты без слов
- Тексты со всеми словами на одной строке