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; }