Programma maiuscole/minuscole

di
Anonimizzato19419
il
5 risposte

Programma maiuscole/minuscole

Sera!
Qualcuno potrebbe gentilmente spiegarmi perché il seguente programma in linguaggio C non funziona minimamente, nonostante a me sinceramente paia tutto corretto?

#include <stdio.h>
#include <ctype.h>
#include <string.h>


int main(void)
{
char frase[100];
char nuova[100];
int i=0;
int lun;

gets(frase);
lun = strlen(frase);

while(i<10) {

nuova = toupper(frase);
i+=1;

while(frase != ' ') {

nuova = tolower(frase);
i+=1;

}

i+=1;

}


nuova[lun] = '\0';
printf("%s", nuova);

return 0;

}

Questo programma dovrebbe visualizzare la frase immessa dall'utente in modo tale che il primo carattere di ciascuna parola nella frase di partenza è stato reso maiuscolo, e tutti i restanti resi minuscoli. Si ipotizza inoltre che il primo carattere della frase non sia uno spazio o altro. Lo compila correttamente, ma quando lo lancio, immetto la frase e premo invio mi vedo soltanto lampeggiare davanti il cursore senza esito alcuno.

Qualcuno potrebbe darmi una mano?
Grazie in anticipo a tutti quelli che mi aiuteranno.

5 Risposte

  • Re: Programma maiuscole/minuscole

    Putrtoppo nel copia e incolla da CodeBlocks sono andati via i rientri orizzontali nei blocchi, spero sia chiaro ugualmente.
  • Re: Programma maiuscole/minuscole

    Non capisco perché utilizzi il valore 10 nel ciclo esterno e come mai non controlli mai di non superare la lunghezza della stringa originale.
  • Re: Programma maiuscole/minuscole

    Direi che è praticamente tutto da rifare
  • Re: Programma maiuscole/minuscole

    Oregon & +m+:
    Si, avrebbe dovuto essere i<lun,comunque grazie lo stesso, ho risolto, adesso funge!!
  • Re: Programma maiuscole/minuscole

    Non credo ...
Devi accedere o registrarti per scrivere nel forum
5 risposte