INTRODUCTION
INTRODUCTION
INTRODUCTION
OBJECTIVE :
File handling has been used for the effective implementation of all the typical
features of this project. The key features of Student Report Card System are:
Student report card system is a very simple project that runs with just four header
files. Here, are the header files required for this project:
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
DESCRIPTION :
We have used many function in this project for proper program execution work. These function easy to
understand by their name.
Int main{} = This is main function of our project. Every function call from main function.
float final{} = This function used for show the specific result of students. This function call from
the main function.
float grade{} = This function store the student exam grades and this function call from the main
function.
void insertion{} = This function used for show every students result with specific subjects and
mark. This function also call from main function.
void printall{} = This function store all students record. And it's called from main function also.
id search{} = This function used for search specific data from the student record and also called
from main function.
int help{} = This function used for check record empty or not. It’s called from main function.
void delete{} = This function used for delete specific data from the records. It’s also called from
main function.
void main2{} = This function used for display all the options from student records like Add new
records, delete record, show specific students info, all students info. It’s also called from main
function.
Requirement Specification :
Our Requirement Specification is built a program for student report card using a suitable data structure
.The student report card display detail student information and their result..The specification is –
Source Code :
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
char name[30];
char id[15];
float marksds;
float marksec;
float marksdm;
float marksde;
float gpds;
float gpec;
float gpdm;
float gpde;
char gradeds[3];
char gradeec[3];
char gradedm[3];
char gradede[3];
char commentds[20];
char commentec[20];
char commentdm[20];
char commentde[20];
float gp;
char comment[30];
} src;
src *head=NULL,*temp,*x;
float e=(a+b+i+j)/4;
if(e==4.00)
strcpy(c,"Outstanding");
}
else if(e<4.00&&e>=3.75)
strcpy(c,"Excellent");
else if(e<3.75&&e>=3.50)
strcpy(c,"Very Good");
else if(e<3.50&&e>=3.25)
strcpy(c,"Good");
else if(e<3.25&&e>=3.00)
strcpy(c,"Satisfactory");
else if(e<3.00&&e>=2.75)
strcpy(c,"Above Average");
else if(e<2.75&&e>=2.50)
strcpy(c,"Average");
else if(e<2.50&&e>=2.25)
strcpy(c,"Bellow Average");
}
else if(e<2.25&&e>=2.00)
strcpy(c,"Pass");
else if(e<2.00&&e>=0.00)
strcpy(c,"Fail");
return e;
if(a>=80&&a<=100)
strcpy(c,"A+");
strcpy(d,"Outstanding");
return 4;
else if(a>=75.00&&a<=79.00)
strcpy(c,"A");
strcpy(d,"Excellent");
return 3.75;
else if(a>=70&&a<=74)
{
strcpy(c,"A-");
strcpy(d,"Very Good");
return 3.50;
else if(a>=65&&a<=69)
strcpy(c,"B+");
strcpy(d,"Good");
return 3.25;
else if(a>=60&&a<=64)
strcpy(c,"B");
strcpy(d,"Satisfactory");
return 3;
else if(a>=55&&a<=59)
strcpy(c,"B-");
strcpy(d,"Avobe Average");
return 2.75;
else if(a>=50&&a<=54)
strcpy(c,"C+");
strcpy(d,"Average");
return 2.50;
}
else if(a>=45&&a<=49)
strcpy(c,"C");
strcpy(d,"Bellow Average");
return 2.25;
else if(a>=40&&a<=44)
strcpy(c,"D");
strcpy(d,"Pass");
return 2;
else if(a>=0&&a<=39)
strcpy(c,"F");
strcpy(d,"Fail");
return 0;
void insertion()
while(1)
x=(src*)malloc(sizeof(src));
scanf(" %[^\n]s",&x->name);
printf("Enter The Id : ");
scanf(" %[^\n]s",&x->id);
printf("----------------\n");
scanf("%f",&x->marksds);
x->gpds=grade(x->gradeds,x->commentds,x->marksds);
scanf("%f",&x->marksec);
x->gpec=grade(x->gradeec,x->commentec,x->marksec);
scanf("%f",&x->marksdm);
x->gpdm=grade(x->gradedm,x->commentdm,x->marksdm);
scanf("%f",&x->marksde);
x->gpde=grade(x->gradede,x->commentde,x->marksde);
x->gp=final(x->comment,x->gpds,x->gpec,x->gpdm,x->gpde);
x->ptr=NULL;
printf("-------------------------------------------------------------------------------");
if(head==NULL)
{
head=x;
else
temp=head;
while(temp->ptr!=NULL)
temp=temp->ptr;
temp->ptr=x;
printf("\n-------------------------------------------------------------------------------");
char ch=getch();
if(ch=='N'||ch=='n')
break;
main2();
void printall()
int c;
printf("\n ----------");
temp=head;
if(temp==NULL)
printf("\n\t\t\tRecord Empty.\n");
while(temp!=NULL)
if(temp->gradeds[1]=='+'||temp->gradeds[1]=='-')
else
if(temp->gradeec[1]=='+'||temp->gradeec[1]=='-')
}
else
if(temp->gradedm[1]=='+'||temp->gradedm[1]=='-')
else
if(temp->gradede[1]=='+'||temp->gradede[1]=='-')
else
temp=temp->ptr;
printf("-------------------------------------------------------------------------------\n");
}
printf("\n-------------------------------------------------------------------------------\n");
printf("\n-------------------------------------------------------------------------------\n");
char ch=getch();
if(ch=='M'||ch=='m')
main2();
void search()
int b=0;
char d[30];
scanf(" %[^\n]s",&d);
printf("-------------------------------------------------------------------------------\n");
temp=head;
while(temp!=NULL)
if(strcmp(temp->id,d)==0)
b=1;
break;
}
else
temp=temp->ptr;
if(b==0)
else
if(temp->gradeds[1]=='+'||temp->gradeds[1]=='-')
else
if(temp->gradeec[1]=='+'||temp->gradeec[1]=='-')
{
else
if(temp->gradedm[1]=='+'||temp->gradedm[1]=='-')
else
if(temp->gradede[1]=='+'||temp->gradede[1]=='-')
else
}
printf("\n\t\t\t SGPA= %.2f\t\t %s\n",temp->gp,temp->comment);
printf("-------------------------------------------------------------------------------\n");
printf("-------------------------------------------------------------------------------\n");
char ch=getch();
if(ch=='C'||ch=='c')
printf("\n-------------------------------------------------------------------------------\n");
search();
else
main2();
int b=0;
temp=head;
while(temp!=NULL)
if(strcmp(temp->id,d)==0)
b=1;
break;
}
else
temp=temp->ptr;
return b;
void delete()
char d[30];
int b=0,c;
src *temp1;
scanf(" %[^\n]s",&d);
printf("----------------\n");
c=help(d);
if(c==0)
printf(" Unsuccesful\n");
goto bue;
temp=head;
if(strcmp(head->id,d)==0)
head=head->ptr;
free(temp);
b=1;
temp=head;
while(temp!=NULL)
if(strcmp(temp->id,d)==0)
b=1;
temp1->ptr=temp->ptr;
free(temp);
break;
else
temp1=temp;
temp=temp->ptr;
if(b==0)
printf(" Unsuccesful\n");
else
printf(" Succesful\n");
}
bue:
printf("-------------------------------------------------------------------------------\n");
char ch=getch();
if(ch=='c'||ch=='C')
printf("\n-------------------------------------------------------------------------------\n");
delete();
else
main2();
void main2()
int a;
printf("\n-------------------------------------------------------------------------------");
printf("\n-------------------------------------------------------------------------------");
printf("-------------------------------------------------------------------------------");
if(a==1)
insertion();
else if(a==2)
delete();
else if(a==3)
printall();
else if(a==4)
search();
else if(a==5)
return 0;
int main()
system("COLOR 0B");
printf("\t\t\t---------------------\n");
printf("\t\t\t---------------------\n");
main2();
return 0;
---------------------
---------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
----------------
Marks For Data Structure : 87
-------------------------------------------------------------------------------
----------------
-------------------------------------------------------------------------------
----------------
-------------------------------------------------------------------------------
----------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
----------------
Succesful
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
----------
ALL RECORD:
----------
Student Id : 182-15-11396
-------------------------------------------------------------------------------
Student Id : 182-15-11392
-------------------------------------------------------------------------------
Student Id : 182-15-11471
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Student Id : 182-15-11396
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
Choose The Operation: 5
-------------------------------------------------------------------------------
CHALLENGES :
CONCLUSION :
This program makes the user simpler to maintaining student’s details and can easily perform operations
on student’s records . This program also reduces the work load of the teachers in school as all the details
are store in computer system and whenever the detail marks of student needed it can be searched and
displayed on the screen .