CMSC104, Spring 2007

Programming Project 1

Grade Calculator


Out: Friday, March 30, 2007
UPDATED -- Due: Saturday, April 7, 2007 before 11:59 p.m.


The Objective

This project is designed to give you practice writing a C program on your own. You will also gain experience taking pseudocode you have written and writing the corresponding code. You should practice the incremental programming technique we discussed in class.

The Task

Your job is to write a grade calculating program for CMSC104. You should use the pseudocode portion of your answer for question 2 of Homework 2. As in the pseudocode, you do not have to do any error checking of user input. In addition to printing the average, you should also determine the letter grade that corresponds to the numerical average based on the following scale:
     90% <= A <= 100% 
     80% <= B <   90% 
     70% <= C <   80% 
     60% <= D <   70% 
      0% <= F <   60%
When figuring the letter grade, you should round the number up if the decimal portion is .5 and above. For example, an average of 89.5 is an A.

Sample Output

linux2[14]% gcc -ansi -Wall proj1.c

linux2[15]% a.out

Welcome to the CMSC104 grade calculation program. This
program will calculate the final average and course
grade for a student in CMSC104. The homework, project
and exam grades should be entered individually.  Each
homework is worth 3%, each project is worth 9% and each 
exam is worth 15%.  The quiz grade should be entered as 
an average of all quizzes.  The quizzes are worth 10% of 
the final grade. 

Enter the homework 1 score: 100
Enter the homework 2 score: 80
Enter the homework 3 score: 100
Enter the project 1 score: 75
Enter the project 2 score: 90
Enter the project 3 score: 99
Enter the project 4 score: 100
Enter the exam 1 score: 92
Enter the exam 2 score: 80
Enter the exam 3 score: 81
Enter the quiz average: 90

With an average of 88.11%, your course grade is a B.

Thank you for using the grade calculation program!

linux2[16]% a.out

Welcome to the CMSC104 grade calculation program. This
program will calculate the final average and course
grade for a student in CMSC104. The homework, project
and exam grades should be entered individually.  Each
homework is worth 3%, each project is worth 9% and each 
exam is worth 15%.  The quiz grade should be entered as 
an average of all quizzes.  The quizzes are worth 10% of 
the final grade. 

Enter the homework 1 score: 100
Enter the homework 2 score: 80
Enter the homework 3 score: 100
Enter the project 1 score: 75
Enter the project 2 score: 90
Enter the project 3 score: 99
Enter the project 4 score: 100
Enter the exam 1 score: 92
Enter the exam 2 score: 80
Enter the exam 3 score: 91
Enter the quiz average: 90

With an average of 89.61%, your course grade is a A.

Thank you for using the grade calculation program!

linux2[17]%
    

Submitting the Program

Your program should be in a file called proj1.c. Here is a sample submission command. Note that the project name starts with uppercase 'P'.

linux1[18]% submit cs104 Proj1 proj1.c

To verify that your project was submitted, you can execute the following command at the Unix prompt. It will show the file that you submitted in a format similar to the Unix 'ls' command.

linux1[19]% submitls cs104 Proj1

Last Modified: Tuesday, 10-Apr-2007 18:36:30 EDT