?? main.cpp
字號:
#include "Reader.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
void main()
{
Book aB;//建立書類便于管理員直接對圖書進行操作
Reader R;
int Day=0;//計算天數(shù)
char choose;//選擇變量
int cb;//選擇借閱類型
char bname[20],bwriter[20];
int btotal,curr;
int bn;//讀入書號
int em;//接收空變量
int bkn;//接收書物理地址
int rn;//當前操作讀者位置
char rname[20];//讀者姓名
int Flag_start=1;
int Flag_admin=1;
int Flag_reader_login=1;
int Flag_reader=1;
int Flag_cb=1;
int Flag_cr=1;
while(Flag_start)
{
cout <<"\n\n\n\n\n\n\n"<<endl;
cout <<"\t\t\t ************************"<<endl;
cout <<"\t\t\t * 歡迎使用圖書管理系統(tǒng) *"<<endl;
cout <<"\t\t\t ************************"<<endl;
cout <<"\t\t\t $ 1_管理員入口 $" <<endl;
cout <<"\t\t\t $ 2_讀者入口 $" <<endl;
cout <<"\t\t\t $ 3_退出本系統(tǒng) $" <<endl;
choose =getch();
switch(choose)
{
case '1'://*****************************************管理員操作****************************
system("cls");
Flag_admin =1;
aB.ReadBook();//..............................................
R.ReadReader();//.........
while(Flag_admin)
{
cout <<"\t\t\t\t******************" <<endl;
cout <<"\t\t\t\t* 管理員操作平臺 *" <<endl;
cout <<"\t\t\t\t*----------------*" <<endl;
cout <<"\t\t\t\t* 1_圖書添加入庫 *" <<endl;
cout <<"\t\t\t\t* 2_瀏覽全部圖書 *" <<endl;
cout <<"\t\t\t\t* 3_圖書書號檢索 *" <<endl;
cout <<"\t\t\t\t* 4_圖書書名檢索 *" <<endl;
cout <<"\t\t\t\t* 5_圖書作者檢索 *" <<endl;
cout <<"\t\t\t\t* 6_清空圖書庫存 *" <<endl;
cout <<"\t\t\t\t* 7_查看讀者信息 *" <<endl;
cout <<"\t\t\t\t* 8_清空讀者信息 *" <<endl;
cout <<"\t\t\t\t* 9_退出操作平臺 *" <<endl;
cout <<"\t\t\t\t******************" <<endl;
choose =getch();
switch(choose)
{
case '1':
cout <<"\n書名" <<endl;
gets(bname);
cout <<"\n作者" <<endl;
gets(bwriter);
cout <<"\n總量" <<endl;
cin >>btotal;
aB.AddBook(bname,bwriter,btotal);
cout <<"\n入庫成功" <<endl;
break;
case '2':
em =aB.IsEmpty();
if(em ==1)
{
cout<<"以下全部圖書信息~~~\n"
<<"序號"<<"\t"
<<"書名"<<"\t\t"
<<"作者"<<"\t\t"
<<"剩余量"<<"\t"
<<"總量"<<"\t"
<<"當前狀態(tài)"<<endl;
cout<<"-------------------------------------------------------------------"<<endl;
aB.ViewAll();
}
else cout <<"\n書庫空" <<endl;
break;
case '3':
em =aB.IsEmpty();
if(em ==1)
{
cout <<"\n請輸入要檢索的書號" <<endl;
cin >>curr;
bn=aB.FindNum(curr);
if(bn ==-1)
cout <<"\n\t\t\t沒找到該序號的圖書" <<endl;
}
else cout <<"\n書庫空" <<endl;
break;
case '4':
em =aB.IsEmpty();
if(em ==1)
{
cout <<"\n請輸入要檢索的書名" <<endl;
gets(bname);
bkn=aB.FindName(bname,0);
}
else cout <<"\n書庫空" <<endl;
break;
case '5':
em =aB.IsEmpty();
if(em ==1)
{
cout <<"\n請輸入要檢索的作者" <<endl;
gets(bwriter);
bkn=aB.FindWriter(bwriter,0);
}
else cout <<"\n書庫空" <<endl;
break;
case '6':
Flag_cb=1;
if(em ==1)
{
while(Flag_cb)
{
cout <<"\n確認是否要清空圖書數(shù)據(jù)庫?(y/n)" <<endl;
choose=getch();
switch(choose)
{
case 'y':
aB.CleanBook();
Flag_cb=0;
aB.~Book();
cout <<"\n\t\t\t圖書數(shù)據(jù)空清空" <<endl;
break;
case 'n':
Flag_cb=0;
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
}
}
else cout <<"\n書庫空" <<endl;
break;
case '7':
cout<<"請輸入您要查看的讀者名:"<<endl;
gets(rname);
rn=R.Login(rname);
if(rn!=-1)
{
R.ViewReader(rn);
}
else
cout<<"不存在指定編號的讀者信息"<<endl;
break;
case '8':
Flag_cr=1;
while(Flag_cr)
{
cout <<"\n確認是否要清空讀者數(shù)據(jù)庫?(y/n)" <<endl;
choose=getch();
switch(choose)
{
case 'y':
R.CleanReader();
Flag_cr=0;
cout <<"\n\t\t\t讀者數(shù)據(jù)空清空" <<endl;
R.~Reader();
break;
case 'n':
Flag_cr=0;
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
}
break;
case '9':
Flag_admin=0;
R.~Reader();//.........................
aB.~Book();//.........
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
cout <<"\n\n\n\t\t\t按任意鍵返回菜單~~~~~" <<endl;
getch();
system("cls");
}
break;
case '2'://**************************************讀者**********************************
system("cls");
Flag_reader_login=1;
R.ReadReader();//..................................
while(Flag_reader_login)
{
cout <<"\t\t\t\t======================"<<endl;
cout <<"\t\t\t\t★ 歡迎使用讀者系統(tǒng) ★" <<endl;
cout <<"\t\t\t\t======================"<<endl;
cout <<"\t\t\t\t ◇1_登陸◇" <<endl;
cout <<"\t\t\t\t ◇2_注冊◇" <<endl;
cout <<"\t\t\t\t ◇3_退出◇" <<endl;
choose =getch();
switch(choose)
{
case '1':
cout <<"\n請輸入用戶名:" <<endl;
gets(rname);
rn=R.Login(rname);
if(rn!=-1)
{
cout <<"\n\t\t\t\t\t登陸成功" <<endl;
getch();
system("cls");
Flag_reader =1;
while(Flag_reader)
{
system("cls");
cout <<"\t\t\t\t〓〓〓〓〓〓〓" <<endl;
cout <<"\t\t\t\t▲ 歡迎登陸 ▲" <<endl;
cout <<"\t\t\t\t〓〓〓〓〓〓〓" <<endl;
cout <<"\t\t\t\t○1_書名檢索○" <<endl;
cout <<"\t\t\t\t○2_作者檢索○" <<endl;
cout <<"\t\t\t\t○3_還書操作○" <<endl;
cout <<"\t\t\t\t○4_我的信息○" <<endl;
cout <<"\t\t\t\t○5_安全退出○" <<endl;
choose=getch();
switch(choose)
{
case '1':
cout <<"\n請輸入要檢索的書名:" <<endl;
gets(bname);
bkn=R.FindName(bname);
if(bkn!=-1)
{
cout<<"請選擇您要進行的借閱類型~~~1.借閱 2.預(yù)借~~"<<endl;
while(1)
{
cin>>cb;
if(cb==1)
{
curr=R.BorBooks(rn);
break;
}
else if(cb==2)
{
curr=R.DestineBooks(rn);
break;
}
else
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
}
if(curr ==1)
cout <<"\n\t\t\t借書成功" <<endl;
else if(curr ==-1)
cout <<"\n\t\t\t該書沒有庫存" <<endl;
else
cout <<"\n\t\t\t你的借書或預(yù)借數(shù)量已滿,請查看后再借!" <<endl;
break;
}
break;
case '2':
cout <<"\n請輸入要檢索的作者:" <<endl;
gets(bwriter);
bkn=R.FindWriter(bwriter);
if(bkn!=-1)
{
cout<<"請選擇您要進行的借閱類型~~~1.借閱 2.預(yù)借~~"<<endl;
while(1)
{
cin>>cb;
if(cb==1)
{
curr=R.BorBooks(rn);
break;
}
else if(cb==2)
{
curr=R.DestineBooks(rn);
break;
}
else
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
}
if(curr ==1)
cout <<"\n\t\t\t借書成功" <<endl;
else if(curr ==-1)
cout <<"\n\t\t\t該書沒有庫存" <<endl;
else
cout <<"\n\t\t\t你的借書或預(yù)借數(shù)量已滿,請查看后再借!" <<endl;
break;
}
break;
case '3':
R.ViewReader(rn);
cout<<"請選擇您要進行的還書類型~1.歸還已借圖書 2.取消預(yù)借圖書~"<<endl;
while(1)
{
cin>>cb;
if(cb==1)
{
cout <<"\n請輸入要還書的書號:" <<endl;
cin >>bn;
curr =R.ReturnBooks(bn,rn);
break;
}
else if(cb==2)
{
cout <<"\n請輸入要取消預(yù)借的書號:" <<endl;
cin >>bn;
curr =R.DesRBooks(bn,rn);
break;
}
else
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
}
if(curr ==-1)
cout <<"\n錯誤的還書書號" <<endl;
else if(curr ==-2)
cout <<"\n您還沒有借書" <<endl;
else
cout <<"\n還書成功" <<endl;
break;
case '4':
R.ViewReader(rn);
break;
case '5':
Flag_reader=0;
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
cout <<"\n\n\n\t\t\t按任意鍵返回菜單~~~~~" <<endl;
getch();
system("cls");
}
}
else
{
cout <<"\n\t您輸入的用戶名不存在,請從新輸入或先注冊~~" <<endl;
}
break;
case '2':
cout <<"\n請輸入要注冊的用戶名:" <<endl;
gets(rname);
rn=R.AddReader(rname);
cout <<"\n\t\t\t注冊成功,您的編號為"
<<rn<<"請重新登陸" <<endl;
break;
case '3':
Flag_reader_login=0;
R.~Reader();//.......................
aB.ReadBook();//......
aB.~Book();//.......
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
cout <<"\n\n\n\t\t\t按任意鍵返回菜單~~~~~" <<endl;
getch();
system("cls");
}
break;
case '3':
Flag_start=0;
system("cls");
cout<<"\n\n\n\n\n\n\n\n\n\n\n\n"
<<"\t\t感謝對本系統(tǒng)支持~祝您好運 ~_^軟件054趙寅"
<<"\n\n\n\n\n\n\n\n\n\n\n\n" <<endl;
break;
default:
cout <<"\n\t\t\t輸入錯誤~~請按提示輸入……" <<endl;
break;
}
cout <<"\n\n\n\t\t\t按任意鍵返回主菜單~~~~~" <<endl;
getch();
system("cls");
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -