Untitled

 avatar
unknown
c_cpp
a month ago
1.5 kB
4
Indexable
/*
Scrivere un sottoprogramma che ricevuta in ingresso una stringa ne restituisce una nuova in cui tutti i vocaboli iniziano con la lettera maiuscola e
sono seguiti da lettere minuscole.
Esempio:
Se la stringa in ingresso contiene
"Questo e’ un esperimento per l’esercizio IN questione e VErificare se Funziona "
il sottoprogramma restituisce la nuova stringa che contiene
"Questo E’ Un Esperimento Per L’Esercizio In Questione E Verificare Se Funziona "
*/
#include <stdio.h>
#include <stdlib.h>

int isLettera(char c)
{
    if((c > = 'a' && c <= 'z') || c >= 'A' && c<= 'Z'){
        return 1;
    }else{
        return 0;
    }
}

char* convertiParola(char *parola)
{
    if (parola == NULL)
    {
        return NULL;
    }
    
    int lunghezza = strlen(parola);
    char *risultato = (char*)malloc((lunghezza+1)*sizeof(char));
    
    int flag = 1;
    for(int i=0; i<lunghezza; i++)
    {
        if(isLettera(parola[i]))
        {
            if(flag){
                if(parola[i] >= 'a' && parola[i] <= 'z')
                {
                    risultato[i] = parola[i]-('a' - 'A');
                    flag =0;
                }
            }else{
                risultato[i] = parola[i]+('a' - 'A');
            }
        }else{
            risultato[i] = parola[i];
            if(parola[i] == ' ')
            {
                flag = 1;
            }
        }
    }
}

int main() {
    // Write C code here
    printf("Try programiz.pro");

    return 0;
}
Leave a Comment