# C++ Program to Calculate Grade of Student

« Previous Program Next Program »

Here you will learn and get code on finding the grade of a student based on marks obtained in C++. There are 2 programs, you'll go through:

• Find Grade of Student based on Marks obtained in 5 Subjects
• Find Grade of Student based on Marks obtained in all Subjects using user-defined Function. Here user is allowed to enter number of subject

The grade must be calculated based on following pattern:

91-100 A1
81-90 A2
71-80 B1
61-70 B2
51-60 C1
41-50 C2
33-40 D
21-32 E1
0-20 E2

## Calculate Grade of Student in C++

To calculate grade of a student on the basis of total marks in C++ programming, you have to ask from user to enter marks obtained in 5 subjects. Now add marks of all the 5 subjects and divide it by 5 to get average mark. And based on this average mark, find grade as per the table given above:

```#include<iostream>
using namespace std;
int main()
{
int i;
float mark, sum=0, avg;
cout<<"Enter Marks obtained in 5 Subjects: ";
for(i=0; i<5; i++)
{
cin>>mark;
sum = sum+mark;
}
avg = sum/5;
if(avg>=91 && avg<=100)
cout<<"A1";
else if(avg>=81 && avg<91)
cout<<"A2";
else if(avg>=71 && avg<81)
cout<<"B1";
else if(avg>=61 && avg<71)
cout<<"B2";
else if(avg>=51 && avg<61)
cout<<"C1";
else if(avg>=41 && avg<51)
cout<<"C2";
else if(avg>=33 && avg<41)
cout<<"D";
else if(avg>=21 && avg<33)
cout<<"E1";
else if(avg>=0 && avg<21)
cout<<"E2";
else
cout<<"Invalid!";
cout<<endl;
return 0;
}```

This program was build and run under Code::Blocks IDE. Here is its sample run:

Now supply marks obtained in 5 subjects say 97, 87, 89, 90, 93 and press `ENTER` key to see the grade based on these marks as shown in the output given below:

### Using user-defined Function

This program does the same job as of previous one, that is find and prints grade of student. But an extra feature added to it. That extra feature is, user is allowed to enter the number of subject. For example, if he/she enters 3 as number of subject, then program further asks to enter marks obtained in 3 subjects.

This program calculates grade of student using a user-defined function, findGrade(). This function takes two arguments, the first one is an array that holds all the marks entered by user, and the second is size (that is number of subject). It returns a string type value. To learn more about function in C++, then refer to its separate tutorial.

```#include<iostream>
using namespace std;
int main()
{
int i, n;
float mark;
cout<<"Enter Number of Subjects (max. 10): ";
cin>>n;
cout<<"Enter Marks obtained in "<<n<<" Subjects: ";
for(i=0; i<n; i++)
cin>>mark[i];
cout<<endl;
return 0;
}
const char* findGrade(float mark[], int n)
{
int i;
float sum=0, avg;
for(i=0; i<n; i++)
sum = sum+mark[i];
avg = sum/n;
if(avg>=91 && avg<=100)
return "A1";
else if(avg>=81 && avg<91)
return "A2";
else if(avg>=71 && avg<81)
return "B1";
else if(avg>=61 && avg<71)
return "B2";
else if(avg>=51 && avg<61)
return "C1";
else if(avg>=41 && avg<51)
return "C2";
else if(avg>=33 && avg<41)
return "D";
else if(avg>=21 && avg<33)
return "E1";
else if(avg>=0 && avg<21)
return "E2";
else
return "Invalid!";
}```

Below is the initial snapshot of sample run:

Now enter the number of subject say 3 and then enter marks obtained in 3 subjects, to find the grade as shown in the output given below:

#### Same Program in Other Languages

C++ Online Test

« Previous Program Next Program »