struct book
{
int accno;
char tit[20],au[20];
float price;
int av;
char ava[5];
};
struct ent
{
int sid;
int a;
};
int ok;
struct book b[20];
struct ent e[20];
int c,j,i,k=0,l;
void addbook();
void display();
void avail();
void bookdue();
void sauthor();
void stitle();
void saccno();
main()
{
int i=-1;
system("clear");
printf("\t\t\tLIBRARY MANAGEMENT SYSTEM\n");
do
{
printf("\nOperations :\n1.ADD BOOKS TO LIBRARY\n2.DISPLAY BOOKS IN THE LIBRARY\n3.AVAILABILITY\n\ti.SEARCH BOOKS BY ACCESSION NUMBER\n\tii.SEARCH BOOKS BY AUTHOR\n\tiii.SEARCH BOOKS BY TITLE\n4.BOOK DUE(ENTRY)\n5.EXITING THE SYSTEM\n");
printf("\nEnter Your choice : ");
scanf("%d",&c);
switch(c)
{
case 1: addbook(); break;
case 2: display(); break;
case 3: avail(); break;
case 4: bookdue(); break;
}
}while(c!=5);
}
void addbook()
{
i++;
printf("\nEnter the Accession Number(4 digit Number) : ");
scanf("%d",&b[i].accno);
for(j=i-1;j>=0;j--)
{
if (b[j].accno==b[i].accno)
{
i--;
printf("\nThe Accession Number Alreary Exists!\n");
return;
}
}
printf("\nEnter the Book Title(max 20 char) : ");
scanf("%s",b[i].tit);
printf("Enter the Author Name : ");
scanf("%s",b[i].au);
printf("Enter the Price of book : ");
scanf("%f",&b[i].price);
b[i].av=1;
}
void display()
{
printf("\n\t\t\tBOOKS IN THE LIBRARY\n");
printf("ACCNO\tTITLE OF THE BOOK\tAUTHOR OF THE BOOK\tPRICE\tAVAIL\n");
for(j=1;j<=i;j++)
{
if (b[j].av==1)
strcpy(b[j].ava,"YES");
else
strcpy(b[j].ava,"NO");
printf("%d\t%18s\t%18s\t%6.2f\t %s\n",b[j].accno,b[j].tit,b[j].au,b[j].price,b[j].ava);
}
}
void avail()
{
int ch;
do
{
printf("\nChecking books availability by searching in means of \n1.ACCESSION NUMBER\n2.TITLE\n3.AUTHOR\n4.EXIT SEARCHING\n");
printf("Enter your choice : ");
scanf("%d",&ch);
switch(ch)
{
case 1: saccno(); break;
case 2: stitle(); break;
case 3: sauthor(); break;
}
}while(ch!=4);
}
void bookdue()
{
int acc,id;
printf("\nEnter the Accession Number To get Book(4 digit number) : ");
scanf("%d",&acc);
for(j=0;j<=i;j++)
if (b[j].accno==acc)
{
if (b[j].av==1)
{
printf("\nEnter the Student ID(3 digit number) : ");
scanf("%d",&id);
//k++;
for(l=0;l<=k;l++)
if (e[l].sid==id)
{
if (e[l].a<2)
{
printf("\n Book Due Success!");
b[j].av=0;
e[l].a=e[l].a+1;
return;
}
else
{
printf("\n Sorry! You have 3 books on due!");
return;
}
}
printf("\nBook Due Success!");
e[k].sid=id;
e[k].a=0;
b[j].av=0;
k++;
return;
}
printf("\nThis Book on Due!");
return;
}
printf("\nBook Not Available!");
}
void saccno()
{
int ac;
printf("\nEnter the accession to find Book : ");
scanf("%d",&ac);
for(j=0;j<=i;j++)
if(b[j].accno==ac)
{
printf("\nBook Name : %s\nAuthor : %s\nPrice : %f\nAvailability : %s\n",b[j].tit,b[j].au,b[j].price,b[j].ava);
return;
}
printf("\n No such Accession Number available!");
}
void sauthor()
{
char author[20];
int ok=0;
printf("\nEnter the author name to find Books : ");
scanf("%s",author);
for(j=0;j<=i;j++)
if (strcmp(author,b[j].au)==0)
{
printf("\nAcc. No : %d\nBook Name : %s\nPrice : %f\nAvailability : %s\n",b[j].accno,b[j].tit,b[j].price,b[j].ava);
ok=1;
}
if (ok!=1)
printf("\n No books available!");
}
void stitle()
{
char title[20];
int ok1=0;
printf("\nEnter the Title to find the book : ");
scanf("%s",title);
for(j=0;j<=i;j++)
if (strcmp(title,b[j].tit)==0)
{
printf("\nAcc No : %d\nAuthor : %s\nPrice : %f\nAvailability : %s\n",b[j].accno,b[j].au,b[j].price,b[j].ava);
ok1=1;
}
if (ok!=1)
printf("\nNo Such book available!");
}
No comments:
Post a Comment