Try this you still need to modify a few things like taking the \n out of the string firstname and lastname and not use fflush to clear the stdin buffer
Code:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define A 100
#define B 90
#define C 80
#define D 70
#define E 60
#define ZERO 0
int main()
{
/*char ch;*/
char firstname[80], lastname[80];
/*char low=3;
char high=12;*/
int mark=0, n=0;
int randNumber;
srand(time(0));
randNumber=rand() % 10 + 3;
printf("The number of students in the class is %d.\n", randNumber);
while (n != randNumber)
{
n++;
printf ("Please enter your first name: \n");
fgets(firstname, sizeof firstname, stdin);
fflush(stdin);
printf ("Please enter your last name: \n");
fgets(lastname, sizeof lastname, stdin);
fflush(stdin);
printf ("Please enter your marks: \n");
scanf ("%d", &mark);
fflush(stdin);
if (mark >= B && mark <= A)
printf("%s %s %d Grade A\n", firstname, lastname, mark);
else if (mark >= C && mark <= B)
printf("%s %s %d Grade B\n", firstname, lastname, mark);
else if (mark >= D && mark <= C)
printf("%s %s %d Grade C\n", firstname, lastname, mark);
else if (mark >= E)
printf("%s %s %d Grade D\n", firstname, lastname, mark);
else if (mark < E)
printf("%s %s %d Grade F\n", firstname, lastname, mark);
else
printf("Marks are invalid./n");
}
return 0;
}
[edit]
Your logic was out too you use || instead of && its now changed
[/edit]