You are on page 1of 4

/*www.DailyFreeCode.comDownload Projects, Sourcecodes, Tips and Tricks, Intervie w FAQs, Hotlinks and more....Logon to www.DailyFreeCode.com*///Library Database #include <iostream.

h> #include <conio.h> #include <iomanip.h> struct library { char author[20],title[20],pub[20]; int price; library *next; }; int sum=0; void main() { clrscr(); library *head=NULL; library *initial(void); library *purchase(library *); //library *sale(library *);void display(library *); void stock(library *); void search(library *); int choice; while(1) { cout<<"Choose your Choice\n"; cout<<"1) Initial Data Entry\n"; cout<<"2) Purchase of Book\n"; cout<<"3) Sales of Book\n"; cout<<"4) Stock of Book\n"; cout<<"5) Search of Book\n"; cout<<"6) Display Books\n"; cout<<"7) Exit\n"; cout<<"Enter Your Choice:-"; cin>>choice; switch(choice) { case 1 : head=initial(); getch(); break; case 2 : head=purchase(head); getch(); break; // case 3 : head=sale(head);// break;case 4 : stock(head); getch(); break; case 5 : search(head); getch(); break; case 6 : display(head); getch(); break; case 7 : gotoout; default: cout<<"\nInvalid Choice\nTRY AGAIN\n"; }

clrscr(); } out: } library *initial(void) { clrscr(); library *newl=NULL,*start=NULL,*end=newl; char ch; while(1) { cout<<"\n\nType y or Y for yes\n"; cout<<"Are you Interested in Entering Entry:-"; cin>>ch; if(ch=='y' || ch=='Y') { newl=new library; cout<<"\n\nEnter Author of Book:-"; cin>>newl->author; cout<<"Enter Title of Book:-"; cin>>newl->title; cout<<"Enter Publication of Book:-"; cin>>newl->pub; cout<<"Enter Price of Book:-"; cin>>newl->price; sum=sum+newl->price; if(start==NULL) start=newl; else end->next=newl; end=newl; end->next=NULL; } elsebreak; } return(start); } library *purchase(library *start) { clrscr(); int pos,count=1,choice; library *newl,*cnt=start,*head=start; if(start==NULL) cout<<"\n\nLIST IS EMPTY\n"; cout<<"\n\nChoose your Choice\n"; cout<<"1) Inserting At FIRST POSITION\n"; cout<<"2) Inserting In BETWEEN\n"; cout<<"3) Inserting At LAST POSITION \n"; cout<<"4) Exit\n"; cout<<"Enter your choice:-"; cin>>choice; if(choice >=1 && choice <=3) { newl=new library; cout<<"Enter Author Name :-"; cin>>newl->author;

cout<<"Enter Book Title :-"; cin>>newl->title; cout<<"Enter Publication :-"; cin>>newl->pub; cout<<"Enter Price of Book:-"; cin>>newl->price; sum=sum+newl->price; } switch(choice) { case 1 :

//for First position newl->next=head; head=newl; break; //for Middle position read: cout<<"\n\nAt which position you want to insert Record:-" cin>>pos; while(cnt!=NULL) { count++;

case 2 : ;

//cnt for counting variable o

f type node cnt=cnt->next; } if(pos<1 || pos>count+1) { cout<<"\n\nEntered position is Invalid\nTRY AGAIN\n"; goto read; } { //Extra Braces are used as case bypasses intialization of a local variableint c=1; while(c<pos-1) { c++; start=start->next; } } newl->next=start->next; start->next=newl; break; case 3 : //for Last positionwhile(start->next!=NULL) start=start->next; start->next=newl; newl->next=NULL; break; case 4 : default: } out: return(head); gotoout; cout<<"\nEntered Choice is Invalid Try again\n"; break;

} void stock(library *start) { clrscr(); int count=0; while(start!=NULL) { count++; start=start->next; } cout<<"\n\n\n\tTotal Number of Books in Stock is "<<count<<endl; cout<<"\tPurchase Price of Total Stock is "<<sum; } void search(library *start) { clrscr(); char author[20],title[20]; cout<<"Enter Book title and its Author name respectively to Search in stock\n"; cin>>title>>author; while(start!=NULL) { if(title==start->title) { if(author==start->author) { cout<<"\n\nBook is In Stock\n"; cout<<"It Cost Rs"<<start->price; return; } } } cout<<"\n\nSEARCH IS NOT IN STOCK\n"; } void display(library *start) { clrscr(); cout<<setw(10)<<"Book Title"<<setw(25)<<"Author of Book"<<setw(25)<<"Publication "<<setw(20)<<"Price"<<endl<<endl; for(int i=0;i<40;i++) cout<<"=*"; cout<<endl; while(start!=NULL) { cout<<setw(10)<<start->title<<setw(25)<<start->author<<setw(25)<<start->pub<<set w(20)<<start->price<<endl; start=start->next; } }

You might also like