Hola he hecho este programa a base de dos funciones ( suprimir espacios , e invertir cadena) y finalmente copiando una cadena en otra y comparándolas trato de determinar si espalindromo, pero la última parte no me funciona; me podeis ayudar por favor?
Código (c) [Seleccionar]
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<string.h>
#include<ctype.h>
char matriz[30];
char matriz_alreves[30];
void suprimir_espacios (char m[]);
void invertir_cadena (char c[]);
void palindromo (char c[], char m[]);
main()
{
suprimir_espacios (matriz);
strcpy (matriz_alreves, matriz);
invertir_cadena (matriz_alreves);
palindromo (matriz_alreves, matriz);
getch();
}
void suprimir_espacios (char m[])
{
int i, j;
printf("Dime un texto conespacios por favor:");
gets (m);
for (i=0; i<strlen (m);i++)
{
m[i]= (tolower(m[i]));
if (m[i]==' ')
{
for (j=i+1; m[j]!='\0'; j++)
{
m[j-1]=m[j];
}
m[j-1]='\0';
}
}
printf("%s",m);
}
void invertir_cadena (char c[])
{
int i, j;
char aux[30];
while (i>0)
aux[j++]=c[--i];
}
void palindromo (char c[], char m[])
{
if (strcmp(c,m)==0)
printf("Es palindromo\n");
else
printf("No es palindromo\n");
}