Составить программу, определяющую длину самого длинного слова в предложении - C (СИ)

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

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

Помогите написать две программа, на допуск к зачету нужно... спасибо... Составить программу, определяющую длину самого длинного слова в предложении.

Решение задачи: «Составить программу, определяющую длину самого длинного слова в предложении»

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
int main()
{
   const char CText[] = "Hello World. I Am Student. I do not want to learn. Help!";
 
   const char* pstr = CText;
 
   const char* maxStr = NULL;
   size_t maxLen = 0;
 
   const char* begin;
   const char* end;
 
   while (*pstr)
   {
      for (; *pstr && !isalpha(*pstr); ++pstr) { ; }
      begin = pstr;
 
      for (; *pstr && isalpha(*pstr); ++pstr) { ; }
      end = pstr;
 
      if (begin < end)
      {
         if (maxLen < end - begin)
         {
            maxLen = end - begin;
            maxStr = begin;
         }
      }
   }
 
   if (maxStr && maxLen)
   {
      printf("word: %.*s\nsize: %u\n",
              maxLen, maxStr, maxLen);
   }
 
   return 0;
}

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

  1. Включаем необходимые заголовочные файлы для работы с консолью и проверки символов.
  2. Объявляем переменные: — CText — строка, содержащая предложение, в котором необходимо найти самое длинное слово. — pstr — указатель на текущий символ в строке CText. — maxStr — указатель на самое длинное слово. — maxLen — длина самого длинного слова. — begin — указатель на первый символ текущего слова. — end — указатель на последний символ текущего слова.
  3. Запускаем цикл, который будет проходить по каждому символу в строке CText.
  4. Внутри цикла, с помощью первого вложенного цикла, пропускаем все символы, которые не являются буквами.
  5. С помощью второго вложенного цикла, находим конец текущего слова.
  6. С помощью третьего вложенного цикла, проверяем, является ли текущее слово самым длинным.
  7. Если текущее слово оказывается самым длинным, обновляем значения переменных maxLen и maxStr.
  8. После завершения цикла, проверяем, было ли найдено самое длинное слово.
  9. Если самое длинное слово было найдено, выводим его на экран, вместе с его длиной.
  10. Завершаем программу.

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


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

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

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