In this program, we are going to share a C program to check string is palindrome using stack. If you are a beginner and want to start learning the C programming, then keep your close attention in this tutorial as I am going to share a C program to check string is palindrome using stack.
We have designed this program for beginners for learning purpose. Copy below c program and execute it with c compiler to see the output of the program.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
#include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 50 int top = -1, front = 0; int stack[MAX]; void push(char); void pop(); void main() { int i, choice; char s[MAX], b; while (1) { printf("1-enter string\n2-exit\n"); printf("enter your choice\n"); scanf("%d", &choice); switch (choice) { case 1: printf("Enter the String\n"); scanf("%s", s); for (i = 0;s[i] != '\0';i++) { b = s[i]; push(b); } for (i = 0;i < (strlen(s) / 2);i++) { if (stack[top] == stack[front]) { pop(); front++; } else { printf("%s is not a palindrome\n", s); break; } } if ((strlen(s) / 2) = = front) printf("%s is palindrome\n", s); front = 0; top = -1; break; case 2: exit(0); default: printf("enter correct choice\n"); } } } void push(char a) { top++; stack[top] = a; } void pop() { top--; } |
If you like FreeWebMentor and you would like to contribute, you can write an article and mail your article to [email protected] Your article will appear on the FreeWebMentor main page and help other developers.