Salve ragazzi ho questo esrcizio che mi chiede di contare quante lettere sono state inserite in input dall'utente! Quello che mi succede è che i contatori delle varie lettere nella funzione Stampa non vengono aggiornati e mi ritornano sempre con il valore uguale a 0 così come li ho inizializzati nel main! Qualcuno sa dirmi dove sta lo sbaglio?
codice:
#include<iostream>
#include<stdio.h>
#include<cstdlib>
void Conta (char *grade, int *aCount, int *cCount, int *bCount){
printf("Inserisci dei voti a lettera\n");
while((*grade=getchar())!=EOF){
switch(*grade){
case 'A':
case 'a':
*aCount++;
break;
case'B':
case'b':
*bCount++;
break;
case 'C':
case'c':
*cCount++;
break;
case '\n':
case'\t':
case ' ':
break;
default:
printf("\nLettera non corretta\n");
printf("\nPrego inserire una lettera tipo A,B o C(o loro minuscole)\n");
break;
}
}
return;
}
void Stampa( int *aCount, int *bCount, int *cCount){
printf("\nIl numero delle lettere digitato e': ");
printf("\nA: %d",*aCount);
printf("\nB: %d",*bCount);
printf("\nC: %d",*cCount);
return ;
}
int main () {
char grade;
int aCount=0,bCount=0,cCount=0;
Conta(&grade,&aCount,&bCount,&cCount);
Stampa(&aCount,&bCount,&cCount);
return 0;
}