Исправить код по нахождению слов-палиндромов - C (СИ)

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

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

Помогите исправить ошибки в задаче про проверку является ли слово оборотнем. Например maam - слово оборотень, mama - нет.
#include <stdio.h>
int main (void)
{
int flag, i, n;
char a[];
flag==1;
n==length(a);
printf ("Vvedite slovo: ");
scanf ("%s", &a[]);
while (flag == 1)
  {
  if (a[i]==a[n+1-i])
    flag=1;
  else
    {
    flag==0;
    printf ("ne oboroten'");
    }
  ++i;
  }
  if (flag == 1)
    printf ("slovo oboroten'");
  return 0;
}

Решение задачи: «Исправить код по нахождению слов-палиндромов»

textual
Листинг программы
#include <string.h>
 
/* ReverseLine:  обращает строку l */
void ReverseLine(char *l)
{
    char *leftp, *rightp;
    int c;
    
    if (l == NULL)
        return;
    for (leftp = l, rightp = l+strlen(l)-1;
         leftp < rightp;
         leftp++, rightp--)
        c = *leftp, *leftp = *rightp, *rightp = c;
}
 
/* CompareLine:  сравнивает строки l и patt */ 
int CompareLine(const char *l, const char *patt)
{
    if (strcmp(s, patt) != 0)
        return 0;
    return 1;    
}

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

Отсортированный список действий в коде:

  1. ReverseLine: функция переворачивает строку l.
  2. CompareLine: функция сравнивает строки l и patt.
  3. Если строки не равны, то возвращается 0.
  4. Если строки равны, то возвращается 1.

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


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

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

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