NAME OF SCHOOL: STAY MOTIVATED
NAME OF STUDENT: XYZ
CLASS : 11TH AND 12TH
GUIDED BY : XYZ (TEACHERS)
PROJECT
2018-19
Content
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Certificate
Acknowledgement
Requirements
Header Files And Purpose
General Description
Functions & Their Purpose
Flow Chart
Source code
Output
Limitations
Bibliography
Certificate
This is certify that “NAME” of
class 12th has successfully completed his
“Computer science practical Report file”.
During academic session 2017-2018as
per the guidelines issued by CBSE.
Examiner’sTeacher’s Signature
signature
DATE PRINCIPAL
Acknowledgement
I wish to express our sincere thanks to
Mr.VIVEK JAT Principal, Stay Motivated R
k puram sector-2, New Delhi for guiding us
to cause the successful outcome of this
project work.
I wish to express our deep & profound sense of
gratitude to our guide teacher (COMP), For him
expert help & valuable guidance, comments and
suggestions.
I also place on record, our sincere Gratitude to
one and all who Directly or Indirectly .Have
Lent their helping hand in this venture
Requirements
Hardware
❖Printer to print the project
report.
❖ Compact Disc.
❖ Ram 4 GB
❖Hard Disk 1024Gb
Software
❖ Operating System Windows 10
❖Turbo C++ For Execution Of
Program.
❖MS Word For Report
Presentation.
Header files and their purpose
★Fstream.h :- This data type represents the file
stream generally, and has the capabilities of both
ofstream and ifstream which means it can create files,
write information to files, and read information from
files.
★Conio.h :-conio.h is a C header file used mostly by
MS-DOS compilers to provide console input/output. It is
not part of the C standard library or ISO C, nor is it defined
by POSIX. This header declares several useful library
functions for performing "console input and output" from a
program.
★stdio.h:- is a statement which tells the compiler toinsert
the contents of stdio at that particular place.
★process.h :- is a C header file which containsfunction
declarations and macros used in working with threads and
processes. Most C compilers that target DOS, Windows
3.1x, Win32, OS/2, Novell NetWare or DOS extenders
supply this header and the library functions in their C
library. Neither the header file nor most of the functions are
defined by either the ANSI/ISO C standard or by POSIX.
★iomanip.h:- is a header file in C++ whichcontains
predefined functions for manipulating the output.
★String.h:-Provides many "string" handling functions.
Arguments are character arrays, or occasionally integers
designating a length and/or location.
Functions & Their Purpose
1).This function is used for write files(this
function helps in storing the database in disk).
void write_book()
{
char ch;
fp.open("book.dat",ios::out|ios::app);
do
{
clrscr();
bk.create_book();
fp.write((char*)&bk,sizeof(book));
cout<<"nnDo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
void write_student()
{
char ch;
fp.open("student.dat",ios::out|ios::app);
do
{
st.create_student();
fp.write((char*)&st,sizeof(student));
cout<<"nndo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();}
2).This function reads specific record(this
function reads all records stored in disk in
database files).
void display_spb(char n[])
{
cout<<"nBOOK DETAILSn";
int flag=0;
fp.open("book.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<<"nnBook does not exist";
getch();
}
void display_sps(char n[])
{
cout<<"nSTUDENT DETAILSn";
int flag=0;
fp.open("student.dat",ios::in);
while(fp.read((char*)&st,sizeof(student)))
{
if((strcmpi(st.retadmno(),n)==0))
{
st.show_student();
flag=1;
}
}
fp.close();
if(flag==0)
cout<<"nnStudent does not exist";
getch();
}
3).This function used for modify a record
file(This function modify already added
student details and books details in database).
void modify_book()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY BOOK REOCORD.... ";
cout<<"nntEnter The book no. of The book";
cin>>n;
fp.open("book.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));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
void modify_student()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY STUDENT RECORD... ";
cout<<"nntEnter The admission no. of The student";
cin>>n;
fp.open("student.dat",ios::in|ios::out);
while(fp.read((char*)&st,sizeof(student)) && found==0)
{
if(strcmpi(st.retadmno(),n)==0)
{
st.show_student();
cout<<"nEnter The New Details of student"<<endl;
st.modify_student();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
5).This function used for deleting recorded
records(this function deletes exisiting recorded
details of students and books from database).
void delete_student()
{
char n[6];
int flag=0;
clrscr();
cout<<"nnntDELETE STUDENT...";
cout<<"nnEnter The admission no. of the Student You Want To Delete : ";
cin>>n;
fp.open("student.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("student.dat");
rename("Temp.dat","student.dat");
if(flag==1)
cout<<"nntRecord Deleted ..";
else
cout<<"nnRecord not found";
getch();
}
void delete_book()
{
char n[6];
clrscr();
cout<<"nnntDELETE BOOK ...";
cout<<"nnEnter The Book no. of the Book You Want To Delete : ";
cin>>n;
fp.open("book.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("book.dat");
rename("Temp.dat","book.dat");
cout<<"nntRecord Deleted ..";
getch();
}
6).This function displays list of all
students(This function display list of total
students from database files).
void display_alls()
{
clrscr();
fp.open("student.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
rte record of file
//****************************************************************
eturn;
}
cout<<"nnttSTUDENT LISTnn";
cout<<"===============================================================
===n";
cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"Book Issuedn";
cout<<"===============================================================
===n";
while(fp.read((char*)&st,sizeof(student)))
{
st.report();
}
fp.close();
getch();
}
7)This function display all books.
void display_allb()
{
clrscr();
fp.open("book.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"nnttBook LISTnn";
cout<<"===============================================================
==========n";
cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn";
cout<<"===============================================================
==========n";
while(fp.read((char*)&bk,sizeof(book)))
{
bk.report();
}
fp.close();
getch();
}
8)This function helps in issuing of books.
void book_issue()
{
char sn[6],bn[6];
int found=0,flag=0;
clrscr();
cout<<"nnBOOK ISSUE ...";
cout<<"nntEnter The student's admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nntEnter 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<<"Book issued successfully!";
cout<<"n Write current date in backside of book
and submit book within 15 days."
"other wise fine of Rs.1/day is charged.";
}
}
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();
}
9).This function helps in depositing books
back.
void book_deposit()
{
char sn[6],bn[6];
int found=0,flag=0,day,fine;
clrscr();
cout<<"nnBOOK DEPOSIT ...";
cout<<"nntEnter The student admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nnBook deposited in no. of days";
cin>>day;
if(day>15)
{
fine=(day-15)*1;
cout<<"nnFine has to deposited Rs. "<<fine;
}
st.resettoken();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt 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();
}
10).This Is A Introduction Function(This
function displays Name of creator and school
on home page).
void intro()
{
clrscr();
gotoxy(35,11);
cout<<"Library management system";
cout<<"nnMADE BY : Lokesh Meena";
cout<<"nnSCHOOL : K V S R K Puram Sector-2";
getch();
}
11).This Function is for Administrator
Menu(this function shows adminstrator
menu).
void admin_menu()
{
clrscr();
int ch2;
cout<<"nnntADMINISTRATOR MENU";
cout<<"nnt1.CREATE STUDENT RECORD";
cout<<"nnt2.DISPLAY ALL STUDENTS RECORD";
cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD ";
cout<<"nnt4.MODIFY STUDENT RECORD";
cout<<"nnt5.DELETE STUDENT RECORD";
cout<<"nnt6.CREATE BOOK ";
cout<<"nnt7.DISPLAY ALL BOOKS ";
cout<<"nnt8.DISPLAY SPECIFIC BOOK ";
cout<<"nnt9.MODIFY BOOK ";
cout<<"nnt10.DELETE BOOK ";
cout<<"nnt11.MAIN MENU";
cout<<"nntPlease Enter Your Choice (1-11) ";
cin>>ch2;
switch(ch2)
{
case 1: clrscr();
write_student();break;
case 2: display_alls();break;
case 3:
char num[6];
clrscr();
cout<<"nntPlease Enter The Admission No. ";
cin>>num;
display_sps(num);
break;
case 4: modify_student();break;
case 5: delete_student();break;
case 6: clrscr();
write_book();break;
case 7: display_allb();break;
case 8: {
char num[6];
clrscr();
cout<<"nntPlease Enter The book No. ";
cin>>num;
display_spb(num);
break;
}
case 9: modify_book();break;
case 10: delete_book();break;
case 11: return;
default:cout<<"a";
}
admin_menu();
}
13).This Is The Main Function Of
Program(it displays main menu).
void main()
{
char ch;
intro();
do
{
clrscr();
cout<<"nnntMAIN MENU";
cout<<"nnt1. BOOK ISSUE";
cout<<"nnt2. BOOK DEPOSIT";
cout<<"nnt3. ADMINISTRATOR MENU";
cout<<"nnt4. EXIT";
cout<<"nntPlease Select Your Option (1-4) ";
ch=getche();
switch(ch)
{
case '1':clrscr();
book_issue();
break;
case '2':book_deposit();
break;
case '3':admin_menu();
break;
case '4':exit(0);
default :cout<<"a";
}
}while(ch!='4');
General description
Library Management System is a software used to manages the catalog of a library. This
helps to keep the records of whole transactions of the books available in the library.
Library Management System which is very easy to use and fulfills all the requirement of a
librarian. There are many features which helps librarian to keep records of available books
as well as issued books..
Here is a list of some features of Library Management System
● Keep record of different categories like; Books, Journals, Newspapers,
Magazines, etc.
● Classify the books subject wise.
● Easy way to enter new books.
● Keep record of complete information of a book like; Book name, Author name,
Publisher’s name, Date/ Year of publication, Cost of the book, Book purchasing
date/ Bill no.
● Easy way to make a check-out.
● Easy way to make a check-in.
● Automatic fine calculation for late returns.
● Different criteria for searching a book.
● Different kind of reports like; total no. of books, no. of issued books, no. of
journals, etc.
● Easy way to know how many books are issued to a particular student.
● Easy way to know the status of a book.
● and much more.
Flow Chart
Source code
#include<fstream.h>
#include<conio.h>
#include<stdio.h>
#include<process.h>
#include<string.h>
#include<iomanip.h>
//***************************************************************
// CLASS USED IN PROJECT
//****************************************************************
class book
{
char bno[6];
char bname[50];
char aname[20];
public:
void create_book()
{
cout<<"nNEW BOOK ENTRY...n";
cout<<"nEnter The book no.";
cin>>bno;
cout<<"nnEnter The Name of The Book ";
gets(bname);
cout<<"nnEnter The Author's Name ";
gets(aname);
cout<<"nnnBook Created..";
}
void show_book()
{
cout<<"nBook no. : "<<bno;
cout<<"nBook Name : ";
puts(bname);
cout<<"Author Name : ";
puts(aname);
}
void modify_book()
{
cout<<"nBook no. : "<<bno;
cout<<"nModify Book Name : ";
gets(bname);
cout<<"nModify Author's Name of Book : ";
gets(aname);
}
char* retbno()
{
return bno;
}
void report()
{cout<<bno<<setw(30)<<bname<<setw(30)<<aname<<endl;}
}; //class ends here
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<<"nnEnter The Name of The Student ";
gets(name);
token=0;
stbno[0]='/0';
cout<<"nnStudent 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;}
void getstbno(char t[])
{
strcpy(stbno,t);
}
void report()
{cout<<"t"<<admno<<setw(20)<<name<<setw(10)<<token<<endl;}
}; //class ends here
//***************************************************************
// global declaration for stream object, object
//****************************************************************
fstream fp,fp1;
book bk;
student st;
//***************************************************************
// function to write in file
//****************************************************************
void write_book()
{
char ch;
fp.open("book.dat",ios::out|ios::app);
do
{
clrscr();
bk.create_book();
fp.write((char*)&bk,sizeof(book));
cout<<"nnDo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
void write_student()
{
char ch;
fp.open("student.dat",ios::out|ios::app);
do
{
st.create_student();
fp.write((char*)&st,sizeof(student));
cout<<"nndo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
//***************************************************************
// function to read specific record from file
//****************************************************************
void display_spb(char n[])
{
cout<<"nBOOK DETAILSn";
int flag=0;
fp.open("book.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<<"nnBook does not exist";
getch();
}
void display_sps(char n[])
{
cout<<"nSTUDENT DETAILSn";
int flag=0;
fp.open("student.dat",ios::in);
while(fp.read((char*)&st,sizeof(student)))
{
if((strcmpi(st.retadmno(),n)==0))
{
st.show_student();
flag=1;
}
}
fp.close();
if(flag==0)
cout<<"nnStudent does not exist";
getch();
}
//***************************************************************
// function to modify record of file
//****************************************************************
void modify_book()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY BOOK REOCORD.... ";
cout<<"nntEnter The book no. of The book";
cin>>n;
fp.open("book.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));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
void modify_student()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY STUDENT RECORD... ";
cout<<"nntEnter The admission no. of The student";
cin>>n;
fp.open("student.dat",ios::in|ios::out);
while(fp.read((char*)&st,sizeof(student)) && found==0)
{
if(strcmpi(st.retadmno(),n)==0)
{
st.show_student();
cout<<"nEnter The New Details of student"<<endl;
st.modify_student();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
//***************************************************************
// function to delevoid delete_student()
{
char n[6];
int flag=0;
clrscr();
cout<<"nnntDELETE STUDENT...";
cout<<"nnEnter The admission no. of the Student You Want To Delete : ";
cin>>n;
fp.open("student.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("student.dat");
rename("Temp.dat","student.dat");
if(flag==1)
cout<<"nntRecord Deleted ..";
else
cout<<"nnRecord not found";
getch();
}
void delete_book()
{
char n[6];
clrscr();
cout<<"nnntDELETE BOOK ...";
cout<<"nnEnter The Book no. of the Book You Want To Delete : ";
cin>>n;
fp.open("book.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("book.dat");
rename("Temp.dat","book.dat");
cout<<"nntRecord Deleted ..";
getch();
}
//***************************************************************
// function to display all students list
//****************************************************************
void display_alls()
{
clrscr();
fp.open("student.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
rte record of file
//****************************************************************
eturn;
}
cout<<"nnttSTUDENT LISTnn";
cout<<"===============================================================
===n";
cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"Book Issuedn";
cout<<"===============================================================
===n";
while(fp.read((char*)&st,sizeof(student)))
{
st.report();
}
fp.close();
getch();
}
//***************************************************************
// function to display Books list
//****************************************************************
void display_allb()
{
clrscr();
fp.open("book.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"nnttBook LISTnn";
cout<<"===============================================================
==========n";
cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn";
cout<<"===============================================================
==========n";
while(fp.read((char*)&bk,sizeof(book)))
{
bk.report();
}
fp.close();
getch();
}
//***************************************************************
// function to issue book
//****************************************************************
void book_issue()
{
char sn[6],bn[6];
int found=0,flag=0;
clrscr();
cout<<"nnBOOK ISSUE ...";
cout<<"nntEnter The student's admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nntEnter 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<<"Book issued successfully!";
cout<<"n Write current date in backside of book
and submit book within 15 days."
"other wise fine of Rs.1/day is charged.";
}
}
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();
}
//***************************************************************
// function to deposit book
//****************************************************************
void book_deposit()
{
char sn[6],bn[6];
int found=0,flag=0,day,fine;
clrscr();
cout<<"nnBOOK DEPOSIT ...";
cout<<"nntEnter The student admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nnBook deposited in no. of days";
cin>>day;
if(day>15)
{
fine=(day-15)*1;
cout<<"nnFine has to deposited Rs. "<<fine;
}
st.resettoken();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt 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 management system";
cout<<"nnMADE BY : Lokesh Meena";
cout<<"nnSCHOOL : K V S R K Puram Sector-2";
getch();
}
//***************************************************************
// ADMINISTRATOR MENU FUNCTION
//****************************************************************
void admin_menu()
{
clrscr();
int ch2;
cout<<"nnntADMINISTRATOR MENU";
cout<<"nnt1.CREATE STUDENT RECORD";
cout<<"nnt2.DISPLAY ALL STUDENTS RECORD";
cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD ";
cout<<"nnt4.MODIFY STUDENT RECORD";
cout<<"nnt5.DELETE STUDENT RECORD";
cout<<"nnt6.CREATE BOOK ";
cout<<"nnt7.DISPLAY ALL BOOKS ";
cout<<"nnt8.DISPLAY SPECIFIC BOOK ";
cout<<"nnt9.MODIFY BOOK ";
cout<<"nnt10.DELETE BOOK ";
cout<<"nnt11.MAIN MENU";
cout<<"nntPlease Enter Your Choice (1-11) ";
cin>>ch2;
switch(ch2)
{
case 1: clrscr();
write_student();break;
case 2: display_alls();break;
case 3:
char num[6];
clrscr();
cout<<"nntPlease Enter The Admission No. ";
cin>>num;
display_sps(num);
break;
case 4: modify_student();break;
case 5: delete_student();break;
case 6: clrscr();
write_book();break;
case 7: display_allb();break;
case 8: {
char num[6];
clrscr();
cout<<"nntPlease Enter The book No. ";
cin>>num;
display_spb(num);
break;
}
case 9: modify_book();break;
case 10: delete_book();break;
case 11: return;
default:cout<<"a";
}
admin_menu();
}
//***************************************************************
// THE MAIN FUNCTION OF PROGRAM
//****************************************************************
void main()
{
char ch;
intro();
do
{
clrscr();
cout<<"nnntMAIN MENU";
cout<<"nnt1. BOOK ISSUE";
cout<<"nnt2. BOOK DEPOSIT";
cout<<"nnt3. ADMINISTRATOR MENU";
cout<<"nnt4. EXIT";
cout<<"nntPlease Select Your Option (1-4) ";
ch=getche();
switch(ch)
{
case '1':clrscr();
book_issue();
break;
case '2':book_deposit();
break;
case '3':admin_menu();
break;
case '4':exit(0);
default :cout<<"a";
}
}while(ch!='4');
}include<fstream.h>
#include<conio.h>
#include<stdio.h>
#include<process.h>
#include<string.h>
#include<iomanip.h>
//***************************************************************
// CLASS USED IN PROJECT
//****************************************************************
class book
{
char bno[6];
char bname[50];
char aname[20];
public:
void create_book()
{
cout<<"nNEW BOOK ENTRY...n";
cout<<"nEnter The book no.";
cin>>bno;
cout<<"nnEnter The Name of The Book ";
gets(bname);
cout<<"nnEnter The Author's Name ";
gets(aname);
cout<<"nnnBook Created..";
}
void show_book()
{
cout<<"nBook no. : "<<bno;
cout<<"nBook Name : ";
puts(bname);
cout<<"Author Name : ";
puts(aname);
}
void modify_book()
{
cout<<"nBook no. : "<<bno;
cout<<"nModify Book Name : ";
gets(bname);
cout<<"nModify Author's Name of Book : ";
gets(aname);
}
char* retbno()
{
return bno;
}
void report()
{cout<<bno<<setw(30)<<bname<<setw(30)<<aname<<endl;}
}; //class ends here
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<<"nnEnter The Name of The Student ";
gets(name);
token=0;
stbno[0]='/0';
cout<<"nnStudent 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;}
void getstbno(char t[])
{
strcpy(stbno,t);
}
void report()
{cout<<"t"<<admno<<setw(20)<<name<<setw(10)<<token<<endl;}
}; //class ends here
//***************************************************************
// global declaration for stream object, object
//****************************************************************
fstream fp,fp1;
book bk;
student st;
//***************************************************************
// function to write in file
//****************************************************************
void write_book()
{
char ch;
fp.open("book.dat",ios::out|ios::app);
do
{
clrscr();
bk.create_book();
fp.write((char*)&bk,sizeof(book));
cout<<"nnDo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
void write_student()
{
char ch;
fp.open("student.dat",ios::out|ios::app);
do
{
st.create_student();
fp.write((char*)&st,sizeof(student));
cout<<"nndo you want to add more record..(y/n?)";
cin>>ch;
}while(ch=='y'||ch=='Y');
fp.close();
}
//***************************************************************
// function to read specific record from file
//****************************************************************
void display_spb(char n[])
{
cout<<"nBOOK DETAILSn";
int flag=0;
fp.open("book.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<<"nnBook does not exist";
getch();
}
void display_sps(char n[])
{
cout<<"nSTUDENT DETAILSn";
int flag=0;
fp.open("student.dat",ios::in);
while(fp.read((char*)&st,sizeof(student)))
{
if((strcmpi(st.retadmno(),n)==0))
{
st.show_student();
flag=1;
}
}
fp.close();
if(flag==0)
cout<<"nnStudent does not exist";
getch();
}
//***************************************************************
// function to modify record of file
//****************************************************************
void modify_book()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY BOOK REOCORD.... ";
cout<<"nntEnter The book no. of The book";
cin>>n;
fp.open("book.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));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
void modify_student()
{
char n[6];
int found=0;
clrscr();
cout<<"nntMODIFY STUDENT RECORD... ";
cout<<"nntEnter The admission no. of The student";
cin>>n;
fp.open("student.dat",ios::in|ios::out);
while(fp.read((char*)&st,sizeof(student)) && found==0)
{
if(strcmpi(st.retadmno(),n)==0)
{
st.show_student();
cout<<"nEnter The New Details of student"<<endl;
st.modify_student();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt Record Updated";
found=1;
}
}
fp.close();
if(found==0)
cout<<"nn Record Not Found ";
getch();
}
//***************************************************************
// function to delete record of file
//****************************************************************
void delete_student()
{
char n[6];
int flag=0;
clrscr();
cout<<"nnntDELETE STUDENT...";
cout<<"nnEnter The admission no. of the Student You Want To Delete : ";
cin>>n;
fp.open("student.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("student.dat");
rename("Temp.dat","student.dat");
if(flag==1)
cout<<"nntRecord Deleted ..";
else
cout<<"nnRecord not found";
getch();
}
void delete_book()
{
char n[6];
clrscr();
cout<<"nnntDELETE BOOK ...";
cout<<"nnEnter The Book no. of the Book You Want To Delete : ";
cin>>n;
fp.open("book.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("book.dat");
rename("Temp.dat","book.dat");
cout<<"nntRecord Deleted ..";
getch();
}
//***************************************************************
// function to display all students list
//****************************************************************
void display_alls()
{
clrscr();
fp.open("student.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"nnttSTUDENT LISTnn";
cout<<"===============================================================
===n";
cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"Book Issuedn";
cout<<"===============================================================
===n";
while(fp.read((char*)&st,sizeof(student)))
{
st.report();
}
fp.close();
getch();
}
//***************************************************************
// function to display Books list
//****************************************************************
void display_allb()
{
clrscr();
fp.open("book.dat",ios::in);
if(!fp)
{
cout<<"ERROR!!! FILE COULD NOT BE OPEN ";
getch();
return;
}
cout<<"nnttBook LISTnn";
cout<<"===============================================================
==========n";
cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn";
cout<<"===============================================================
==========n";
while(fp.read((char*)&bk,sizeof(book)))
{
bk.report();
}
fp.close();
getch();
}
//***************************************************************
// function to issue book
//****************************************************************
void book_issue()
{
char sn[6],bn[6];
int found=0,flag=0;
clrscr();
cout<<"nnBOOK ISSUE ...";
cout<<"nntEnter The student's admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nntEnter 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<<"Book issued successfully!";
cout<<"n Write current date in backside of book
and submit book within 15 days."
"other wise fine of Rs.1/day is charged.";
}
}
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();
}
//***************************************************************
// function to deposit book
//****************************************************************
void book_deposit()
{
char sn[6],bn[6];
int found=0,flag=0,day,fine;
clrscr();
cout<<"nnBOOK DEPOSIT ...";
cout<<"nntEnter The student admission no.";
cin>>sn;
fp.open("student.dat",ios::in|ios::out);
fp1.open("book.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<<"nnBook deposited in no. of days";
cin>>day;
if(day>15)
{
fine=(day-15)*1;
cout<<"nnFine has to deposited Rs. "<<fine;
}
st.resettoken();
int pos=-1*sizeof(st);
fp.seekp(pos,ios::cur);
fp.write((char*)&st,sizeof(student));
cout<<"nnt 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 management system";
cout<<"nnMADE BY : Lokesh Meena";
cout<<"nnSCHOOL : K V S R K Puram Sector-2";
getch();
}
//***************************************************************
// ADMINISTRATOR MENU FUNCTION
//****************************************************************
void admin_menu()
{
clrscr();
int ch2;
cout<<"nnntADMINISTRATOR MENU";
cout<<"nnt1.CREATE STUDENT RECORD";
cout<<"nnt2.DISPLAY ALL STUDENTS RECORD";
cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD ";
cout<<"nnt4.MODIFY STUDENT RECORD";
cout<<"nnt5.DELETE STUDENT RECORD";
cout<<"nnt6.CREATE BOOK ";
cout<<"nnt7.DISPLAY ALL BOOKS ";
cout<<"nnt8.DISPLAY SPECIFIC BOOK ";
cout<<"nnt9.MODIFY BOOK ";
cout<<"nnt10.DELETE BOOK ";
cout<<"nnt11.MAIN MENU";
cout<<"nntPlease Enter Your Choice (1-11) ";
cin>>ch2;
switch(ch2)
{
case 1: clrscr();
write_student();break;
case 2: display_alls();break;
case 3:
char num[6];
clrscr();
cout<<"nntPlease Enter The Admission No. ";
cin>>num;
display_sps(num);
break;
case 4: modify_student();break;
case 5: delete_student();break;
case 6: clrscr();
write_book();break;
case 7: display_allb();break;
case 8: {
char num[6];
clrscr();
cout<<"nntPlease Enter The book No. ";
cin>>num;
display_spb(num);
break;
}
case 9: modify_book();break;
case 10: delete_book();break;
case 11: return;
default:cout<<"a";
}
admin_menu();
}
//***************************************************************
// THE MAIN FUNCTION OF PROGRAM
//****************************************************************
void main()
{
char ch;
intro();
do
{
clrscr();
cout<<"nnntMAIN MENU";
cout<<"nnt1. BOOK ISSUE";
cout<<"nnt2. BOOK DEPOSIT";
cout<<"nnt3. ADMINISTRATOR MENU";
cout<<"nnt4. EXIT";
cout<<"nntPlease Select Your Option (1-4) ";
ch=getche();
switch(ch)
{
case '1':clrscr();
book_issue();
break;
case '2':book_deposit();
break;
case '3':admin_menu();
break;
case '4':exit(0);
default :cout<<"a";
}
}while(ch!='4');
}
OUTPUTS
1).Introduction
2).Main menu
3).Administrator menu
4).Adding a book
6)student list
7)total books
8)depositing of book
Limitations
The main limitation of the previous system of Library Management System:
● The existing system only provides text-based interface, which is not as
user-friendly as Graphical user Interface.
● Since the system is implemented in Manual, so the response is very
slow.
● The transactions are executed in off-line mode, hence on-line data
capture and modification is not possible.
● Off-line reports cannot be generated due to batch mode execution.
Hence, there is a need of reformation of the system with more advantages and
flexibility. The Library Management System eliminates most of the limitations of
the existing software. It has the following objectives:
● Enhancement:
● The main objective of Library Management System is to enhance and
upgrade the existing system by increasing its efficiency and
effectiveness. The software improves the working methods by replacing
the existing manual system with the computer-based system.
● Automation:
● The Library Management System automates each and every activity of
the manual system and increases its throughput. Thus the response
time of the system is very less and it works very fast.
● Accuracy:
● The Library Management System provides the uses a quick response
with very accurate information regarding the users etc. Any details or
system in an accurate manner, as and when required.
● User-Friendly:
● The software Library Management System has a very user-friendly
interface. Thus the users will feel very easy to work on it. The software
provides accuracy along with a pleasant interface.Make the present
manual system more interactive, speedy and user friendly.
● Availability:
● The transaction reports of the system can be retried as and when
required. Thus, there is no delay in the availability of any information,
whatever needed, can be captured very quickly and easily.
Bibliography
Help from these resources.
Computer science book
-sumita arora.
http://learningindia.co.in
www.google.co.in
http://JUSTJOINUS.com

Computerscience 12th

  • 1.
    NAME OF SCHOOL:STAY MOTIVATED NAME OF STUDENT: XYZ CLASS : 11TH AND 12TH GUIDED BY : XYZ (TEACHERS) PROJECT 2018-19
  • 3.
    Content 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Certificate Acknowledgement Requirements Header Files AndPurpose General Description Functions & Their Purpose Flow Chart Source code Output Limitations Bibliography
  • 4.
    Certificate This is certifythat “NAME” of class 12th has successfully completed his “Computer science practical Report file”. During academic session 2017-2018as per the guidelines issued by CBSE. Examiner’sTeacher’s Signature signature DATE PRINCIPAL
  • 5.
    Acknowledgement I wish toexpress our sincere thanks to Mr.VIVEK JAT Principal, Stay Motivated R k puram sector-2, New Delhi for guiding us to cause the successful outcome of this project work. I wish to express our deep & profound sense of gratitude to our guide teacher (COMP), For him expert help & valuable guidance, comments and suggestions. I also place on record, our sincere Gratitude to one and all who Directly or Indirectly .Have Lent their helping hand in this venture
  • 6.
    Requirements Hardware ❖Printer to printthe project report. ❖ Compact Disc. ❖ Ram 4 GB ❖Hard Disk 1024Gb Software ❖ Operating System Windows 10 ❖Turbo C++ For Execution Of Program. ❖MS Word For Report Presentation.
  • 7.
    Header files andtheir purpose ★Fstream.h :- This data type represents the file stream generally, and has the capabilities of both ofstream and ifstream which means it can create files, write information to files, and read information from files. ★Conio.h :-conio.h is a C header file used mostly by MS-DOS compilers to provide console input/output. It is not part of the C standard library or ISO C, nor is it defined by POSIX. This header declares several useful library functions for performing "console input and output" from a program. ★stdio.h:- is a statement which tells the compiler toinsert the contents of stdio at that particular place. ★process.h :- is a C header file which containsfunction declarations and macros used in working with threads and processes. Most C compilers that target DOS, Windows 3.1x, Win32, OS/2, Novell NetWare or DOS extenders supply this header and the library functions in their C library. Neither the header file nor most of the functions are defined by either the ANSI/ISO C standard or by POSIX.
  • 8.
    ★iomanip.h:- is aheader file in C++ whichcontains predefined functions for manipulating the output. ★String.h:-Provides many "string" handling functions. Arguments are character arrays, or occasionally integers designating a length and/or location.
  • 9.
    Functions & TheirPurpose 1).This function is used for write files(this function helps in storing the database in disk). void write_book() { char ch; fp.open("book.dat",ios::out|ios::app); do { clrscr(); bk.create_book(); fp.write((char*)&bk,sizeof(book)); cout<<"nnDo you want to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y'); fp.close(); } void write_student() { char ch; fp.open("student.dat",ios::out|ios::app); do { st.create_student(); fp.write((char*)&st,sizeof(student)); cout<<"nndo you want to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y');
  • 10.
    fp.close();} 2).This function readsspecific record(this function reads all records stored in disk in database files). void display_spb(char n[]) { cout<<"nBOOK DETAILSn"; int flag=0; fp.open("book.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<<"nnBook does not exist"; getch(); } void display_sps(char n[]) { cout<<"nSTUDENT DETAILSn"; int flag=0; fp.open("student.dat",ios::in); while(fp.read((char*)&st,sizeof(student))) {
  • 11.
    if((strcmpi(st.retadmno(),n)==0)) { st.show_student(); flag=1; } } fp.close(); if(flag==0) cout<<"nnStudent does notexist"; getch(); } 3).This function used for modify a record file(This function modify already added student details and books details in database). void modify_book() { char n[6]; int found=0; clrscr(); cout<<"nntMODIFY BOOK REOCORD.... "; cout<<"nntEnter The book no. of The book"; cin>>n; fp.open("book.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);
  • 12.
    fp.write((char*)&bk,sizeof(book)); cout<<"nnt Record Updated"; found=1; } } fp.close(); if(found==0) cout<<"nnRecord Not Found "; getch(); } void modify_student() { char n[6]; int found=0; clrscr(); cout<<"nntMODIFY STUDENT RECORD... "; cout<<"nntEnter The admission no. of The student"; cin>>n; fp.open("student.dat",ios::in|ios::out); while(fp.read((char*)&st,sizeof(student)) && found==0) { if(strcmpi(st.retadmno(),n)==0) { st.show_student(); cout<<"nEnter The New Details of student"<<endl; st.modify_student(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt Record Updated"; found=1; } } fp.close(); if(found==0)
  • 13.
    cout<<"nn Record NotFound "; getch(); } 5).This function used for deleting recorded records(this function deletes exisiting recorded details of students and books from database). void delete_student() { char n[6]; int flag=0; clrscr(); cout<<"nnntDELETE STUDENT..."; cout<<"nnEnter The admission no. of the Student You Want To Delete : "; cin>>n; fp.open("student.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("student.dat"); rename("Temp.dat","student.dat"); if(flag==1) cout<<"nntRecord Deleted .."; else cout<<"nnRecord not found"; getch();
  • 14.
    } void delete_book() { char n[6]; clrscr(); cout<<"nnntDELETEBOOK ..."; cout<<"nnEnter The Book no. of the Book You Want To Delete : "; cin>>n; fp.open("book.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("book.dat"); rename("Temp.dat","book.dat"); cout<<"nntRecord Deleted .."; getch(); } 6).This function displays list of all students(This function display list of total students from database files). void display_alls() { clrscr(); fp.open("student.dat",ios::in);
  • 15.
    if(!fp) { cout<<"ERROR!!! FILE COULDNOT BE OPEN "; getch(); rte record of file //**************************************************************** eturn; } cout<<"nnttSTUDENT LISTnn"; cout<<"=============================================================== ===n"; cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"Book Issuedn"; cout<<"=============================================================== ===n"; while(fp.read((char*)&st,sizeof(student))) { st.report(); } fp.close(); getch(); } 7)This function display all books. void display_allb() { clrscr(); fp.open("book.dat",ios::in); if(!fp)
  • 16.
    { cout<<"ERROR!!! FILE COULDNOT BE OPEN "; getch(); return; } cout<<"nnttBook LISTnn"; cout<<"=============================================================== ==========n"; cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn"; cout<<"=============================================================== ==========n"; while(fp.read((char*)&bk,sizeof(book))) { bk.report(); } fp.close(); getch(); } 8)This function helps in issuing of books. void book_issue() { char sn[6],bn[6]; int found=0,flag=0; clrscr(); cout<<"nnBOOK ISSUE ..."; cout<<"nntEnter The student's admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.dat",ios::in|ios::out); while(fp.read((char*)&st,sizeof(student)) && found==0)
  • 17.
    { if(strcmpi(st.retadmno(),sn)==0) { found=1; if(st.rettoken()==0) { cout<<"nntEnter the bookno. "; 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<<"Book issued successfully!"; cout<<"n Write current date in backside of book and submit book within 15 days." "other wise fine of Rs.1/day is charged."; } } 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(); }
  • 18.
    9).This function helpsin depositing books back. void book_deposit() { char sn[6],bn[6]; int found=0,flag=0,day,fine; clrscr(); cout<<"nnBOOK DEPOSIT ..."; cout<<"nntEnter The student admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.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<<"nnBook deposited in no. of days"; cin>>day; if(day>15) { fine=(day-15)*1; cout<<"nnFine has to deposited Rs. "<<fine;
  • 19.
    } st.resettoken(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt Bookdeposited 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(); } 10).This Is A Introduction Function(This function displays Name of creator and school on home page). void intro() { clrscr(); gotoxy(35,11); cout<<"Library management system"; cout<<"nnMADE BY : Lokesh Meena"; cout<<"nnSCHOOL : K V S R K Puram Sector-2"; getch();
  • 20.
    } 11).This Function isfor Administrator Menu(this function shows adminstrator menu). void admin_menu() { clrscr(); int ch2; cout<<"nnntADMINISTRATOR MENU"; cout<<"nnt1.CREATE STUDENT RECORD"; cout<<"nnt2.DISPLAY ALL STUDENTS RECORD"; cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD "; cout<<"nnt4.MODIFY STUDENT RECORD"; cout<<"nnt5.DELETE STUDENT RECORD"; cout<<"nnt6.CREATE BOOK "; cout<<"nnt7.DISPLAY ALL BOOKS "; cout<<"nnt8.DISPLAY SPECIFIC BOOK "; cout<<"nnt9.MODIFY BOOK "; cout<<"nnt10.DELETE BOOK "; cout<<"nnt11.MAIN MENU"; cout<<"nntPlease Enter Your Choice (1-11) "; cin>>ch2; switch(ch2) { case 1: clrscr(); write_student();break; case 2: display_alls();break; case 3: char num[6]; clrscr(); cout<<"nntPlease Enter The Admission No. "; cin>>num;
  • 21.
    display_sps(num); break; case 4: modify_student();break; case5: delete_student();break; case 6: clrscr(); write_book();break; case 7: display_allb();break; case 8: { char num[6]; clrscr(); cout<<"nntPlease Enter The book No. "; cin>>num; display_spb(num); break; } case 9: modify_book();break; case 10: delete_book();break; case 11: return; default:cout<<"a"; } admin_menu(); } 13).This Is The Main Function Of Program(it displays main menu). void main() { char ch; intro(); do { clrscr(); cout<<"nnntMAIN MENU"; cout<<"nnt1. BOOK ISSUE";
  • 22.
    cout<<"nnt2. BOOK DEPOSIT"; cout<<"nnt3.ADMINISTRATOR MENU"; cout<<"nnt4. EXIT"; cout<<"nntPlease Select Your Option (1-4) "; ch=getche(); switch(ch) { case '1':clrscr(); book_issue(); break; case '2':book_deposit(); break; case '3':admin_menu(); break; case '4':exit(0); default :cout<<"a"; } }while(ch!='4');
  • 23.
    General description Library ManagementSystem is a software used to manages the catalog of a library. This helps to keep the records of whole transactions of the books available in the library. Library Management System which is very easy to use and fulfills all the requirement of a librarian. There are many features which helps librarian to keep records of available books as well as issued books.. Here is a list of some features of Library Management System ● Keep record of different categories like; Books, Journals, Newspapers, Magazines, etc. ● Classify the books subject wise. ● Easy way to enter new books. ● Keep record of complete information of a book like; Book name, Author name, Publisher’s name, Date/ Year of publication, Cost of the book, Book purchasing date/ Bill no. ● Easy way to make a check-out. ● Easy way to make a check-in. ● Automatic fine calculation for late returns. ● Different criteria for searching a book. ● Different kind of reports like; total no. of books, no. of issued books, no. of journals, etc. ● Easy way to know how many books are issued to a particular student. ● Easy way to know the status of a book. ● and much more.
  • 24.
  • 27.
    Source code #include<fstream.h> #include<conio.h> #include<stdio.h> #include<process.h> #include<string.h> #include<iomanip.h> //*************************************************************** // CLASSUSED IN PROJECT //**************************************************************** class book { char bno[6]; char bname[50]; char aname[20]; public: void create_book() { cout<<"nNEW BOOK ENTRY...n"; cout<<"nEnter The book no."; cin>>bno; cout<<"nnEnter The Name of The Book "; gets(bname); cout<<"nnEnter The Author's Name "; gets(aname); cout<<"nnnBook Created.."; } void show_book()
  • 28.
    { cout<<"nBook no. :"<<bno; cout<<"nBook Name : "; puts(bname); cout<<"Author Name : "; puts(aname); } void modify_book() { cout<<"nBook no. : "<<bno; cout<<"nModify Book Name : "; gets(bname); cout<<"nModify Author's Name of Book : "; gets(aname); } char* retbno() { return bno; } void report() {cout<<bno<<setw(30)<<bname<<setw(30)<<aname<<endl;} }; //class ends here class student { char admno[6]; char name[20]; char stbno[6]; int token; public: void create_student()
  • 29.
    { clrscr(); cout<<"nNEW STUDENT ENTRY...n"; cout<<"nEnterThe admission no. "; cin>>admno; cout<<"nnEnter The Name of The Student "; gets(name); token=0; stbno[0]='/0'; cout<<"nnStudent 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; }
  • 30.
    int rettoken() { return token; } voidaddtoken() {token=1;} void resettoken() {token=0;} void getstbno(char t[]) { strcpy(stbno,t); } void report() {cout<<"t"<<admno<<setw(20)<<name<<setw(10)<<token<<endl;} }; //class ends here //*************************************************************** // global declaration for stream object, object //**************************************************************** fstream fp,fp1; book bk; student st; //*************************************************************** // function to write in file //**************************************************************** void write_book() {
  • 31.
    char ch; fp.open("book.dat",ios::out|ios::app); do { clrscr(); bk.create_book(); fp.write((char*)&bk,sizeof(book)); cout<<"nnDo youwant to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y'); fp.close(); } void write_student() { char ch; fp.open("student.dat",ios::out|ios::app); do { st.create_student(); fp.write((char*)&st,sizeof(student)); cout<<"nndo you want to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y'); fp.close(); } //*************************************************************** // function to read specific record from file //**************************************************************** void display_spb(char n[]) { cout<<"nBOOK DETAILSn"; int flag=0; fp.open("book.dat",ios::in); while(fp.read((char*)&bk,sizeof(book)))
  • 32.
    { if(strcmpi(bk.retbno(),n)==0) { bk.show_book(); flag=1; } } fp.close(); if(flag==0) cout<<"nnBook does notexist"; getch(); } void display_sps(char n[]) { cout<<"nSTUDENT DETAILSn"; int flag=0; fp.open("student.dat",ios::in); while(fp.read((char*)&st,sizeof(student))) { if((strcmpi(st.retadmno(),n)==0)) { st.show_student(); flag=1; } } fp.close(); if(flag==0) cout<<"nnStudent does not exist"; getch(); } //*************************************************************** // function to modify record of file //****************************************************************
  • 33.
    void modify_book() { char n[6]; intfound=0; clrscr(); cout<<"nntMODIFY BOOK REOCORD.... "; cout<<"nntEnter The book no. of The book"; cin>>n; fp.open("book.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)); cout<<"nnt Record Updated"; found=1; } } fp.close(); if(found==0) cout<<"nn Record Not Found "; getch(); } void modify_student() { char n[6]; int found=0; clrscr(); cout<<"nntMODIFY STUDENT RECORD... "; cout<<"nntEnter The admission no. of The student";
  • 34.
    cin>>n; fp.open("student.dat",ios::in|ios::out); while(fp.read((char*)&st,sizeof(student)) && found==0) { if(strcmpi(st.retadmno(),n)==0) { st.show_student(); cout<<"nEnterThe New Details of student"<<endl; st.modify_student(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt Record Updated"; found=1; } } fp.close(); if(found==0) cout<<"nn Record Not Found "; getch(); } //*************************************************************** // function to delevoid delete_student() { char n[6]; int flag=0; clrscr(); cout<<"nnntDELETE STUDENT..."; cout<<"nnEnter The admission no. of the Student You Want To Delete : "; cin>>n; fp.open("student.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)
  • 35.
    fp2.write((char*)&st,sizeof(student)); else flag=1; } fp2.close(); fp.close(); remove("student.dat"); rename("Temp.dat","student.dat"); if(flag==1) cout<<"nntRecord Deleted .."; else cout<<"nnRecordnot found"; getch(); } void delete_book() { char n[6]; clrscr(); cout<<"nnntDELETE BOOK ..."; cout<<"nnEnter The Book no. of the Book You Want To Delete : "; cin>>n; fp.open("book.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("book.dat");
  • 36.
    rename("Temp.dat","book.dat"); cout<<"nntRecord Deleted .."; getch(); } //*************************************************************** //function to display all students list //**************************************************************** void display_alls() { clrscr(); fp.open("student.dat",ios::in); if(!fp) { cout<<"ERROR!!! FILE COULD NOT BE OPEN "; getch(); rte record of file //**************************************************************** eturn; } cout<<"nnttSTUDENT LISTnn"; cout<<"=============================================================== ===n"; cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"Book Issuedn"; cout<<"=============================================================== ===n"; while(fp.read((char*)&st,sizeof(student))) { st.report(); }
  • 37.
    fp.close(); getch(); } //*************************************************************** // function todisplay Books list //**************************************************************** void display_allb() { clrscr(); fp.open("book.dat",ios::in); if(!fp) { cout<<"ERROR!!! FILE COULD NOT BE OPEN "; getch(); return; } cout<<"nnttBook LISTnn"; cout<<"=============================================================== ==========n"; cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn"; cout<<"=============================================================== ==========n"; while(fp.read((char*)&bk,sizeof(book))) { bk.report(); } fp.close(); getch(); }
  • 38.
    //*************************************************************** // function toissue book //**************************************************************** void book_issue() { char sn[6],bn[6]; int found=0,flag=0; clrscr(); cout<<"nnBOOK ISSUE ..."; cout<<"nntEnter The student's admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.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<<"nntEnter 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<<"Book issued successfully!"; cout<<"n Write current date in backside of book and submit book within 15 days." "other wise fine of Rs.1/day is charged.";
  • 39.
    } } if(flag==0) cout<<"Book no doesnot exist"; } else cout<<"You have not returned the last book "; } } if(found==0) cout<<"Student record not exist..."; getch(); fp.close(); fp1.close(); } //*************************************************************** // function to deposit book //**************************************************************** void book_deposit() { char sn[6],bn[6]; int found=0,flag=0,day,fine; clrscr(); cout<<"nnBOOK DEPOSIT ..."; cout<<"nntEnter The student admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.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)
  • 40.
    { if(strcmpi(bk.retbno(),st.retstbno())==0) { bk.show_book(); flag=1; cout<<"nnBook deposited inno. of days"; cin>>day; if(day>15) { fine=(day-15)*1; cout<<"nnFine has to deposited Rs. "<<fine; } st.resettoken(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt 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 //****************************************************************
  • 41.
    void intro() { clrscr(); gotoxy(35,11); cout<<"Library managementsystem"; cout<<"nnMADE BY : Lokesh Meena"; cout<<"nnSCHOOL : K V S R K Puram Sector-2"; getch(); } //*************************************************************** // ADMINISTRATOR MENU FUNCTION //**************************************************************** void admin_menu() { clrscr(); int ch2; cout<<"nnntADMINISTRATOR MENU"; cout<<"nnt1.CREATE STUDENT RECORD"; cout<<"nnt2.DISPLAY ALL STUDENTS RECORD"; cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD "; cout<<"nnt4.MODIFY STUDENT RECORD"; cout<<"nnt5.DELETE STUDENT RECORD"; cout<<"nnt6.CREATE BOOK "; cout<<"nnt7.DISPLAY ALL BOOKS "; cout<<"nnt8.DISPLAY SPECIFIC BOOK "; cout<<"nnt9.MODIFY BOOK "; cout<<"nnt10.DELETE BOOK "; cout<<"nnt11.MAIN MENU"; cout<<"nntPlease Enter Your Choice (1-11) "; cin>>ch2; switch(ch2) { case 1: clrscr(); write_student();break;
  • 42.
    case 2: display_alls();break; case3: char num[6]; clrscr(); cout<<"nntPlease Enter The Admission No. "; cin>>num; display_sps(num); break; case 4: modify_student();break; case 5: delete_student();break; case 6: clrscr(); write_book();break; case 7: display_allb();break; case 8: { char num[6]; clrscr(); cout<<"nntPlease Enter The book No. "; cin>>num; display_spb(num); break; } case 9: modify_book();break; case 10: delete_book();break; case 11: return; default:cout<<"a"; } admin_menu(); } //*************************************************************** // THE MAIN FUNCTION OF PROGRAM //**************************************************************** void main() { char ch; intro();
  • 43.
    do { clrscr(); cout<<"nnntMAIN MENU"; cout<<"nnt1. BOOKISSUE"; cout<<"nnt2. BOOK DEPOSIT"; cout<<"nnt3. ADMINISTRATOR MENU"; cout<<"nnt4. EXIT"; cout<<"nntPlease Select Your Option (1-4) "; ch=getche(); switch(ch) { case '1':clrscr(); book_issue(); break; case '2':book_deposit(); break; case '3':admin_menu(); break; case '4':exit(0); default :cout<<"a"; } }while(ch!='4'); }include<fstream.h> #include<conio.h> #include<stdio.h> #include<process.h> #include<string.h> #include<iomanip.h> //*************************************************************** // CLASS USED IN PROJECT //**************************************************************** class book { char bno[6];
  • 44.
    char bname[50]; char aname[20]; public: voidcreate_book() { cout<<"nNEW BOOK ENTRY...n"; cout<<"nEnter The book no."; cin>>bno; cout<<"nnEnter The Name of The Book "; gets(bname); cout<<"nnEnter The Author's Name "; gets(aname); cout<<"nnnBook Created.."; } void show_book() { cout<<"nBook no. : "<<bno; cout<<"nBook Name : "; puts(bname); cout<<"Author Name : "; puts(aname); } void modify_book() { cout<<"nBook no. : "<<bno; cout<<"nModify Book Name : "; gets(bname); cout<<"nModify Author's Name of Book : "; gets(aname); } char* retbno() { return bno; } void report()
  • 45.
    {cout<<bno<<setw(30)<<bname<<setw(30)<<aname<<endl;} }; //class endshere 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<<"nnEnter The Name of The Student "; gets(name); token=0; stbno[0]='/0'; cout<<"nnStudent 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()
  • 46.
    { 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;} void getstbno(char t[]) { strcpy(stbno,t); } void report() {cout<<"t"<<admno<<setw(20)<<name<<setw(10)<<token<<endl;} }; //class ends here
  • 47.
    //*************************************************************** // global declarationfor stream object, object //**************************************************************** fstream fp,fp1; book bk; student st; //*************************************************************** // function to write in file //**************************************************************** void write_book() { char ch; fp.open("book.dat",ios::out|ios::app); do { clrscr(); bk.create_book(); fp.write((char*)&bk,sizeof(book)); cout<<"nnDo you want to add more record..(y/n?)"; cin>>ch; }while(ch=='y'||ch=='Y'); fp.close(); } void write_student() { char ch; fp.open("student.dat",ios::out|ios::app); do { st.create_student(); fp.write((char*)&st,sizeof(student)); cout<<"nndo you want to add more record..(y/n?)"; cin>>ch;
  • 48.
    }while(ch=='y'||ch=='Y'); fp.close(); } //*************************************************************** // function toread specific record from file //**************************************************************** void display_spb(char n[]) { cout<<"nBOOK DETAILSn"; int flag=0; fp.open("book.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<<"nnBook does not exist"; getch(); } void display_sps(char n[]) { cout<<"nSTUDENT DETAILSn"; int flag=0; fp.open("student.dat",ios::in); while(fp.read((char*)&st,sizeof(student))) { if((strcmpi(st.retadmno(),n)==0)) {
  • 49.
    st.show_student(); flag=1; } } fp.close(); if(flag==0) cout<<"nnStudent does notexist"; getch(); } //*************************************************************** // function to modify record of file //**************************************************************** void modify_book() { char n[6]; int found=0; clrscr(); cout<<"nntMODIFY BOOK REOCORD.... "; cout<<"nntEnter The book no. of The book"; cin>>n; fp.open("book.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)); cout<<"nnt Record Updated"; found=1; }
  • 50.
    } fp.close(); if(found==0) cout<<"nn Record NotFound "; getch(); } void modify_student() { char n[6]; int found=0; clrscr(); cout<<"nntMODIFY STUDENT RECORD... "; cout<<"nntEnter The admission no. of The student"; cin>>n; fp.open("student.dat",ios::in|ios::out); while(fp.read((char*)&st,sizeof(student)) && found==0) { if(strcmpi(st.retadmno(),n)==0) { st.show_student(); cout<<"nEnter The New Details of student"<<endl; st.modify_student(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt Record Updated"; found=1; } } fp.close(); if(found==0) cout<<"nn Record Not Found "; getch(); }
  • 51.
    //*************************************************************** // function todelete record of file //**************************************************************** void delete_student() { char n[6]; int flag=0; clrscr(); cout<<"nnntDELETE STUDENT..."; cout<<"nnEnter The admission no. of the Student You Want To Delete : "; cin>>n; fp.open("student.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("student.dat"); rename("Temp.dat","student.dat"); if(flag==1) cout<<"nntRecord Deleted .."; else cout<<"nnRecord not found"; getch(); } void delete_book() {
  • 52.
    char n[6]; clrscr(); cout<<"nnntDELETE BOOK..."; cout<<"nnEnter The Book no. of the Book You Want To Delete : "; cin>>n; fp.open("book.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("book.dat"); rename("Temp.dat","book.dat"); cout<<"nntRecord Deleted .."; getch(); } //*************************************************************** // function to display all students list //**************************************************************** void display_alls() { clrscr(); fp.open("student.dat",ios::in); if(!fp) { cout<<"ERROR!!! FILE COULD NOT BE OPEN "; getch();
  • 53.
    return; } cout<<"nnttSTUDENT LISTnn"; cout<<"=============================================================== ===n"; cout<<"tAdmission No."<<setw(10)<<"Name"<<setw(20)<<"BookIssuedn"; cout<<"=============================================================== ===n"; while(fp.read((char*)&st,sizeof(student))) { st.report(); } fp.close(); getch(); } //*************************************************************** // function to display Books list //**************************************************************** void display_allb() { clrscr(); fp.open("book.dat",ios::in); if(!fp) { cout<<"ERROR!!! FILE COULD NOT BE OPEN "; getch(); return; } cout<<"nnttBook LISTnn";
  • 54.
    cout<<"=============================================================== ==========n"; cout<<"Book Number"<<setw(20)<<"Book Name"<<setw(25)<<"Authorn"; cout<<"=============================================================== ==========n"; while(fp.read((char*)&bk,sizeof(book))) { bk.report(); } fp.close(); getch(); } //*************************************************************** //function to issue book //**************************************************************** void book_issue() { char sn[6],bn[6]; int found=0,flag=0; clrscr(); cout<<"nnBOOK ISSUE ..."; cout<<"nntEnter The student's admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.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) {
  • 55.
    cout<<"nntEnter the bookno. "; 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<<"Book issued successfully!"; cout<<"n Write current date in backside of book and submit book within 15 days." "other wise fine of Rs.1/day is charged."; } } 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(); } //*************************************************************** // function to deposit book //**************************************************************** void book_deposit()
  • 56.
    { char sn[6],bn[6]; int found=0,flag=0,day,fine; clrscr(); cout<<"nnBOOKDEPOSIT ..."; cout<<"nntEnter The student admission no."; cin>>sn; fp.open("student.dat",ios::in|ios::out); fp1.open("book.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<<"nnBook deposited in no. of days"; cin>>day; if(day>15) { fine=(day-15)*1; cout<<"nnFine has to deposited Rs. "<<fine; } st.resettoken(); int pos=-1*sizeof(st); fp.seekp(pos,ios::cur); fp.write((char*)&st,sizeof(student)); cout<<"nnt Book deposited successfully"; } } if(flag==0) cout<<"Book no does not exist"; }
  • 57.
    else cout<<"No book isissued..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 management system"; cout<<"nnMADE BY : Lokesh Meena"; cout<<"nnSCHOOL : K V S R K Puram Sector-2"; getch(); } //*************************************************************** // ADMINISTRATOR MENU FUNCTION //**************************************************************** void admin_menu() { clrscr(); int ch2; cout<<"nnntADMINISTRATOR MENU";
  • 58.
    cout<<"nnt1.CREATE STUDENT RECORD"; cout<<"nnt2.DISPLAYALL STUDENTS RECORD"; cout<<"nnt3.DISPLAY SPECIFIC STUDENT RECORD "; cout<<"nnt4.MODIFY STUDENT RECORD"; cout<<"nnt5.DELETE STUDENT RECORD"; cout<<"nnt6.CREATE BOOK "; cout<<"nnt7.DISPLAY ALL BOOKS "; cout<<"nnt8.DISPLAY SPECIFIC BOOK "; cout<<"nnt9.MODIFY BOOK "; cout<<"nnt10.DELETE BOOK "; cout<<"nnt11.MAIN MENU"; cout<<"nntPlease Enter Your Choice (1-11) "; cin>>ch2; switch(ch2) { case 1: clrscr(); write_student();break; case 2: display_alls();break; case 3: char num[6]; clrscr(); cout<<"nntPlease Enter The Admission No. "; cin>>num; display_sps(num); break; case 4: modify_student();break; case 5: delete_student();break; case 6: clrscr(); write_book();break; case 7: display_allb();break; case 8: { char num[6]; clrscr(); cout<<"nntPlease Enter The book No. "; cin>>num; display_spb(num); break; } case 9: modify_book();break;
  • 59.
    case 10: delete_book();break; case11: return; default:cout<<"a"; } admin_menu(); } //*************************************************************** // THE MAIN FUNCTION OF PROGRAM //**************************************************************** void main() { char ch; intro(); do { clrscr(); cout<<"nnntMAIN MENU"; cout<<"nnt1. BOOK ISSUE"; cout<<"nnt2. BOOK DEPOSIT"; cout<<"nnt3. ADMINISTRATOR MENU"; cout<<"nnt4. EXIT"; cout<<"nntPlease Select Your Option (1-4) "; ch=getche(); switch(ch) { case '1':clrscr(); book_issue(); break; case '2':book_deposit(); break; case '3':admin_menu(); break; case '4':exit(0); default :cout<<"a"; }
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
    Limitations The main limitationof the previous system of Library Management System: ● The existing system only provides text-based interface, which is not as user-friendly as Graphical user Interface. ● Since the system is implemented in Manual, so the response is very slow. ● The transactions are executed in off-line mode, hence on-line data capture and modification is not possible. ● Off-line reports cannot be generated due to batch mode execution. Hence, there is a need of reformation of the system with more advantages and flexibility. The Library Management System eliminates most of the limitations of the existing software. It has the following objectives: ● Enhancement: ● The main objective of Library Management System is to enhance and upgrade the existing system by increasing its efficiency and effectiveness. The software improves the working methods by replacing the existing manual system with the computer-based system. ● Automation: ● The Library Management System automates each and every activity of the manual system and increases its throughput. Thus the response time of the system is very less and it works very fast. ● Accuracy: ● The Library Management System provides the uses a quick response with very accurate information regarding the users etc. Any details or system in an accurate manner, as and when required. ● User-Friendly: ● The software Library Management System has a very user-friendly interface. Thus the users will feel very easy to work on it. The software provides accuracy along with a pleasant interface.Make the present manual system more interactive, speedy and user friendly. ● Availability: ● The transaction reports of the system can be retried as and when required. Thus, there is no delay in the availability of any information, whatever needed, can be captured very quickly and easily.
  • 65.
    Bibliography Help from theseresources. Computer science book -sumita arora. http://learningindia.co.in www.google.co.in http://JUSTJOINUS.com