Вывести на экран слова из этой строки, которые одинаково читаются слева направо и справа налево (палиндромы) - 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; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы со строками и памятью.
- Определение функции проверки палиндрома с помощью цикла, сравнивая символы строки от начала и конца.
- Ввод строки с помощью функции gets.
- Разделение строки на слова с помощью функции strtok и сохранение первого слова в отдельной переменной.
- Проверка каждого слова на палиндром с помощью функции check и вывод результата на экран.
- Повторение цикла, пока не будут проверены все слова.
- Возврат 0 в конце программы для корректного завершения работы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д