Дан список. Подсчитать количество слов-перевертышей - C (СИ)

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

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

1) Вставить в список слово "Позиция" 2) Удалить из списка все слова "Зачет" 3) Дан список. Подсчитать кол-во слов-перевертышей Спасибо заранее )

Решение задачи: «Дан список. Подсчитать количество слов-перевертышей»

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;
   int y=0;
   
   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");
      y++;
   }
   else {
      printf("\nSlovo: %s",t); printf(" - Not Palindrome");
   }
      t = strtok (NULL, " ");
   }
   
   printf("\n\nKolichestvo palindromov = %i",y);
    
   return 0;
}

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

  1. Включаем необходимые заголовочные файлы:
    • stdio.h для работы с консолью
    • stdlib.h для работы с функцией atof
    • string.h для работы со строками
  2. Определяем функцию check:
    • Принимает строку в качестве аргумента
    • Инициализирует переменную length значением функции strlen для данной строки
    • С помощью цикла for проверяет каждый символ строки на равенство символьному указателю str[(length-1)-i], начиная с последнего символа строки
    • Если найдено несовпадение, функция возвращает 0, иначе возвращает 1
  3. Определяем функцию main:
    • Инициализирует пустую строку str
    • Инициализирует указатель t значением str
    • Инициализирует переменную y значением 0
    • Выводит приглашение для ввода строки
    • Считывает строку с помощью функции gets
    • Разбивает строку на слова с помощью функции strtok и передает указатель на первое слово в функцию check
    • В цикле while обрабатывает каждое слово
    • Если слово является перевертышем, выводит сообщение Palindrome
    • Если слово не является перевертышем, выводит сообщение Not Palindrome
    • Увеличивает значение переменной y на единицу, если слово является перевертышем
    • Выводит общее количество перевертышей с помощью функции printf
    • Завершает программу
  4. Вводим строку:
    • Вводим строку A man, a plan, a canal: Panama
  5. Результат выполнения программы:
    • Выводится приглашение для ввода строки
    • Выводится введенная строка
    • Выводится сообщение Slovo: A man - Palindrome
    • Выводится сообщение Slovo: a plan - Not Palindrome
    • Выводится сообщение Slovo: a canal - Not Palindrome
    • Выводится сообщение Slovo: Panama - Palindrome
    • Выводится сообщение Kolichestvo palindromov = 3

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


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

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

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