Cuenta las calificaciones con letras

#include <stdio.h>
 
/* la función main comienza la ejecución del programa */
int main()
{
   int calificacion;  /* una calificación */
   int cuentaA = 0;  /* número de As */
   int cuentaB = 0;  /* número de Bs */
   int cuentaC = 0;  /* número de Cs */
   int cuentaD = 0;  /* número de Ds */
   int cuentaF = 0;  /* número de Es */
 
   printf(  "Introduzca la letra de la calificacion.n"  );
   printf(  "Introduzca el caracter EOF para finalizar la entrada de datos.n"  );
 
   /* repite hasta que el usuario digita la secuencia de teclas de fin-de-archivo */
   while ( ( calificacion = getchar() ) != EOF ) {
 
      /* determina cual calificación se introdujo */
      switch ( calificacion ) { /* switch anidado dentro del while */
 
         case 'A': /* la calificación es A */
         case 'a': /* o a */
            ++cuentaA; /* incrementa cuentaA */
            break; /* necesario para salir de switch */
 
         case 'B': /* la calificación es B */
         case 'b': /* o b */
            ++cuentaB; /* incrementa cuentaB */
            break; /* sale de switch */
 
         case 'C': /* la calificación es C */
         case 'c': /* o c */
            ++cuentaC; /* incrementa cuentaC */
            break; /* sale de switch */
 
         case 'D': /* la calificación es D */
         case 'd': /* o d */
            ++cuentaD; /* incrementa cuentaD */
            break; /* sale de switch */
 
         case 'F': /* la calificación es F */
         case 'f': /* o f */
            ++cuentaF; /* incrementa cuentaF */
            break; /* sale de switch */
 
         case 'n': /* ignora nuevas líneas, */
         case 't': /* tabuladores, */
         case ' ':  /* y espacios en la entrada */
            break; /* fin de switch */
 
         default: /* atrapa todos los demás caracteres */
            printf( "Introdujo una letra incorrecta." ); 
            printf( " Introduzca una nueva calificacion.n" ); 
            break; /* opcional; de todas maneras saldrá del switch */
      } /* fin de switch */
 
   } /* fin de while */
 
   /* muestra el resumen de los resultados */
   printf( "nLos totales por calificacion son:n" );
   printf( "A: %dn", cuentaA ); /* despliega el número de calificaciones A */
   printf( "B: %dn", cuentaB ); /* despliega el número de calificaciones B */
   printf( "C: %dn", cuentaC ); /* despliega el número de calificaciones C */
   printf( "D: %dn", cuentaD ); /* despliega el número de calificaciones D */
   printf( "F: %dn", cuentaF ); /* despliega el número de calificaciones F */
 
   return 0; /* indica terminación exitosa del programa */
 
} /* fin de la función main */

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)