Как проверить, является ли данная строка палиндромом, используя указатели в C ++?

1 Ответы


  • // Проверяем, является ли строка палиндромом
    #include \\\ "stdafx.h \\\"
    #include
    #include
    #include
    void test (char message []);
    int Палиндром (сообщение символа []);
    void main ()
    {
    char message1 [] = "я был способен до того, как увидел эльбу";
    char message2 [] = "это Тойота";
    char message3 [] = "Тойота";
     
    тест (сообщение1); \
    тест (сообщение2); \
    тест (сообщение3); \
    возврат;
    }
    недействительный тест (char сообщение [])
    {
    printf ("% s", сообщение);
    if (Palindrome (message)) // Отправляем указатель на сообщение
     printf ("это палиндромен");
    else
     printf ("не палиндромен");
    }
    int Palindrome (char message [])
    {
     // найти конец сообщения
    int start, end, ret;
    ret = 1; // установить для кода возврата значение true
    for (end = 0; message [end]; ++ end); // находим конец сообщения
    end - = 1; // резервное копирование до последнего символа сообщения
    for (start = 0; start! = end; ++ start, - end) // цикл до тех пор, пока мы не встретим 
    {
     if (message [start] == ​​'') ++ start; // игнорировать пробелы 
     if (message [end] == '') --end; //
     if (message [start]! = message [end]) // сравнение передних 2 назад
     {
      ret = 0; // если не равно, заменить код возврата на false 
      break; // и выходим  
      }
    }
    return (ret); // вернем истину или ложь
    }

Напишите свой ответ

Ваш ответ появится после модерации