Problem Definition
St. Elmo’s Preparatory School is located on the outskirts of the town of Santa Cruz. The
school has a maximum of 30 teachers dispersed among the classes according to their grade level.
The school has made a name for themselves based on their involvement in various sporting,
academic and social events. The school functions in between the hours of 8:00 am to 3:00 pm and
operates classes from kindergarten 1 to grade 6. The students that do all their various exams straight
up to GSAT always do their best to make their school, family and also themselves proud.
The main problem that the school faces is their submission of grades, since the beginning of
the school the teachers have been recording the student’s grades in registers and storing them in a
file cabinet which is neither fire nor waterproof. The teachers have also misplaced the registers,
have them destroyed by the students and even brought home by the teachers over the years.
However, a program has been made specifically for the inventory of all the grades. The
grade management system created is a soft copy made specifically for the teachers and principal to
use. Also, it’s been made very user friendly; which saves and stores the grades in the protected and
secured software. Thanks to the creation of this program, it has been efficient in the time teachers
take to input grades, not easily harmed by physical and software occurrences. This program allows
for the flow of grades to go very more smoothly and is less stressful for the teachers.
1|Page
Narrative
Main Function
This function displays the welcome screen then calls the login function.
Login Function
This function allows the user to enter username and password.
Upon entering correct user name and password, which are “Admin73” and password as “elmo036”,
a message telling user that login was successful, prompting the user to press any key to continue
would be displayed. Pressing any key would have taken user to main_menu function.
Upon entering incorrect username and/or password, a message telling user that login failed,
prompting the user to press any key to continue would have been displayed. Pressing any key would
have taken user to back to login function.
Main Menu Function
This function displays main menu options, prompting user to press 1 to Add Grade, 2 to View Grade,
3 to Print Report or 4 to Log Out. However, upon entering 4 program closes. Entering invalid choice
would tell user that there was an invalid choice prompting the user to press any key to continue,
which calls back main menu function.
Add Grade Function
Function displays the Add Grade screen where user was prompted to enter details about student
and their grades. Details included id number, first name, last name, middle name, class, maths,
language arts, social studies grades and science grade and accepts. The students averages were also
calculated.The student.txt file was then attempted to be opened and if not a message telling user,
“ERROR OPENING FILE!”, was then displayed. If file was opened new student grades were added to
file and closed, prompting the user to press any key to continue which took the user back to main
menu.
Read Grade Function
This function first checks if students.txt file could not be opened, and prints error message.
Otherwise, while not end of file read records, store in arrays and close file.
2|Page
View Grade Function
This function first calls the read grade Function. After which all students name, class, maths,
language arts, social studies, science and average details would be displayed. The user would also be
prompted to press any key to continue which took user back to main menu screen.
Print Report Function
This function first prompts the user to enter student id number for search. After which, the read
grades function would be called. Matching record would be displayed and report printed, prompting
the user to press any key to continue which took user back to main menu screen.
3|Page
Pseudocode
Procedure Main
Declare idn, counter as global integers
Declare fname, lname,mn, class as global strings
Declare maths, language arts, social studies, science, average as global real
Declare idn1 as global integer arrays of size 1000
Declare fname1, lname1, mn1, class1 as global string arrays of size 1000
Declare maths1, language arts, social studies1, science1, average1 as global real arrays of size 1000
Start
Print ( =================================================)
Print (*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**)
Print (*''*''*''*''*'''*''*''*''*''*''*WELCOME*''*''*''*''**''**''**''**''**''**''***)
Print (*''*''*''*''*''*''*''*''*''*''*''*''TO''*''*''*''*''**''**''**''**''**''**''****)
Print (*''*''*''*''*''*''*'ST. ELMO'S PREPARATORY SCHOOL '*''*''*''*''*''*)
Print (*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**)
Print (======================================================)
Call Procedure login
Stop
Procedure login
Declare user_name, password as strings
Begin
Printf("Enter user_name: ")
Read(user_name)
Print("Enter password: ")
Read(password)
If(user_name="Admin73" AND password="elmo036") then
4|Page
Print("LOGIN SUCCESSFUL")
Call Procedure main_menu
else
Print("login failed")
Call Procedure login
End if
End
Procedure main_menu
Declare option as integer
Begin
Print (=================================================)
Print (*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**)
Print (*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*)
Print (*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**)
Print (=====================================================)
Print (======================== MAIN MENU =============)
Print (== 1. Add Student Grade ==)
Print (== 2. View Students' Grades ==)
Print (== 3. Search for Class ==)
Print (== 4. Print Report ==)
Print (====================================================)
Print (Please enter choice:)
Read (option)
CASE of option
case 1:
Call procedure add_grade()
5|Page
break
case 2:
Call Procedure view_grade
break
case 3:
Call Procedure printReport
break
case 4:
EXIT
default:
Print("INVALID OPTION.")
Call Procedure main_menu
break
ENDCASE
End
Procedure add_grade
Begin
Print("ENTER ID NUMBER: ")
Read(idn)
Print("ENTER FRIST NAME: ")
Read(fname)
Print("ENTER LAST NAME: ")
Read(lname)
Print("ENTER MIDDLE NAME: ")
Read(mn)
Print("ENTER CLASS: ")
6|Page
Read(class)
Print("ENTER MATHS GRADE: ")
Read(maths)
Print("ENTER LANGUAGE ARTS GRADE: ")
Read(spelling)
Print("ENTER SOCIAL STUDIES GRADE: ")
Read(ss)
Print("ENTER SCIENCE GRADE: ")
Read(science)
average (science+social studies+language arts+maths)/5
If( <> Open student.txt file) then
Print("ERROR OPENING FILE!")
Else
idnFile = idn
fnameFile = fname
lnameFile = lname
mnFile = mn
classFile = class
mathsFile = maths
language artsFile = language arts
socialstudiesFile = ss
scienceFile = science
averageFile = average
Close student.txt file
Call Procedure main_menu
End If
End
7|Page
Procedure read_grade
Declare idx as integer
Begin
idx 0
If(<> Open "student.txt")then
Print("Error opening file! ")
Else
While(<>EOF)do
idn1[idx]=idnFile
fname1[idx]=fnameFile
lname1[idx]=lnameFile
mn1[idx]=mnFile
class1[idx]=classFile
maths1[idx]=mathsFile
languagearts1[idx]=languageartsFile
socialstudies1[idx]=socialstudiesFile
science1[idx]=scienceFile
average1[idx]=averageFile
idx=idx+1
End While
End If
counter =idx
Close student.txt file
End
Procedure view_grade
8|Page
Declare x as integer
Begin
Call Procedure read_grade()
Print("STUDENT GRADES ")
Print("NAME CLASS MATHS LANGUAGEARTS SOCIALSTUDIES SCIENCE
AVERAGE")
For(x=0 to counter-1)do
Print ( fname1[x], lname1[x], class1[x], maths1[x],
languagearts1[x],socialstudies1[x],science[x],average[x])
End For
Call Procedure main_menu
End
Procedure printReport()
Declare x, idx,found,idn as integers
Begin
found 0
idx 0
Print("Enter student id to generate report: ")
Read(idn)
Call Procedure read_grade
For(x=0 to counter-1)do
If(idn =idn1[x])then
found1
idxx
End If
End For
9|Page
If(found=1)then
Print ("RJ's Primary School Report")
Print("Id Number: ”, idn1[idx], “Name: ”fname[idx],mn[idx],lname[idx],
“Class:“,class1[idx])
Print("Mathematics Grade:”,maths1[idx])
Print("Language Arts Grade:”,languagearts1[idx])
Print("Social Studies Grade: “, socialstudies1[idx])
Print("Science Grade: “, science1[idx])
Print("AVERAGE: “,average1[idx])
else
Print("Student not found...")
End If
Call Procedure main_menu
End
10 | P a g e
ST. ELMO’S PREPARATORY SCHOOL GRADE MANAGEMENT SYSTEM
//Program Headers
#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <math.h>
#include <conio.h>
#include <ctype.h>
//declaration of structure
typedef struct{
char firstName[20];
char lastName[20];
char Class[2];
int id;
float grade_one;
float grade_two;
float grade_three;
float grade_four;
float average;
}student;//Declare structure
//globals
student sT[1000];
int counter=0;
11 | P a g e
//Function Prototype
void login (void);
void welcome ();
void main_menu();
void add_student();
void read_grade();
void view_student();
void searchClass();
void printReport();
//Main function
int main (){
system("title ST. ELMO'S PREPARATORY SCHOOL 1.0");
system("mode 170");
welcome ();//Call Funtion
login ();//Call Function
main_menu();//Call Function
getch();
return 0;
//Welcome Function
void welcome (){
system("color 3f");
system("color b7");
12 | P a g e
Sleep(150);
printf("\n\n\n\n\t\t=================================================");
printf("\n\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*'''*''*''*''*''*''*WELCOME*''*''*''*''**''**''**''**''**''**''***\n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''TO''*''*''*''*''**''**''**''**''**''**''****\n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*''*''*'ST. ELMO'S PREPARATORY SCHOOL '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n");
printf("\t\t======================================================");
Sleep(150);
printf("\n\n\t\tPress any key to continue..........................");
getch();
system ("cls");
//Login Function
void login(){
char userName[20], password[20];
int b;
char a;
int counter;
13 | P a g e
system("cls");
printf("\n\n\n\n\t\t=================================================");
printf("\n\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**
\n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t=====================================================");
Sleep(150);
printf("\n\n\t\t LOGIN");
printf("\n\n\t\t\t\t\tPlease enter the user name:");
scanf("%s", userName);
printf("\n\t\t\t\t\tPlease enter the Password:");
for(b=0;;) //function to hide password characters
a=getch();
if((a>='a'&&a<='z')||(a>='A'&&a<='Z')||(a>='0'&&a<='9'))
password[b]=a;
++b;
printf("*");
if(a=='\b'&&b>=1)
printf("\b \b");
--b;
14 | P a g e
}
if(a=='\r') //if enter is pressed
password[b]='\0'; //null means end of string
break;
if(strcmp(userName, "Admin73")==0 && strcmp(password, "elmo036")==0 ){
printf("\n\n\n\t\t\t\t\tLogin Successful!!!!!!!!");
printf("\n\n\t\t\t\t\tPress any to continue.......... ");
getch();
system("cls");
}else{
printf("\n\n\n\t\t\t\t\tLogin Failed \a!!!!!!!");
printf("\n\n\t\t\t\t\tPress any to continue.......... ");
getch();
login();
//Main Menu Function
void main_menu(){
//Declare variables
int choice;
system("cls");
system("cls");
15 | P a g e
printf("\n\n\n\n\t\t=================================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t=====================================================");
Sleep(150);
printf("\n\t\t======================== MAIN MENU =============\n\n");
printf("\t\t== 1. Add Student Grade ==\n\n");
printf("\t\t== 2. View Students' Grades ==\n\n");
printf("\t\t== 3. Search for Class ==\n\n");
printf("\t\t== 4. Print Report ==\n\n");
printf("\t\t====================================================\n\n");
printf(" Please enter choice:");
scanf("%d", & choice);
switch (choice){
case 1:
add_student();//Call Function
break;
case 2:
view_student();//Call Function
break;
case 3:
16 | P a g e
searchClass();//Call Function
break;
case 4:
printReport();//Call Function
break;
default:
printf("\n\n Unkown choice \n\n");
printf(" Press any key to continue.......");
getch();
system("cls");
main_menu();//Call Function
break;
void add_student()
FILE * fp;
student sT;
system("cls");
//Display Headings
printf("\n\n\n\n\t\t=================================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
17 | P a g e
printf("\n\t\t====================================================");
Sleep(150);
printf("\n\t\t=============== ADD STUDENT GRADE =============\n\n");
system("color fd");
printf("\t\t\t\t\tPlease Enter Student's ID Number:");
scanf("%i", &sT.id);
printf("\n\t\t\t\t\tPlease Enter Student's First Name:");
scanf("%s", sT.firstName);
printf("\n\t\t\t\t\tPlease Enter Student's Last Name:");
scanf("%s", sT.lastName);
printf("\n\t\t\t\t\tPlease Enter Student's Class:");
scanf("%s", sT.Class);
printf("\n\t\t\t\t\tPlease Enter The Student's Maths Grade:");
scanf("%f", &sT.grade_one);
printf("\n\t\t\t\t\tPlease Enter The Student's Language Arts Grade:");
scanf("%f", &sT.grade_two);
printf("\n\t\t\t\t\tPlease Enter The Student's Social Studies Grade:");
scanf("%f", &sT.grade_three);
printf("\n\t\t\t\t\tPlease Enter The Student's Science Grade:");
scanf("%f", &sT.grade_four);
//calculate average
sT.average = (sT.grade_one + sT.grade_two + sT.grade_three + sT.grade_four)/4;
//write data to file
if((fp = fopen("student.txt", "a+"))==NULL)
printf("ERROR OPENING FILE!!!");//error message
18 | P a g e
}else{
fprintf(fp,"%i\t%s\t%s\t%s\t%.1f\t%.1f\t%.1f\t%.1f\t%.1f\n", sT.id,sT.firstName,
sT.lastName, sT.Class, sT.grade_one, sT.grade_two, sT.grade_three, sT.grade_four, sT.average);
fclose(fp);//close file
printf("\n\n\t\t\t\t\tStudent Added Successfully!!!\n\n");
printf("\n\n\t\t\t\t\tPress any key to continue....");
getch();
system("cls");
main_menu();//Call Function
//Get student grade from file
void read_grade(){
counter=0;
FILE*fp;//file pointer
if ((fp= fopen("student.txt", "r"))==NULL){
printf ("Error opening!");//error message
}else{
while (!feof (fp)){
fscanf(fp,"%i\t%s\t%s\t%s\t%f\t%f\t%f\t%f\t%f\n",
&sT[counter].id,sT[counter].firstName, sT[counter].lastName, sT[counter].Class,
&sT[counter].grade_one, &
sT[counter].grade_two,&sT[counter].grade_three,&sT[counter].grade_four, & sT[counter].average);
counter++;
19 | P a g e
fclose(fp); //close file
//View Function
void view_student()
int i;//declare counter variable
system("cls");
read_grade();//Call Function
printf("\n\n\n\n\t\t================================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t=================================================\n");
Sleep(150);
printf("\n\t\t================== STUDENT RECORDS =============\n");
Sleep(150);
printf("\n\t\t===================================================");
printf("\n\n\t\tID\tFull Name\tClass\tMaths\tLanguage Arts\tSocial
Studies\tScience\tAverage\n");
printf("\n\t\t=====================================================");
for (i=0; i<counter; i++){
20 | P a g e
printf("\n\t\t%i\t%s,%s\t%s\t%.1f\t\t%.1f\t%.1f\t%.1f\t%.1f",
sT[i].id,sT[i].firstName, sT[i].lastName, sT[i].Class, sT[i].grade_one, sT[i].grade_two,
sT[i].grade_three, sT[i].grade_four,sT[i].average );
printf("\n\t\t========================================");
printf("\n\n\t\tPress any key to continue....");
getch();
main_menu();//Call Function
//Search Class Function
void searchClass(){
// Declare and intialize variables
int i, found=0;
char sClass [2];
system("cls");
read_grade();//Call Function
printf("\n\n\n\n\t\t=================================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t==========================================\n");
Sleep(150);
printf("\n\t\t================== CLASS SEARCH ==================\n");
21 | P a g e
Sleep(150);
printf("\n\t\t=====================================================");
printf("\n\n\t\tPlease enter class for search: ");
scanf("%s", sClass);
printf("\n\t\t=====================================================");
printf("\n\n\t\tID\tFull Name\tClass\tMaths\tLanguage Arts\tSocial
Studies\tScience\tAverage\n");
printf("\n\t\t===================================================");
//display records
for (i=0; i<counter; i++){
// Check Record
if(strcmp(sClass, sT[i].Class)==0){
//Print Record
printf("\n\t\t%i\t%s,%s\t%s\t%.1f\t\t%.1f\t%.1f\t%.1f\t%.1f",
sT[i].id,sT[i].firstName, sT[i].lastName, sT[i].Class, sT[i].grade_one, sT[i].grade_two,
sT[i].grade_three, sT[i].grade_four,sT[i].average );
printf("\n\t\t==================================");
found=1;
if (found!=1){
printf("\n\n\t\tClass not found");//error message
printf("\n\n\t\tPress any key to continue....");
getch();
main_menu();//Call Function
//Search Class Function
22 | P a g e
void printReport(){
// Declare and intialize variables
int i, found=0,id;
system("cls");
read_grade();//Call Function
printf("\n\n\n\n\t\t================================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM '*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t====================================================\n");
Sleep(150);
printf("\n\t\t=================== REPORT SEARCH ================\n");
Sleep(150);
printf("\n\t\t=====================================================");
printf("\n\n\t\tPlease enter id number for student: ");
scanf("%i", &id);
//display records
for (i=0; i<counter; i++){
// Check Record
if(id==sT[i].id){
//Display Headings
system("cls");
23 | P a g e
printf("\n\n\n\n\t\t=================================");
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''** \n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*' SEPS'S GRADE MANAGEMENT SYSTEM
'*''*''*''*''*''*\n");
Sleep(150);
printf("\n\n\t\t*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''*''**\n ");
Sleep(150);
printf("\n\t\t=====================================\n");
Sleep(150);
printf("\n\t\t================ STUDENT REPORT ===========\n");
Sleep(150);
printf("\n\t\t=====================================");
//print record
printf("\n\n\t\t\t\t\tID Number : %i",sT[i].id);
printf("\n\n\t\t\t\t\tFull Name : %s %s",sT[i].firstName,sT[i].lastName);
printf("\n\n\t\t\t\t\tClass : %s",sT[i].Class);
printf("\n\n\t\t\t\t\tMathsGrade : %.1f",sT[i].grade_one);
printf("\n\n\t\t\t\t\tLanguage Arts Grade : %.1f",sT[i].grade_two);
printf("\n\n\t\t\t\t\tSocial Studies Grade : %.1f",sT[i].grade_three);
printf("\n\n\t\t\t\t\tScience Grade : %.1f",sT[i].grade_four);
printf("\n\n\t\t\t\t\tAverage : %.1f",sT[i].average);
printf("\n\n\t\t=============================================");
found=1;
if (found!=1){
printf("\n\n\t\tStudent not found");//error message
24 | P a g e
}
printf("\n\n\t\tPress any key to continue....");
getch();
main_menu();//Call Function
25 | P a g e
Test Plan
LOGIN FUNCTION
VARIABLE TEST TEST PURPOSE OF USER’S EXPECTED ACTUAL RESULT
NAME TYPE DATA DATA RESULT
Username String Admin73 To store the user The program prompts The program prompts
name of user. user to enter the user to enter the
password for login. password for login.
Password String elmo036 To allow program The program prompts The program prompts
to store the users user to press any key user to press any key
password. to continue which calls to continue which calls
the main menu the main menu
function. function.
Login Function Called again
Username String Admin73 To store the user The program prompts The program prompts
name of user. user to enter the user to enter the
password for login. password for login.
Password String 654321 To allow program The program prompts The program prompts
to store the users user to press any key user to press any key
password. to continue which calls to continue which then
the main menu displays a login failed
function. message.
MAIN MENU SCREEN
Input Output
1 Displays Add Grade Screen
2 Displays View Grades Screen
3 Displays Print Report Screen
4 Exit Program
1. Displays error message
Other Integers 2. Prompts user to press any key to continue which takes user back to
main menu.
VIEW GRADES SCREEN
Input Output
Displays all records, prompt user to press any key to continue.
Any Key Displays Main Menu
26 | P a g e
ADD GRADE SCREEN
Input Output
Print Report Screen
Id Displays Id then prompt for first name.
Input
First Name
Output
Displays first name then prompt for last name
Displays report with matching record, prompting user to
Last Name Displays last name then prompt for middle name.
Id number matched in the database. press any key to continue which takes user back to main
Middle Name Displays middle name then prompt for class.
menu.
Class Displays Class then
Displays errorprompt forprompting
message, Maths Grade
user to press any key to
Id not matched in the database.
continue which takes user back to main menu.
Maths Grade Displays Maths Grade then prompt for Spelling Grade
Language Arts Grade Displays Language Arts then prompt for Grammar Grade
Displays Social Studies Grade then prompt for Science
Social Studies Grade
Grade
Displays Science Grade
Science Grade Write record to grades file
Prompt for user to press any key
Any Key Displays Main Menu
How the Screens should look when being used
27 | P a g e
28 | P a g e
29 | P a g e
30 | P a g e
31 | P a g e
32 | P a g e
33 | P a g e