Hello, I am trying to create a program that is supposed to calculate and print the average of several grades entered by the user.
The output is supposed to look something like this:
----------------------------------------------------------------------
This program calculates the average of as many grades you wish to enter.
First, enter the number of grades to process: 4
Now enter the 4 grades to be averaged.
Enter grade #1: 90
Enter grade #2: 80
Enter grade # 3: -20
*** Invalid entry. Grade must be 0 to 100. ***
Enter grade #3: 25
Enter grade #4: 54
The average of the 4 grades entered is 62
You have a letter grade of D-
----------------------------------------------------------------------
Here is what I have so far:
-----------------------------------------------------------------------
Code:
#include <stdio.h>
int main(void)
{
/* Output initial greeting and introduce program */
/* --------------------------------------------- */
printf ("This program caluculates the average of as many grades as you wish to enter.\n");
/* Declare variables. */
int number_of_grades, i, grade;
int grade_total = 0;
int invalid_entry = 0;
float average;
char letter_grade;
char grade_A, grade_AB, grade_B, grade_BC, grade_C, grade_CD, grade_D, grade_F;
/* Prompt user for number of grades to be entered. */
/* ------------------------------------------------*/
printf ("First, enter the number of grades to process: ");
scanf ("%i", &number_of_grades);
/* Output appropriate message based on number of grades entered. */
/*---------------------------------------------------------------*/
printf ("Now enter the %i grades to be averaged.\n", number_of_grades);
for (i = 1; i <= number_of_grades; i++)
{
/* Prompt user for grades. */
/* ----------------------- */
printf ("Enter grade #%i: ", i);
scanf ("%i",&grade);
/* If grade is out of range (less than zero, OR greater than
100), output error message, otherwise output grade entered.*/
/* ---------------------------------------------------------- */
if (grade > 100 || grade < 0)
{
printf ("*** Invaid entry. Grade must be 0 to 100. ***\n");
i --;
}
else
{
/* Assign values */
/* --------------*/
grade_total = grade_total + grade;
}
} // end for loop
/* Calculate average and display output */
/* ------------------------------------ */
average = (float) grade_total / number_of_grades;
printf("\nThe average of the %i grades entered is: %.0f", number_of_grades, average);
/* Assign values to letter grades */
/* -------------------------------*/
letter_grade = grade_total / number_of_grades;
if ( (char) average >= 93 && <= 100)
{
printf ("You have a letter grade of %c\n", grade_A);
}
else ( (char) average <= 92 && >= 88)
}
printf ("You have a letter grade of %c\n", grade_AB);
{
if ( (char) average <= 87 && >= 83)
}
printf (" You have a letter grade of \n", grade_B);
{
else ( (char) average <= 82 && >= 78)
}
printf ("You have a letter grade of\n, grade_BC");
{
if ( (char) average<= 77 && >= 73)
}
printf ("You have a letter grade of C\n");
{
else ( (char) average <= 72 && >= 68)
}
printf ("You have a letter grade of\n", grade_CD);
{
if ( (char) average <= 67 && >= 63)
}
printf ("You have a letter grade of\n", grade_D);
{
else ( (char) average <= 62 && >= 0)
}
printf ("You have a letter grade of\n", grade_F);
{
} //end main
------------------------------------------------------------------------
The program isn't working and I can't figure out how to fix it. I am getting errors on lines 76,86,91,98,105,112,119,and 126. Any help would be much appreciated.