Вывести на экран слова из этой строки, которые одинаково читаются слева направо и справа налево (палиндромы) - C (СИ)

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

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

Составить программу, которая вводит с клавиатуры строку, содержащую до 80 символов, и выводит на экран слова из этой строки, которые одинаково читаются слева направо и справа налево (палиндромы). В случае отсутствия таких слов выводится соответствующее сообщение.

Решение задачи: «Вывести на экран слова из этой строки, которые одинаково читаются слева направо и справа налево (палиндромы)»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int check (char str[])
{
   int i,length;
    
   length=strlen(str);
    
   for (i=0;i<length;i++)
      if (str[i]!=str[(length-1)-i]) return 0;
   return 1;
}
 
int main(void)
{
   char str[80];
   char* t;
   
   printf("\n");
   printf("\nVvedite stroku:\n");
    
   gets(str);
   t=strtok(str," ");
   printf("\n");
    
   while (t != NULL) {
   if (check(t)==1) {
      printf("\nSlovo: %s",t);
      printf(" - Palindrome");
   }
   else {
      printf("\nSlovo: %s",t); printf(" - Not Palindrome");
   }
      t = strtok (NULL, " ");
   }
    
   return 0;
}

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

  1. Подключение необходимых библиотек для работы со строками и памятью.
  2. Определение функции проверки палиндрома с помощью цикла, сравнивая символы строки от начала и конца.
  3. Ввод строки с помощью функции gets.
  4. Разделение строки на слова с помощью функции strtok и сохранение первого слова в отдельной переменной.
  5. Проверка каждого слова на палиндром с помощью функции check и вывод результата на экран.
  6. Повторение цикла, пока не будут проверены все слова.
  7. Возврат 0 в конце программы для корректного завершения работы.

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


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

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

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