ok ... ho dato una lettura veloce al codice
il problema è che tu fai un poco di confusione con gli array, per l'appunto
gli array sono degli insieme di elementi, ovvero, in questo caso, s corrisponde ad un'insieme di caratteri
ora, a parte che sbagli a passare il tipo alle funzioni, queste possono lavorare soltanto con un singolo carattere per volta non con l'intero array
---
per rendere TUTTO maiuscolo il testo tu devi passare l'intero vettore e specificare nella funzione che ricevi in entrata l'intero vettore/array
quindi
char[] maiuscolo (char[] testo)
in questo modo dichiari che in entrata ricevi un dato e che in uscita ne ricevi un'altro ... ovvero un vettore di caratteri in entrata ed un vettore di caratteri in uscita
dopo di che devi ciclare l'intero vettore tramite un for e applicare la toupper (o tolower) a ogni singolo elemento
ovvero, mettendo che i sia il counter del for
testo[i] = toupper(testo[i]);
e poi alla fine del for
return testo;
in questo modo la funzine ritorna il testo modificato che tu devi acquisire e stampare a video
quindi
char minuscole (char s);
(che era errato in tutto e per tutto)
diventa
s = minuscole(s);
in questo modo la varaibile
s
conterrà il testo in minuscolo
stessa operazione per l'altra funzione e hai finito