Project Report On Library Management System: Submitted by
Project Report On Library Management System: Submitted by
Project report
On
Library Management
System
Submitted By:
Tanuj Khandelwal
Class XII
Roll No.
Checked By
TABLE OF CONTENTS
Certificate
Acknowledgement
Coding
Requirements
Bibliography
Certificate
This is to certify that Tanuj Khandelwal of class XII, Rukmani Birla Modern
High School, Jaipur has successfully completed his project in computer
practical for the AISSCE as prescribed by CBSE in the year 2015-2016.
Date :
Registration No. :
ACKNOWLEDGEMENT
//******************************************************
*********
//
//******************************************************
**********
#include<fstream.h>
#include<conio.h>
#include<stdio.h>
#include<process.h>
#include<string.h>
#include<iomanip.h>
//******************************************************
*********
//
//******************************************************
**********
class book
{
char bno[6];
char bname[50];
char aname[20];
public:
void create_book()
{
char* retbno()
{
return bno;
void report()
{
cout<<bno<<setw(30)<<bname<<setw(30)<<aname<<endl
;}
};
class student
{
char admno[6];
char name[20];
char stbno[6];
int token;
public:
void create_student()
{
clrscr();
cout<<"\nNEW STUDENT ENTRY...\n";
cout<<"\nEnter The admission no. ";
cin>>admno;
cout<<"\n\nEnter The Name of The Student ";
gets(name);
token=0;
stbno[0]='/0';
cout<<"\n\nStudent Record Created..";
void show_student()
{
cout<<"\nAdmission no. : "<<admno;
cout<<"\nStudent Name : ";
puts(name);
cout<<"\nNo of Book issued : "<<token;
if(token==1)
cout<<"\nBook No "<<stbno;
}
void modify_student()
{
cout<<"\nAdmission no. : "<<admno;
cout<<"\nModify Student Name : ";
gets(name);
}
char* retadmno()
{
return admno; }
char* retstbno()
{
return stbno;
int rettoken()
{
return token;
void addtoken()
{token=1;}
void resettoken()
{token=0;}
strcpy(stbno,t); }
void report()
{cout<<"\t"<<admno<<setw(20)<<name<<setw(10)<<token<<end
l;}
};
//******************************************************
*********
//
//******************************************************
**********
fstream fp,fp1;
book bk;
student st;
//******************************************************
*********
//
//******************************************************
**********
void write_book()
{
char ch;
fp.open("b11.dat",ios::app);
do
{
clrscr();
bk.create_book();
fp.write((char*)&bk,sizeof(book));
cout<<"\n\nDo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
void write_student()
{
char ch;
fp.open("s11.dat",ios::app);
do
{
st.create_student();
fp.write((char*)&st,sizeof(student));
cout<<"\n\ndo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
//******************************************************
*********
//
//******************************************************
**********
void display_spb(char n[])
{
cout<<"\nBOOK DETAILS\n";
int flag=0;
fp.open("b11.dat",ios::in);
while(fp.read((char*)&bk,sizeof(book)))
{
if(strcmpi(bk.retbno(),n)==0)
{
bk.show_book();
flag=1;
}
}
fp.close();
if(flag==0)
cout<<"\n\nBook does not exist";
getch();
}
fp.close();
if(flag==0)
cout<<"\n\nStudent does not exist";
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void modify_book()
{
char n[6];
int found=0;
clrscr();
cout<<"\n\n\tMODIFY BOOK REOCORD.... ";
cout<<"\n\n\tEnter The book no. of The book";
cin>>n;
fp.open("b11.dat",ios::in|ios::out);
while(fp.read((char*)&bk,sizeof(book)) && found==0)
{
if(strcmpi(bk.retbno(),n)==0)
{
bk.show_book();
cout<<"\nEnter The New Details of book"<<endl;
bk.modify_book();
int pos=-1*sizeof(bk);
fp.seekp(pos,ios::cur);
fp.write((char*)&bk,sizeof(book));
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"\n\n\t Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"\n\n Record Not Found ";
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void delete_student()
{
char n[6];
int flag=0;
clrscr();
cout<<"\n\n\n\tDELETE STUDENT...";
cout<<"\n\nEnter The admission no. of the Student You Want
To Delete : ";
cin>>n;
fp.open("s11.dat",ios::in|ios::out);
fstream fp2;
fp2.open("Temp.dat",ios::out);
fp.seekg(0,ios::beg);
while(fp.read((char*)&st,sizeof(student)))
{
if(strcmpi(st.retadmno(),n)!=0)
fp2.write((char*)&st,sizeof(student));
else
flag=1;
}
fp2.close();
fp.close();
remove("s11.dat");
rename("Temp.dat","s11.dat");
if(flag==1)
cout<<"\n\n\tRecord Deleted ..";
else
cout<<"\n\nRecord not found";
getch();
}
void delete_book()
{
char n[6];
clrscr();
cout<<"\n\n\n\tDELETE BOOK ...";
cout<<"\n\nEnter The Book no. of the Book You Want To Delete
: ";
cin>>n;
fp.open("b11.dat",ios::in|ios::out);
fstream fp2;
fp2.open("Temp.dat",ios::out);
fp.seekg(0,ios::beg);
while(fp.read((char*)&bk,sizeof(book)))
{
if(strcmpi(bk.retbno(),n)!=0)
{
fp2.write((char*)&bk,sizeof(book));
}
}
fp2.close();
fp.close();
remove("b11.dat");
rename("Temp.dat","b11.dat");
cout<<"\n\n\tRecord Deleted ..";
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void display_alls()
{
clrscr();
fp.open("s11.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"\n\n\t\tSTUDENT LIST\n\n";
cout<<"========================================
==========\n";
cout<<"\tAdmission
No."<<setw(10)<<"Name"<<setw(20)<<"Book Issued\n";
cout<<"========================================
==========\n";
while(fp.read((char*)&st,sizeof(student)))
{
st.report();
}
fp.close();
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void display_allb()
{
clrscr();
fp.open("b11.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"\n\n\t\tBook LIST\n\n";
cout<<"========================================
==========\n";
cout<<"Book Number"<<setw(20)<<"Book
Name"<<setw(25)<<"Author\n";
cout<<"========================================
=========\n";
while(fp.read((char*)&bk,sizeof(book)))
{
bk.report();
fp.close();
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void book_issue()
{
char sn[6],bn[6];
int found=0,flag=0;
clrscr();
cout<<"\n\nBOOK ISSUE ...";
cout<<"\n\n\tEnter The student's admission no.";
cin>>sn;
fp.open("s11.dat",ios::in|ios::out);
fp1.open("b11.dat",ios::in|ios::out);
while(fp.read((char*)&st,sizeof(student)) && found==0)
{
if(strcmpi(st.retadmno(),sn)==0)
{
found=1;
if(st.rettoken()==0)
{
cout<<"\n\n\tEnter the book no. ";
cin>>bn;
while(fp1.read((char*)&bk,sizeof(book))&&
flag==0)
{
if(strcmpi(bk.retbno(),bn)==0)
{
bk.show_book();
flag=1;
st.addtoken();
st.getstbno(bk.retbno());
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"\n\n\t Book issued
successfully\n\nPlease Note: Write
the current date in backside of your
book and submit within 15 days fine
Rs. 1 for each day after 15 days
period";
}
}
if(flag==0)
cout<<"Book no does not exist";
}
else
cout<<"You have not returned the last book ";
}
}
if(found==0)
cout<<"Student record not exist...";
getch();
fp.close();
fp1.close();
}
//******************************************************
*********
//
//******************************************************
**********
void book_deposit()
{
char sn[6],bn[6];
int found=0,flag=0,day,fine;
clrscr();
cout<<"\n\nBOOK DEPOSIT ...";
cout<<"\n\n\tEnter The students admission no.";
cin>>sn;
fp.open("s11.dat",ios::in|ios::out);
fp1.open("b11.dat",ios::in|ios::out);
while(fp.read((char*)&st,sizeof(student)) && found==0)
{
if(strcmpi(st.retadmno(),sn)==0)
{
found=1;
if(st.rettoken()==1)
{
while(fp1.read((char*)&bk,sizeof(book))&& flag==0)
{
if(strcmpi(bk.retbno(),st.retstbno())==0)
{
bk.show_book();
flag=1;
cout<<"\n\nBook deposited in no. of days";
cin>>day;
if(day>15)
{
fine=(day-15)*1;
cout<<"\n\nFine has to deposited Rs.
"<<fine;
}
st.resettoken();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"\n\n\t Book deposited
successfully";
}
}
if(flag==0)
cout<<"Book no does not exist";
}
else
cout<<"No book is issued..please check!!";
}
}
if(found==0)
cout<<"Student record not exist...";
getch();
fp.close();
fp1.close();
}
//******************************************************
*********
//
INTRODUCTION FUNCTION
//******************************************************
**********
void intro()
{
clrscr();
gotoxy(35,11);
cout<<"LIBRARY";
gotoxy(35,14);
cout<<"MANAGEMENT";
gotoxy(35,17);
cout<<"SYSTEM";
cout<<"\n\nMADE BY : Anubhav Shrimal";
cout<<"\n\nSCHOOL : Rukmani Birla Modern High School,
Jaipur";
getch();
}
//******************************************************
*********
//
//******************************************************
**********
void admin_menu()
{
clrscr();
int ch2;
cout<<"\n\n\n\tADMINISTRATOR MENU";
cout<<"\n\n\t1.CREATE STUDENT RECORD";
cout<<"\n\n\t2.DISPLAY ALL STUDENTS RECORD";
cout<<"\n\n\t3.DISPLAY SPECIFIC STUDENT RECORD ";
cout<<"\n\n\t4.MODIFY STUDENT RECORD";
cout<<"\n\n\t5.DELETE STUDENT RECORD";
cout<<"\n\n\t6.CREATE BOOK ";
cout<<"\n\n\t7.DISPLAY ALL BOOKS ";
cout<<"\n\n\t8.DISPLAY SPECIFIC BOOK ";
//******************************************************
*********
//
//******************************************************
**********
void main()
{
char ch;
intro();
do
{
clrscr();
cout<<"\n\n\n\tMAIN MENU";
//******************************************************
*********
//
END OF PROJECT
//******************************************************
*********
LIBRARY
MANAGEMENT
SYSTEM
04. EXIT
6.CREATE BOOK
9.MODIFY BOOK
10.DELETE BOOK
==============================================
=
Admission No.
Name
Book Issued
==============================================
=
A01
Anuj
A02
Amit
0
0
STUDENT DETAILS
No of Book issued : 0
Record Updated
Enter The admission no. of the Student You Want To Delete : A02
Record Deleted ..
Book Created..
Do you want to add more record..(y/n?)N
==============================================
==================
Book Number
Book Name
Author
==============================================
==================
B01
B02
C++
IP
Sumita
SUMITA
BOOK DETAILS
Book Name : IP
Record Updated
Enter The Book no. of the Book You Want To Delete : B02
Record Deleted ..
MAIN MENU
04. EXIT
If Option 4 is selected:
Program will exit.
REQUIREMENTS
HARDWARE REQUIRED
Printer, to print the required
documents of the project
Compact Drive
Processor : Pentium III
Ram : 64 MB
Harddisk : 20 Gb.
SOFTWARE REQUIRED
Operating system : Windows XP
Turbo C++, for execution of program
and
Ms word, for presentation of output.
BIBLIOGRAPHY