Intanto non vedo traccia di palindromi.. Mi pare piu` che tu voglia solo invertire una stringa.

Il warning e` dovuto a questo fatto (a parte che il codice e` sbagliato):

codice:
char palindro( char c[], int dim )
{
    int i;

    for( i = dim; i > 0; i-- )
    {
        return c[ i ];
    }
}
Se per caso passi un valore di 'dim' minore o uguale a 0 (ed e` possibile perche` e` int), allora quella funzione - che deve ritornare un 'char' - non trova nessuna istruzione 'return', ed e` quello che il compilatore ti ha segnalato.

La traduzione e` infatti: "Non tutti i percorsi restituiscono un valore."

Ciao.