Palindrome is a string, which when read in both forward and backward way is same.
Example: radar, madam, pop, lol, etc.,
Example: radar, madam, pop, lol, etc.,
Program:
#include <stdio.h> #include <string.h> int main() { char string1[20]; int i, length; int flag = 0; printf("Enter a string: \n"); scanf("%s", string1); length = strlen(string1); for(i=0;i < length ;i++){ if(string1[i] != string1[length-i-1]){ flag = 1; break; } } if (flag) { printf("%s is not a palindrome\n", string1); } else { printf("%s is a palindrome\n", string1); } return 0; }
Output:
Enter a string: radar
“radar” is a palindrome
“radar” is a palindrome
Explanation with example:
To check if a string is a palindrome or not, a string needs to be compared with the reverse of itself. Consider a palindrome string: "radar", --------------------------- index: 0 1 2 3 4 value: r a d a r --------------------------- To compare it with the reverse of itself, the following logic is used: 0th character in the char array, string1 is same as 4th character in the same string. 1st character is same as 3rd character. 2nd character is same as 2nd character. . . . . ith character is same as 'length-i-1'th character. If any one of the above condition fails, flag is set to true(1), which implies that the string is not a palindrome. By default, the value of flag is false(0). Hence, if all the conditions are satisf
No comments:
Post a Comment