У меня проблемы с созданием функции, которая регистрирует ввод как слово. В настоящее время он регистрирует слова, но все, что с '(как и не, не может) отображается как 2 слова. Программа должна принимать входные данные из файла, считать слова и отображать количество слов и средние буквы на слово.
Я немного поигрался с кодом, и кажется, что ничего не решает проблему, но следующий код является наиболее близким к правильному, как я получил.
int main(void) {
int ch, wordCount, wordAverage, letterCount;
bool inword = false;
wordCount = 0;
letterCount = 0;
while ((ch = getchar()) != EOF) {
if (isalpha(ch)) {
letterCount++;
if (!isspace(ch) && (!inword)) {
inword = true;
wordCount++;
}
} else
inword = false;
}
wordAverage = letterCount / wordCount;
printf("The number of words was %d, and the average letters per word was %d.", wordCount, wordAverage);
}