Организация поиска самого длинного слова - C (СИ)

Узнай цену своей работы

Формулировка задачи:

У меня есть код, точнее только самое начало программы. Текс указан. Я никак не могу понять, как можно организовать поиск самого длинного слова из строки, введеной с клавиатуры. Если кто-то может помочь и объяснить что к чему в этом алгоритме отбора самого длинного слова, то буду благодарна за помощь)))
#include <stdio.h> //ввод вывод данных 
#include <conio.h> //для _getch ожидание
#include <string.h> // ввод строк
#include <locale.h> //для установки русской раскладки
 
int main()
{
    setlocale(LC_ALL, "Russian");
    printf("Задача 1.\n");
    printf("Разработала .\n");
    printf("Проверил .\n");
    printf("Текст задачи:\n");
    printf("Дана последовательность слов длиной ДО десяти символов каждое,\nразделенных пробелами. Найти слово с максимальной длинной.\n\n\n\n");
    
    printf("Введите текст:");
    char s[2000];
    scanf ("%1999[^\n]",s);
    {
    //как огранизовать поиск максимально длинного слова
    }
 
    _getch();
}

Решение задачи: «Организация поиска самого длинного слова»

textual
Листинг программы
        while ( pWord = strtok(NULL, SPCHARS) ){
                if ( ( len = strlen(pWord) ) > longest ){
                        longest = len;
                        pLongest = pWord;
                }
        }

Объяснение кода листинга программы

  1. pWord - это указатель на текущее слово в строке. Значение pWord меняется на каждом шаге цикла.
  2. strtok(NULL, SPCHARS) - это функция, которая разделяет строку на слова и возвращает указатель на следующее слово в строке. В данном случае, мы начинаем с разделения всей строки на слова и затем переходим к следующему слову.
  3. len - это переменная, которая хранит длину текущего слова.
  4. longest - это переменная, которая хранит длину самого длинного слова, найденного до сих пор.
  5. pLongest - это указатель на самое длинное слово, найденное до сих пор.
  6. Если длина текущего слова больше, чем длина самого длинного слова, найденного до сих пор, то:
    • longest обновляется до длины текущего слова.
    • pLongest обновляется до указателя на текущее слово.
  7. Цикл продолжается, пока есть еще слова в строке.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.2 из 5
Похожие ответы