Вывести слова в строке, которые содержат больше 6 символов - C (СИ)

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

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

Привет. Пробывал использовать strlen для подсчета количества символов,но считывает всю длину строки. Пробывал сделать проверку условия на " " пробел. Помогите реализовать
Листинг программы
  1. for(int i=0,str[i]!="/0"; i++)
  2. if(str[i]==" ") p=i;
  3. for(int i=p+1,str[i]!="/0"; i++)
  4. //*тут слово записывается в другой массив*//
  5. if(strlen(str)>6) { puts(str);}

Решение задачи: «Вывести слова в строке, которые содержат больше 6 символов»

textual
Листинг программы
  1. char strS[1000] = "wwwwwwwwwwwwwwwwww qwwe qdddddddcasc sdv 111111111111111111";
  2. char strS1[100];
  3.  
  4. while(strrchr(strS,' ') != NULL)
  5. {
  6.    strcpy(strS1, strrchr(strS,' ') + 1);
  7.    strcpy(strrchr(strS,' '),"\0");
  8.    if(strlen(strS1) > 6)
  9.    {
  10.       printf("%s\n", strS1);
  11.    }
  12.    strcpy(strS1,"\0");
  13. }
  14.  
  15. if(strlen(strS) > 6)
  16. {
  17.    printf("%s\n", strS);
  18. }

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

  1. Объявлены две переменные: strS[1000] и strS1[100].
  2. В строку strS внесены данные: wwwwwwwwwwwwwwwwww qwwe qdddddddcasc sdv 111111111111111111.
  3. В цикле while происходит поиск каждого слова в строке strS, используя функцию strrchr, которая ищет последнее вхождение пробела в строке.
  4. Каждое найденное слово копируется в строку strS1, начиная с первого символа после пробела, при этом в строку strS1 записывается символ '\0' в конце слова.
  5. Проверяется длина слова в strS1. Если она больше 6, то слово выводится на экран с помощью функции printf.
  6. После каждой итерации цикла while, в strS1 записывается символ '\0', чтобы очистить его для следующего слова.
  7. После окончания цикла while, проверяется длина строки strS. Если она больше 6, то строка выводится на экран с помощью функции printf.

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


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

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

11   голосов , оценка 4.182 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы