Ciao,
ho scritto un programma che serve per capire se la parola inserita dall'utente è palindroma, il programma funziona è solo che quando stampa l'output della parola priama e dopo di essa appaiono dei simboli che variano a seconda di ciò che metto come input.
per esempio quando scrivo vvv
mi da come output di prova: (una specie di croce ma, che non è un più)vvv(freccià rivolta verso l'alto)""
Come posso risolvere questo problema?
codice:
//Numero di parole in una frase
#include <stdio.h>
#include <string.h>
int main()
{
char parola [25], prova[25];
int cnt=0, i=0;
printf("Scrivi una parola: \n");
gets(parola);
for(cnt=0; cnt < strlen(parola); cnt++)
{
parola[cnt] = tolower (parola[cnt]);
}
i=cnt;
cnt=0;
while(i!=0)
{
prova[i]=parola[cnt];
i--;
cnt++;
}
if (strstr(prova,parola)) // Equivale a scrivere if (strstr(s1,s2) != 0) ovvero se il valore di ritorno della funzione non è NULL (cioè che ha trvato qualcosa)
printf("La parola inserita %s e\' palindroma in quanto letta al contrario e\' %s\n", parola, prova);
else //Entra nell'else se il valore di ritorno della funzione è NULL (cioè che non ha trovato niente)
printf ("La parola inserita %s non e\' palindroma in quanto letta al contrario e\' %s\n", parola, prova);
system ("pause");
return 0;
}
Ciao e grazie mille in anticipo