Skip to content
Related Articles

Related Articles

Save Article
Improve Article
Save Article
Like Article

C Program to Check if a Given String is Palindrome

  • Difficulty Level : Basic
  • Last Updated : 25 Jul, 2021

Given a string, write a c function to check if it is palindrome or not. 
A string is said to be palindrome if reverse of the string is same as string. For example, “abba” is palindrome, but “abbc” is not palindrome.


Attention reader! All those who say programming isn't for kids, just haven't met the right mentors yet. Join the  Demo Class for First Step to Coding Coursespecifically designed for students of class 8 to 12. 

The students will get to learn more about the world of programming in these free classes which will definitely help them in making a wise career choice in the future.


1) Find length of str. Let length be n. 
2) Initialize low and high indexes as 0 and n-1 respectively. 
3) Do following while low index ‘l’ is smaller than high index ‘h’. 
…..a) If str[l] is not same as str[h], then return false. 
…..b) Increment l and decrement h, i.e., do l++ and h–. 
4) If we reach here, it means we didn’t find a mis
Following is C implementation to check if a given string is palindrome or not.


#include <stdio.h>
#include <string.h>
// A function to check if a string str is palindrome
void isPalindrome(char str[])
    // Start from leftmost and rightmost corners of str
    int l = 0;
    int h = strlen(str) - 1;
    // Keep comparing characters while they are same
    while (h > l)
        if (str[l++] != str[h--])
            printf("%s is not a palindrome\n", str);
    printf("%s is a palindrome\n", str);
// Driver program to test above function
int main()
    return 0;
abba is a palindrome
abbccbba is a palindrome
geeks is not a palindrome

Recursive function to check if a string is palindrome
Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above

My Personal Notes arrow_drop_up
Recommended Articles
Page :