Merhaba arkadaşlar.
Yukrıda gördüğünüz hazırladığım bir program. Programın işlevi A, B, C, D, E, F şeklinde notları giriyoruz ve program bize hangi notu kaç tane öğrenci almış bize söylüyor.
Kısmında EOF (end of file) girilmedi sürece girdi almaya devam edeceği belirtiliyor. Ancak konsola ne "EOF" yazdığımda, ne "eof" yazdığımda ne de ayrı ayrı "E" "O" "F" yazdığımda program while döngüsünden çıkmıyor. Bana yardımcı olursanız çok mutlu olurum.
Kod:
#include <stdio.h>
int main (****)
{
int grade;
unsigned int Ac = 0, Bc = 0, Cc = 0, Dc = 0, Ec = 0, Fc = 0;
puts ("Enter the letter grades.");
puts ("Enter EOF character to end input.");
while (( grade = getchar () ) != EOF )
{
switch (grade)
{
case 'A':
case 'a':
++Ac;
break;
case 'B':
case 'b':
++Bc;
break;
case 'C':
case 'c':
++Cc;
break;
case 'D':
case 'd':
++Dc;
break;
case 'E':
case 'e':
++Ec;
break;
case 'F':
case 'f':
++Fc;
break;
case '\n':
case '\t':
case ' ':
break;
default:
printf ("%s", "Incorrect letter grade entered.");
puts ("Enter new grade.");
break;
}
}
puts ("\nTotals for each letter grade are:");
printf ("A: %u\n", Ac);
printf ("B: %u\n", Bc);
printf ("C: %u\n", Cc);
printf ("D: %u\n", Dc);
printf ("E: %u\n", Ec);
printf ("F: %u\n", Fc);
}
Yukrıda gördüğünüz hazırladığım bir program. Programın işlevi A, B, C, D, E, F şeklinde notları giriyoruz ve program bize hangi notu kaç tane öğrenci almış bize söylüyor.
Kod:
while (( grade = getchar () ) != EOF )
Kısmında EOF (end of file) girilmedi sürece girdi almaya devam edeceği belirtiliyor. Ancak konsola ne "EOF" yazdığımda, ne "eof" yazdığımda ne de ayrı ayrı "E" "O" "F" yazdığımda program while döngüsünden çıkmıyor. Bana yardımcı olursanız çok mutlu olurum.
