C语言图书管理系统简洁版分享!

DOS界面的图书管理系统,具体内容如下

程序分为两块:管理员操作(收录图书、删除图书等)和会员操作(注册、借书、还书等);

1、管理员操作界面

2、会员操作界面

global.h头文件:(程序中只使用了一个编写的头文件,在这里存放了所有的接口函数以及需要使用到的头文件,还有结构体的定义)

  #include "iostream"   #include "string"   #include "fstream"   #include "conio.h"   //getch();   #include "algorithm"  //sort();   using namespace std;      #define Max_BookNum 10240   //最大存书数目   #define Max_MemberNum 10240   //最大会员数目      typedef enum{//图书借阅状态    Borrowed=1,    //已被借阅    available=0    //当前可借   }Book_Status;      typedef struct{//图书信息    char name[20];   //书名    char author[20];  //作者    string isbn;   //图书编号    string price;   //价格    string pub;    //出版社    string pubtime;   //出版时间    string addtime;   //收录日期    string Class;   //分类号    Book_Status Book_sta; //借阅状态,初始化为可借   }Book_Message;      typedef struct{//借阅人信息    string name;  //姓名    string sex;    //性别    string number;   //学号    char login[20];   //登录号 以A1001开始    char code[20];   //登录密码    Book_Message Borrow_Book[10];  //最大可借书本数目:10本    int BorBook_Cnt;  //借书数量   }Member_Message;         void Show_WelMenu(); //Welcome菜单   void Book_InfoInput(); //图书信息录入   void Book_InfoShow(Book_Message *Book_Info); //输出图书信息   void Book_Search();  //搜索书本  0,按书名;1,按作者   void Book_Delete();  //删除图书信息   void Book_InfoChange(); //修改图书信息   void Book_Sort();  //图书排序   void Book_RecordSave(); //图书信息保存    int Book_RecordLoad(); //读档         void Admin_Login();   //管理员登录   void Member_WelMenu();  //会员菜单界面   void Book_WelMenu();  //管理员菜单界面      void Member_Login();  //会员登录   void Member_Reg();  //会员注册   void Member_Bor();  //借书手续   void Member_Ret();  //还书   void Member_Search(); //会员资料查询 0,按姓名;1,按学号   void Member_Delete(); //会员资料注销   void Member_RecordSave();//会员信息保存   int Member_RecordLoad();//会员信息读档   void Member_InfoChange();         //void Member_BookMsgSave();   //int Member_BookMsgLoad();   void Member_MsgShow(Member_Message *Member_Msg);//信息显示   void Member_CodeAdjust();//会员修改密码   

主程序:main.c文件:

  #include "global.h"   int Book_Record=0;       int Member_Record=0;   Book_Message Book_List[Max_BookNum];   //图书登记表   Member_Message Member_List[Max_MemberNum];  //会员登记表      int main()   {    char key[2];    while(1){     Show_WelMenu();     int cmd;     cin>>cmd;     if(!cmd)      Admin_Login();   //进入管理员登录界面     else      Member_Login();   //进入会员登录界面         cout<<"tttt是否退出图书管理系统?ty/nn";     cin>>key;     if(strcmp(key,"y")==0)      break;    }    cout<<"系统即将退出"<<endl;    getch();    return 0;   }   

以下分别是各个功能模块的函数实现:

1、输出界面(选择登录界面)

  void Show_WelMenu()   {    system("cls");    cout<<"tttt欢迎使用图书管理系统"<<endl<<endl;    cout<<"tttt0:管理员登录"<<endl;    cout<<"tttt1:会员登录"<<endl;   }   

2、管理员登录程序(这里选择了固定密码登录,Init_Code就是初始密码。当然也可以自行修改密码)

  void Admin_Login()   {    short count=0;    char code[20];    char Init_Code[10]="0";    cout<<"请输入管理员密码:"<<endl;    while(1){     cin>>code;     if(strcmp(code,Init_Code)==0){      break;     }     else{      cout<<"密码错误请重新输入"<<endl;      count++;      if(count>3){       cout<<"密码错误超过三次,程序即将退出"<<endl;       break;      }     }    }    Book_WelMenu();   //enter Admin Menu   }   

3、会员登录程序(使用账户密码登录,若无账号,可自行注册)

  void Member_Login()   {     Book_Record = 0;    Member_Record = 0;    Book_Record = Book_RecordLoad();    Member_Record = Member_RecordLoad();  //从文件读入当前注册表    char code[20],login[20],Req[2];    bool Login_Sta = false;    while(1){ //登录程序,登录成功后退出     if(Login_Sta) break;     if((Member_Record==0)){      cout << "tttt用户库为空,请先注册" << endl;      cout << "tttt按任意键注册";      getch();      system("cls");      Member_Reg();      }     else{      cout << "tttt请输入会员登录号:" << endl;      cin>>login;      for(Mem_Point=0; Mem_Point<Member_Record; Mem_Point++){       if((strcmp(login,Member_List[Mem_Point].login) == 0)){        cout << "tttt请输入密码:" << endl;        cin >> code;        while(strcmp(code, Member_List[Mem_Point].code) != 0){          cout << "密码错误,请重新输入" << endl;          cin >> code;        }        Login_Sta = true;        cout << "tttt登录成功,按任意键继续";        break;       }      }      if(Mem_Point >= Member_Record){       cout << "ttt该用户未注册,不能使用图书管理系统" << endl;       cout << "tttt是否现在注册(Y/N)" << endl;       cin >> Req;       if((strcmp(Req,"y") == 0) || (strcmp(Req,"Y") == 0))        Member_Reg();      }     }    }    getch();    system("cls");    Member_WelMenu();    getch();   }   

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/c-cdevelopment/482104.html

(0)
上一篇 2020年11月9日
下一篇 2020年11月9日

精彩推荐