Programming
A string is a sequence of characters and we can access any character by its index.
So we can treat a string as a 1D array.
Note: Array indexing starts from 0 and it is also common in many programming languages like C, C++, C#, Java, Php, Ruby, Python etc...
+-------------------------+
|Index| 0 | 1 | 2 | 3 | 4 |
+-------------------------+
|Chars| H | e | l | l | o |
+-------------------------+
We will use variable str to store the string and tmp to swap characters of the string str
Take a string from user and store it in variable str
Set begin to 0 (first index of the string)
Set end to L (last index of the string)
Swap str[begin] with str[end] till begin < end
Print str to get the required reversed string
If the reverse of a string is equal to the original string then we call it a palindrome.
Palindrome Example: madam
#include <stdio.h>
#include <string.h>
int main(){
char str[100], tmp, rev[100];
int begin, end;
//input
printf("Enter string: ");
scanf("%s", &str);
//copy str to rev
strcpy(rev,str); //rev will be used to check palindrome
//reverse
begin = 0;
end = strlen(str) - 1; //-1 because last character is NULL \0
while(begin < end){
tmp = str[begin];
str[begin] = str[end];
str[end] = tmp;
begin++;
end--;
}
//output
printf("Reverse string: %s\n", str);
//checking palindrome
if(strcmp(rev,str) == 0)
printf("%s is palindrome!\n", str);
else
printf("%s is not palindrome!\n", str);
return 0;
}
ADVERTISEMENT