Student Management Final
Student Management Final
Submitted To:
Pokhara University
Submitted By:
Name Symbol No. Registration No.
Krishna Prasad Bashyal (21535193) 2021-1-53-0448
Abhishek Pandey (21535178) 2021-1-53-0431
Aarthik Bashyal (21535182) 2021-1-53-0435
Abhishek Dhakal (21535177) 2021-1-53-0430
A FIRST-YEAR PROJECT
This is to certify that the work Mobilized by Krishna Prasad Bashyal, Abhishek Pandey,
Aarthik Bashyal and Abhishek Dhakal for the completion of the project entitled " Student
Management System" in the fulfillment of the requirement of the degree of Bachelor of
Computer Application has been accomplished, presented and demonstrated successfully.
During the presentation, I found the students to be enthusiastic, hardworking and bonfire,
and ready with skills to undertake any work related to IT and management.
……………………..
Signature
External Examiner
BONAFIDE-CERTIFICATE
Certified that the project "STUDENT MANAGEMENT SYSTEM " is the bonafide work
of " Krishna Prasad Bashyal, Abhishek Pandey, Aarthik Bashyal and Abhishek Dhakal "
who mobilized the project work under my supervision.
………………………. ……………………..
SIGNATURE SIGNATURE
Mr. Abdul Hak Mr. Namraj Koirala
IT Co-ordinator Project Supervisor
Department of IT Department of IT
DECLARATION
The project documentation in this report was Mobilized by four below-mentioned second-
semester undergraduate students of Bachelor of Computer Application (BCA) for the
fulfillment of the requirement for the project of the second semester under the supervision
of Mr. Namraj Koirala.
Any kind of reproduction of the project and its part for a commercial purpose is strictly
prohibited without prior written permission of the author and university. However, this
report is open for any kind of academic purpose.
…………………. ……………………
Mr. Krishna Prasad Bashyal Mr. Namraj Koirala
Department of IT
………………….. Crimson College of Technology
Mr. Abhishek Pandey
………………….
Mr. Aarthik Bashyal
………………….
Mr. Abhishek Dhakal
ACKNOWLEDGEMENT
In the completion of this project entitled "Student Management System" all the members
of the group equally contributed. Foremost, we would like to thank Crimson College of
Technology for assigning this type of project would help in our future development. We
are also thankful to Mr. Namraj Koirala, the project supervisor who cooperate and
provided information about the project, and without his supervision would not have been
to get up to this level of the project.
We also like to express our sincere thanks to Mr. Abdul Haq IT coordinator for his help
and interest in our project and also for providing us with his valuable suggestion for the
improvement of this project.
Last but not the least; we would like to express our gratitude to all our teachers, seniors,
and friends for their support and guidance.
Thanking from
…………………..
Mr. Krishna Prasad Bashyal
…………………..
Mr. Abhishek Pandey
………………….
Mr. Aarthik Bashyal
………………….
Mr. Abhishek Dhakal
TABLE OF CONTENT
Topics Page.NO
ABSTRACT I
List of tables II
List of Figures II
List of charts II
The use of computers has created an easy environment. Due to the technological
advancement done via computer, various new concepts are implemented. Computer
technology has affected the entire field no matter business field, scientific field,
management field, education field, etc.
This project mainly emphasizes providing information related to Students and their various
services including online classes, assignment, attendance, and exams, etc.
From a technical point of view, the programming language C is used and the project is also
based on windows OS and Microsoft word. For designing this system, the hardware tools
were used as intel core TM i5-6200U CPU @2.40 GHz, printer, 4 GB RAM, etc.
This project schedule describes in the form of a flow chart that explains the student
management system phase. The flow chart shows the graphical representation of the
procedure used for solving the particular problem.
I
List of Tables:
List of figures:
II
SECTION- A:
1
1.1 Introduction (Background)
A Student management system is a software or a platform that simplifies and automates the
day-to-day academic and administrative tasks. It enhances the digitization process for
Student and benefits student, parents, teachers, and administrations.
The main aim of our project is to implement the Student Management System for
systematic use. This project helpful for managing student info by adding, removing,
reviewing and searching for details. Our project includes all the functionality of Student
that makes the complete “Student Management System”. The program is designed to store
detail about students, and their personal information, and much more. The most common
and standard development programming language c is used and the project is based on C
as a system language to develop the window platform. C is also used as the system for
UNIX OS. Since, many windows database programs, graphics libraries, and other logic
application packages were written in the concept of data modeling and process modeling
has simplified the implementation of the database through the use of a flowchart.
2
1.3 Project Features:
1.3.1 Adding Student Data
❖ Basic student information: The system allows the user to enter basic information
about the student such as name, ID number and other related personal information.
❖ Academic information: The system allows the user to enter the academic
information of the student, such as their current academic program, major, and
GPA.
❖ Enrollment information: The system allows the user to enter the enrollment
information of the student, such as the current semester, registration status, and any
holds on the account.
❖ Save Information: The system saves the entered information to the database.
❖ Basic student information: The system allows the user to modify basic
information about the student such as name, ID number and other related personal
information.
❖ Academic information: The system allows the user to modify the information of
the student, such as their current academic program, major, and GPA.
❖ Enrollment information: The system allows the user to modify the enrollment
information of the student, such as the current semester, registration status, and any
holds on the account.
❖ Save Changes: Once the user has made the necessary changes, they can save them
to the database.
❖ Error Handling: If there are any errors or issues while modifying the student data,
the system provides appropriate error messages to the user.
1.3.3 Show All Information: The system provides the interface to view information of all
data at once.
1.3.4 Individual View: The system provides the interface to view individual information
of a student which can be searched by using roll no.
1.3.4 Remove Student: The system allows the user to delete the unnecessary student
information stored on the database.
3
SECTION-B
PROJECT DEVELOPMENT LIFE CYCLE
4
2.1 PROJECT DEVELOPMENT LIFE CYCLE
The waterfall model was the first process model to be introduced. It is also referred
to as a linear sequential life cycle. It is very simple to understand and use. In waterfall
model, each phase is must completed fully before the next phase can begin. This type of
model is used for the project which is small and there are no uncertain requirements. At the
end of each phase, a review takes place to determine if the project is on the right path or
not. In this model, the testing starts only after the development is completed. In the waterfall
model, phases do not overlap.
Requirements Analysis
The system as a whole is analyzed properly and then all the requirements for developing
the project are identified. The project goal is refined into a defined function and the
operation of the intended application is carried out. In this step user requirements are also
collected and defined to ensure that the project is so developed that it can be utilized by
them to fulfill the criteria or main purpose of creating the projects.
5
System Design
The process of writing algorithms and flowcharts for specific program designing. As we all
know the main attraction is the design of any program so we planned the design of the
program.
Coding
The process of writing the program and translating the algorithm & flowchart into a
programming language is called coding. The coding is done with the help of programming
language. There are various types of programming languages. Among them, the suitable
one and the one that fulfills both the user’s and the developer’s requirements is chosen.
Implementation
We tested the project and then implemented it to fulfill the user requirement. Once the
project is implemented, it may need additional updating. The successful implementation
makes the project complete. The main purpose of implementation is to convert the physical
system specifications into working and reliable software. It also refers to the installation of
the software so that it may be used in the company.
Documentation
The process of collecting, organizing, storing, and maintaining the records of all the work
done while developing the project in the paper is called documentation. We completed all
the steps mentioned above for the documentation.
6
SECTION-C
Project Development Requirements
7
3.1 Tools used:
We used the following tools to design, develop, testing this software.
3.2 Hardware
❖ Color Monitor
❖ 4 GB RAM
❖ Printer
❖ Laptop
❖ Intel(R) core TM i5 CPU @2.40GHz
3.3 Software
❖ Windows OS
❖ Microsoft Office
❖ MS PowerPoint
❖ VS Code
❖ DEV C++
❖ Illustrator & Photoshop
8
SECTION-D
Limitations or Further Enhancements
9
4.1 Limitations
The Student management system is one of the system management application systems.
Any applications or systems are not perfect in themselves, there will be some limitations
or drawbacks. Some limitations of this system are:
❖ It does not run without a ‘C’ Compiler.
❖ Requires basic ‘C’ programming knowledge.
❖ Should have good computer skills and knowledge.
❖ Since it is computer-based software so, its need computer and power supply.
❖ The software is complex, so all staff need training.
❖ The application is limited only for particular institute accounting to institute
requirement changes in module.
10
SECTION- E
APPENDICES
11
Appendix-1
Gantt Chart
December- 2022
S.N Task Days
10 11 12 13 14 15 16 17 18 19 20
1 Problem specification
2 Feasibility study
3 System analysis
4 System design
5 Coding
6 Testing
7 Implementation
8 Documentation
12
APPENDIX-2:
FLOWCHART
FLOWCHART:
A flowchart is a step-by-step symbolic and graphical representation of a program to solve
a program that is used to reduce the complexity of writing the programming code by the
programmer. It is the best method of designing the solution for the program. It expresses
the algorithm by using different symbols. It is designed before the coding of the program.
Flowcharts are drawn by the programmer to reduce the complexity of writing the codes of
the problems. If a perfect flowchart is drawn, it provides an excellent and perfect guide for
writing the problem. They are convenient to use in administrative file handling as in
scientific or engineering, computation. There are mostly two types of flowcharts used in a
computer system:
1: System Flowchart
2: Program Flowchart
A system flowchart gives systematic information about the program including many
modules together. It is a general-purpose flowchart that is popularly used by a system
analyst while developing a new system. Program flowcharts are sometimes referred to as a
block or logic diagrams.
Some symbols used in the flowchart:
Symbol Name Symbol Meaning
Terminal Used to represent the start
or the end of the task.
Input/Output Used for input and output
operations.
Processing Used for arithmetic and
manipulation operation
Decision Used for decision making
13
Opening model:
14
Adding Student Record
15
Modify Student record
16
Show All Student Record
17
Show Individual Student records:
18
Delete Student Record
19
Exiting the program:
20
APPENDIX-4
CODDING
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<math.h>
#include <windows.h>
#define Student struct Stud
void add(FILE * fp);
void modify(FILE * fp);
void display(FILE * fp);
void Indivisual(FILE *fp);
void exitMessage(void);
FILE * del(FILE * fp);
void printChar(char ch,int n);
void title();
FILE *tp;
struct pass
{
char pass[25];
}pa;
struct Stud
{
char name[100];
char dept[50];
int roll;
float sgpa[12];
float cgpa;
};
int main()
{
int ch,id,k,i;
char c,pas[50];
SetConsoleTitle("Student Management System");
FILE * fp;
Student s;
int option;
char another;
if((fp=fopen("db.txt","rb+"))==NULL)
{
if((fp=fopen("db.txt","wb+"))==NULL)
{
printf("Can't create or open file.");
21
return 0;
}
}
title();
printf(" \n\n\n\t\t\t Welcome to Student Manaement System");
printf("\n\n\n\t\t\t \e[1mProject Code: PRJ 151\e[m ");
printf("\n\n\n\t\t\t Faculty of Science and Technology ");
printf("\n\t\t\t Crimson College of Technology ");
printf("\n\n\n\t\t\t \e[1mA FIRST-YEAR PROJECT\e[m \n");
printf("\n\t");
printChar('*',64);
getch();
while(1)
{
title();
printf("\n\t");
printChar('*',64);
printf("\n\n\t\t\t\t1. Add Student");
printf("\n\n\t\t\t\t2. Modify Student");
printf("\n\n\t\t\t\t3. Show All Student");
printf("\n\n\t\t\t\t4. Individual View");
printf("\n\n\t\t\t\t5. Remove Student");
printf("\n\n\t\t\t\t6. Exit\n\t");
printChar('*',64);
printf("\n\n\t\t\t\tEnter Your Option :--> ");
scanf("%d",&option);
switch(option)
{
case 1:
add(fp);
break;
case 2:
modify(fp);
break;
case 3:
display(fp);
break;
case 4:
Indivisual(fp);
break;
case 5:
fp=del(fp);
break;
case 6:
22
exitMessage();
return 1;
break;
default:
printf("\n\t\tNo Action Detected");
printf("\n\t\tPress Any Key\n\n\n");
getch();
system("pause");
}
}
return 1;
}
void printChar(char ch,int n)
{
while(n--)
{
putchar(ch);
}
}
void title()
{
system("cls");
printf("\n\n\t");
printChar('=',19);
printf(" Student Management System ");
printChar('=',19);
printf("\n");
}
void add(FILE * fp)
{
title();
char another='y';
Student s;
int i;
float cgpa;
float total = 0;
float percentage;
fseek(fp,0,SEEK_END);
while(another=='y'||another=='Y')
{
printf("\n\n\t\tEnter Roll number: ");
scanf("%d",&s.roll);
printf("\n\n\t\tEnter Full Name of Student: ");
fflush(stdin);
23
fgets(s.name,100,stdin);
s.name[strlen(s.name)-1]='\0';
printf("\n\n\t\tEnter Faculty Name: ");
fflush(stdin);
fgets(s.dept,50,stdin);
s.dept[strlen(s.dept)-1]='\0';
printf("\n\n\t\tEnter MARKS in 5 Subjects\n");
for(i=0,cgpa=0; i<5; i++)
{
printf("\t\tSubject %d: ", i+1);
scanf("%f",&s.sgpa[i]);
total+=s.sgpa[i];
}
percentage = (total / 500) * 100;
printf("\t\tPercentage: %.2f%%\n", percentage);
cgpa = percentage / 25;
printf("\t\tGPA: %.2f out of 4.00\n", cgpa);
s.cgpa=cgpa;
fwrite(&s,sizeof(s),1,fp);
printf("\n\n\t\tAdd another student?(Y/N)?");
fflush(stdin);
another=getchar();
}
}
void modify(FILE * fp)
{
title();
Student s;
int i,flag=0,tempRoll,siz=sizeof(s);
float cgpa;
float total = 0;
float percentage;
printf("\n\n\tEnter Roll Number of Student to MODIFY the Record : ");
scanf("%d",&tempRoll);
rewind(fp);
while((fread(&s,siz,1,fp))==1)
{
if(s.roll==tempRoll)
{
flag=1;
break;
}
}
if(flag==1)
24
{
fseek(fp,-siz,SEEK_CUR);
printf("\n\n\t\t\t\tRecord Found\n\t\t\t");
printChar('=',38);
printf("\n\n\t\t\tStudent Name: %s",s.name);
printf("\n\n\t\t\tStudent Roll: %d\n\t\t\t",s.roll);
printChar('=',38);
printf("\n\n\t\t\tEnter New Data for the student");
printf("\n\n\t\t\tEnter Full Name of Student: ");
fflush(stdin);
fgets(s.name,100,stdin);
s.name[strlen(s.name)-1]='\0';
printf("\n\n\t\t\tEnter Faculty: ");
fflush(stdin);
fgets(s.dept,50,stdin);
s.dept[strlen(s.dept)-1]='\0';
printf("\n\n\t\t\tEnter Roll number: ");
scanf("%d",&s.roll);
printf("\n\n\t\tEnter Marks in 5 subjects\n");
for(i=0,cgpa=0; i<5; i++)
{
printf("\t\tSubject %d: ", i+1);
scanf("%f",&s.sgpa[i]);
total+=s.sgpa[i];
}
percentage = (total / 500) * 100;
printf("\t\tPercentage: %.2f%%\n", percentage);
cgpa = percentage / 25;
printf("\t\tGPA: %.2f out of 4.00\n", cgpa);
fwrite(&s,sizeof(s),1,fp);
}
else printf("\n\n\t!!!! ERROR !!!! RECORD NOT FOUND");
printf("\n\n\t");
system("pause");
}
void display(FILE * fp)
{
title();
Student s;
int i,siz=sizeof(s);
rewind(fp);
while((fread(&s,siz,1,fp))==1)
{
printf("\n\t\tNAME : %s",s.name);
25
printf("\n\n\t\tFaculty : %s",s.dept);
printf("\n\n\t\tROLL : %d",s.roll);
printf("\n\n\tMarks: ");
for(i=0; i<5; i++)
printf("| %.2f |",s.sgpa[i]);
printf("\n\n\t\tCGPA : %.2f\n\t",s.cgpa);
printChar('-',65);
}
printf("\n\n\n\t");
printChar('*',65);
printf("\n\n\t");
system("pause");
}
void Indivisual(FILE *fp)
{
title();
int tempRoll,flag,siz,i;
Student s;
char another='y';
siz=sizeof(s);
while(another=='y'||another=='Y')
{
printf("\n\n\tEnter Roll Number: ");
scanf("%d",&tempRoll);
rewind(fp);
while((fread(&s,siz,1,fp))==1)
{
if(s.roll==tempRoll)
{
flag=1;
break;
}
}
if(flag==1)
{
printf("\n\t\tNAME : %s",s.name);
printf("\n\n\t\tFaculty : %s",s.dept);
printf("\n\n\t\tROLL : %d",s.roll);
printf("\n\n\tMarks: ");
for(i=0; i<5; i++)
printf("| %.2f |",s.sgpa[i]);
printf("\n\n\t\tCGPA : %.2f\n\t",s.cgpa);
printChar('-',65);
}
26
else printf("\n\n\t\t!!!! ERROR RECORD NOT FOUND !!!!");
printf("\n\n\t\tShow another student information? (Y/N)?");
fflush(stdin);
another=getchar();
}
}
FILE * del(FILE * fp)
{
title();
Student s;
int flag=0,tempRoll,siz=sizeof(s);
FILE *ft;
if((ft=fopen("temp.txt","wb+"))==NULL)
{
printf("\n\n\t\t\t\\t!!! ERROR !!!\n\t\t");
system("pause");
return fp;
}
printf("\n\n\tEnter Roll number of Student to Delete the Record");
printf("\n\n\t\t\tRoll No. : ");
scanf("%d",&tempRoll);
rewind(fp);
while((fread(&s,siz,1,fp))==1)
{
if(s.roll==tempRoll)
{
flag=1;
printf("\n\tRecord Deleted for");
printf("\n\n\t\t%s\n\n\t\t%s\n\n\t\t%d\n\t",s.name,s.dept,s.roll);
continue;
}
fwrite(&s,siz,1,ft);
}
fclose(fp);
fclose(ft);
remove("db.txt");
rename("temp.txt","db.txt");
if((fp=fopen("db.txt","rb+"))==NULL)
{
printf("ERROR");
return NULL;
}
if(flag==0) printf("\n\n\t\tNO STUDENT FOUND WITH THE INFORMATION\n\t");
printChar('-',65);
27
printf("\n\t");
system("pause");
return fp;
}
void exitMessage(){
title();
printf(" \n\n\n\t\t Thank You for Using Student Manaement System");
printf("\n\n\n\t\t\t \e[1mProject Presented To: \e[m ");
printf("\n\t\t\t \e[1m POKHARA UNIVERSITY\e[m \n");
printf("\n\t\t\t Faculty of Science and Technology ");
printf("\n\t\t\t Crimson College of Technology ");
printf("\n\n\n\t\t\t \e[1mProject Presented By: \e[m ");
printf("\n\tS.N \t Name\t\t\t Symbol No.\t Registration No. ");
printf("\n\t1 \t Krishna Pd Bashyal\t 21535193\t 2021-1-53-0448 ");
printf("\n\t2 \t Abhishek Pandey\t 21535178\t 2021-1-53-0431 ");
printf("\n\t3 \t Aarthik Bashyal\t 21535182\t 2021-1-53-0435 ");
printf("\n\t4 \t Abhishek Dhakal\t 21535177\t 2021-1-53-0430 ");
printf("\n\t");
printChar('*',64);
getch();
}
28
APPENDIX-4
SCREENSHOTS
Welcome Page:
Dashboard
29
Add Student:
Modify Student:
30
Show All Student:
Individual View:
31
Remove Student:
Exit Window ;
32
APPENDIX-5
CONCLUSION
This application provides an easy way to manage the Student records. This
application is designed uniquely, it can be modified or updated can be done easily. It is
developed by using a VS Code text editor. This application is very useful for Students to
handle the records.
The aim of developing the " STUDENT MANAGEMENT SYSTEM" was to make
it easy to manage the Student’s system. It allows the storage of records of students, teachers,
staffs details, and deleting them. It was developed by using vs code text editor, two 64-bit
laptops (Lenovo intel core i5 & hp Pentium), SSD, HDD, etc.
Student management system make faculty jobs more accessible by giving them an
easy place to find and sort information. This system allows teachers and student managers
to follow with their student engagement.
APPENDIX-6
ABBREVIATION
IT=Information Technology
SMS=Student Management System
CUI=Character User Interface
GB=Giga Byte
HDD=Hard Disk Drive
SSD=Solid State Drive
RAM=Random Access Memory
APPENDIX-7
List of References:
Yedidyah Langsam, Data Structures Using C and C++
Shankar Nath Adhikari, Programming with C and C++
Online References:
Search Engine: GOOGLE [https://www.google.com/]
W3School[https://www.w3schools.com/]
33