Salve a tutti, sto cercando di eseguire un esercizio che mi chiede di creare un programma in grado di contare vocali e consonanti di una stringa immessa dall'utente.
Non riesco a capire perchè il carattere di spazio venga riconosciuto come \0
c'è un errore nel mio codice o non ho capito qualcosa sulle stringhe?
Grazie a tutti, di seguito il codice:
codice:#include <stdio.h> #include <stdlib.h> #define M 15 int main(int argc, char *argv[]) { int k=0,k2=0; char S[M], C; printf("\nInserire una stringa di massimo 15 caratteri:\n"); scanf("%s", S); fflush(stdin); while(S[k]!='\0') { if((S[k]=='A') || (S[k]=='E') || (S[k]=='I') || (S[k]=='O') || (S[k]=='U') || (S[k]=='a') || (S[k]=='e') || (S[k]=='i') || (S[k]=='o') || (S[k]=='u')) k2++; k++; } printf("\nNella stringa sono presenti %d Vocali e %d consonanti.\n",k2,k-k2); system("PAUSE"); return 0; }

Rispondi quotando

