Для каждого слова первого предложения определить, входит ли оно во второе предложение - C (СИ) (148650)

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

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

1) Даны два предложения. Для каждого слова первого предложения определить, входит ли оно во второе предложение. Повторяющиеся слова первого предложения не рассматривать.

Решение задачи: «Для каждого слова первого предложения определить, входит ли оно во второе предложение»

textual
Листинг программы
#include <stdlib.h>
#include <string.h>
#include <stdio.h>
int main(void)
{
   char istr [100];    /* Объявление исходной строки */
   char fword [100];   /* Объявление строки поиска */
   char *sword;        /* Объявление указателя на строку */
   char divstr [] = " .,;:?!()[]{}<>"\'-+*/"; /* Строка разделителей */
   int nw, nfw = 0;    /* Счетчики количества слов и найденных слов*/
   printf ("\nEnter string: ");  /* Ввод исходной */
   gets(istr);                              /*    строки     */
   for (;;)
   {
      printf ("\nEnter search word: ");     /* Ввод слова */
      gets(fword);                             /*   поиск cлова   */
      if (strpbrk(fword,divstr) == NULL) /* Проверка введенного слова */
         break;                          /*   на символы-разделители  */
      else
         printf("Wrong word.");     /* Повторный ввод строки */
   }
   sword=strtok (istr,divstr); /* Поиск первого слова */
   for (nw = 0 ; sword != NULL ; nw++)  /* Просмотр слов строки */
   {
     if (strcmp (fword,sword) == 0)    /* Определение количества */
        nfw++;                         /* найденных слов в строке */
     sword=strtok (NULL,divstr);       /* Поиск следующего слова */
   }
        /* Печать результата */
   printf ("\nTotal number of words in string: %d.\
   Number of <%s> word: %d.", nw,fword,nfw);
   getchar();             /* Ввод символа */
   getchar();             /* Ввод символа */
   return 0;              /* Выход из программы */
}

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

  1. Ввод исходной строки и слова для поиска
  2. Проверка введенного слова на символы-разделители, если слово содержит символы-разделители, то выводится сообщение Wrong word и происходит повторный ввод строки
  3. Поиск первого слова в исходной строке с помощью функции strtok
  4. Просмотр слов строки с помощью цикла for и функции strcmp для определения количества слов, соответствующих искомому слову
  5. Печать результата, включая общее количество слов в строке и количество слов, соответствующих искомому слову
  6. Ввод символа для завершения работы программы

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


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

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

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