[C] funzione caratteri alfabetici e non

di il
2 risposte

[C] funzione caratteri alfabetici e non

Ciao ragazzi e complimenti per il vostro forum.questo è il mio primo messaggio.
l'esercizio che volevo proporvi è il seguente:
Scrivere il codice una funzione C che restituisca un vettore di quattro interi contenente il numero di caratteri alfabetici in maiuscolo,il numero di caratteri alfabetici in minuscolo, il numero delle cifre ed il numero di caratteri non alfanumerici contenuti in una stringa passata come argomento alla funzione

La mia soluzione invece è:

Int *count(char *str) {
int i, p[4];
for (i=0; i<’\0’; i++) {
if (i =’A’ && i =’Z’)
p[0]++;
if (i =’a’ && i =’z’)
p[1]++;
if (i =’0’ && i =’9’)
p[2]++;
if (i != p[0] && i != p[1] && i != p[2])
p[3]++;
return p;
}
}

che ne dite vi sembra giusto?
potreste dirmi dove sbaglio?

2 Risposte

  • Re: [C] funzione caratteri alfabetici e non

    Pablito è rognoso ma lo devo fare: Leggi il regolamento e impara a mettere i tag code. Non ci va molto
    [code]metti il tuo codice qui[/code]
  • Re: [C] funzione caratteri alfabetici e non

    pablito92 ha scritto:


    
    ...
    for (i=0; i<’\0’; i++) {
    ..
    
    che ne dite vi sembra giusto?
    potreste dirmi dove sbaglio?
    Sbagli ad usare la variabile..
    i è un intero che usi da indice per sapere in quale posizione ti trovi all'interno della stringa str che se noti l'accetti come parametro ma non la usi da nessuna parte.

    Corretto:
    
    for ( i = 0; str[i] != '\0'; i++ ) {
     if ( str[i] >= 'A' && str[i] <= 'Z' )
          p[0]++;
     /*ecc.. */
    }
    
Devi accedere o registrarti per scrivere nel forum
2 risposte