⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 图书管理.c

📁 图书管理系统
💻 C
📖 第 1 页 / 共 2 页
字号:
       if(strcmp(book1.getbookname(),bookName1)==0)
       {  
         
            
      cout<<book1.book1num<<endl;
       book1.book1num--;
        if (book1.book1num==0)
       { strcpy(book1.getstate(),"借出");
          
       }
       if (book1.book1num<0)//zj
         break;//zj
        a = true;//zj
        cout<<"                借书成功    "<<endl;
        int pos=(-1)*sizeof(book1);
        file.seekp(pos,ios::cur);//zj
        file.write((char *)&book1,sizeof(book1));
        file.close(); 
           cout<<"*************书籍的信息**********"<<endl;
           cout<<endl;
           book1.getbookinfo();
         
       system("pause");               
       system("cls");  
       break;
       } 
            
    } 
      if(!a)
      {
        cout<<"此书已借出或还未入库"<<endl;            
        system("pause");               
        system("cls");
      }
               
                 
    }  
};         
class adminstrator
{  
   private:
            user user2;
            Book book2;
    public:
         void displaybook()                //显示图书信息 
           {  
           fstream file(filename,ios::in|ios::binary);
             if(!file)
             {
             cout<<"打开失败!!!"<<endl;
             return;         
             }
             cout.width(7);
             cout<<"书号";
             cout.width(21); 
             cout<<"书名";
             cout.width(15);
             cout<<"作者";
             cout.width(15);
             cout<<"种类";
             cout.width(5);
             cout<<"数量";
             cout.width(5);
             cout<<"状态"<<endl;
             while(file.read((char *)&book2,sizeof(book2)))
             {  
               book2.getbookinfo(); 
                              
             }                     
             file.close();
             system("pause"); 
             system("cls"); 
             return; 
           }                
         void addbook()                    //增加图书 
           {  
             ofstream file(filename,ios::out|ios::app|ios::binary); 
              if(!file)
              {
               cout<<"文件打开失败!!"<<endl;
               return;        
              }
             book2.setbookinfo();
             file.write((char *)&book2,sizeof(book2));
             file.close();
             system("pause"); 
             system("cls"); 
             return ;
           }
         void deletebook()                //删除图书 
           {   
                
                
           }
         void madifybook()                 //修改图书信息 
          {         
          bool a=false;
          char id1[16];
          cout<<"请输入要修改的书的编号    :";
          fflush(stdin);
          cin>>id1;
          system("cls");
         fstream file(filename,ios::binary|ios::in|ios::out);
         if(!file)
              {
               cout<<"文件打开失败!!"<<endl;
               return;        
              }  
         while(file.read((char*)&book2,sizeof(book2))) 
        { 
                                                  
             if(strcmp(book2.getid(),id1)==0) 
             {  
                 int pos = file.tellg(); 
                 a=true; 
                 cout<<"                ***************原来的书籍信息***************   "<<endl;
                 cout.width(7);
                 cout<<"书号";
                 cout.width(21); 
                 cout<<"书名";
                 cout.width(15);
                 cout<<"作者";
                 cout.width(15);
                 cout<<"种类";
                 cout.width(5);
                 cout<<"数量";
                 cout.width(5);
                 cout<<"状态"<<endl;
                 book2.getbookinfo();
                 cout<<endl;
                 cout<<"请重新输入图书信息:   "<<endl;
                 book2.setbookinfo();
                 cout<<"         修改成功"<<endl; 
                 system("pause"); 
                 system("cls"); 
                 file.seekg(pos-sizeof(book2),ios::beg); 
                 file.write((char *)&book2,sizeof(book2));
                 file.close();
                 break;
                }   
     
             
              }
            }
           
           void deleteuser()                      //删除用户 
           {
                
                
           }
           void displayuser()                     //显示所有用户 
           {  
            fstream file(student,ios::in|ios::binary);
            if(!file)
            {  
               cout<<"文件打开失败!!"<<endl;
               return;      
            }
            
            while(file.read((char *)&user2,sizeof(user2)))
            { 
               user2.getdetail();                     
            }                      
            file.close();
            return;
          }
         void findbook()                          //查找图书 
          {   
            bool c = false;
           char bookName1[20];
           
          cout<<endl;
         cout<<"输入你要查询的书名     :";
         cin.ignore(); 
         cin>>bookName1;
        fstream file(filename,ios::binary|ios::in);    
          while(file.read((char*)&book2,sizeof(book2))) 
        {  
         if(strcmp(book2.getbookname(),bookName1)==0) 
            {
          c=true; 
          
          cout<<endl;
          cout.width(7);
          cout<<"书号";
          cout.width(21); 
          cout<<"书名";
          cout.width(15);
          cout<<"作者";
          cout.width(15);
          cout<<"种类";
          cout.width(5);
          cout<<"数量";
          cout.width(5);
          cout<<"状态"<<endl;
          book2.getbookinfo();  
          system("pause"); 
          system("cls"); 
         }    
             
           }    
           if(!c)
          cout<<"对不起,查无此书!!"<<endl;      
          }
};      
class usermanager
{  
   private:user user3;
           adminstrator book3;
           nomaluser book4;
   public:
          void register1()                        //注册 
          {  fstream file(student,ios::out|ios::app|ios::binary);
              if(!file)
              {
              cout<<"打开文件失败!!"<<endl;
               return;
               } 
             cin.ignore();//zj
             cin.clear();//zj
             user3.setdetail();
             file.write((char*)&user3,sizeof(user3));
             file.close();
             return; 
          }  
          void login()                              //登陆 
          { 
                fstream file(student,ios::in|ios::binary);//zj
              if(!file)
              { 
                        cout<<"文件打开失败!!!!"<<endl;
                        return;
              }
              
              cin.clear();//zj 
              cin.ignore();//zj 
       repit: user user4;//zj 
              user4.setuserinfo();
              bool right=false;
            //  file.write((char*)&user1,sizeof(user1));
              // file.close();
               while(file.read((char *)&user3,sizeof(user3)))
              {  
                      if(strcmp(user3.username(),user4.username())==0&&strcmp(user3.studentpwd(),user4.studentpwd())==0)//zj
                      {     right=true;
                            //cout<<"光临!!"<<endl;                                                     
                          if(strcmp(user4.username(),"zj")==0&&strcmp(user4.studentpwd(),"123")==0)
                            {    
                                  cout<<"\n\n\t\t\t∵   恭喜!   ∵ \n\n\t\t\t登录成功! !  \n\n\n"<<endl;
                                  cout<<"欢迎管理员进入!!"<<endl;
                                  _sleep(3000);
                                  system("cls");
                                  bool bIsContinue=true;
                                  char choice;
                                  while(bIsContinue)
                                  {
                                  cout<<"1.查找图书"<<endl;
                                  cout<<"2.增加图书"<<endl;
                                  cout<<"3.修改图书"<<endl;
                                  cout<<"4.删除图书"<<endl;
                                  cout<<"5.显示所有图书信息"<<endl;
                                  cout<<"6.删除用户"<<endl;
                                  cout<<"7.显示所有用户信息"<<endl;
                                  cout<<"8.退出"<<endl;
                                  cin>>choice;
                                  switch(choice)
                                  {   
                                      case '1': 
                                                book3.findbook();
                                                break;
                                                
                                      case '2':  
                                                book3.addbook();
                                               break;
                                      case '3':
                                              book3.madifybook();
                                                break;
                                      case '4':
                                               book3.deletebook();
                                               break;
                                      case '5':
                                                book3.displaybook();
                                                break;
                                      case '6': 
                                                book3.deleteuser();
                                                break;
                                      case '7':
                                                book3.displayuser();
                                                break;
                                      case '8': 
                                             bIsContinue=false;
                                             break;
                                      default:
                                              cout<<"您的输入有误,请重新输入"<<endl;                            
                                  }   //zj 
                                  
                                     }                             
                               }
                          else
                          {   cout<<"\n\n\t\t\t∵   恭喜!   ∵ \n\n\t\t\t登录成功! !  \n\n\n"<<endl;
                              cout<<"欢迎光临!!"<<endl;
                               _sleep(1000);
                               system("cls");
                                   char choice1='1';
                                  while(choice1)
                                  {
                                  cout<<"1.显示所有图书信息"<<endl;
                                  cout<<"2.查找图书"<<endl;
                                  cout<<"3.借书图书"<<endl;
                                  cout<<"4.还书图书"<<endl;
                                  cout<<"5.修改用户信息"<<endl;
                                  cout<<"6.显示用户信息"<<endl;
                                  cout<<"7.退出"<<endl;
                                  cin>>choice1;
                                  switch(choice1)
                                  {   
                                      case '1': 
                                                book4.displaybook();
                                                break;
                                      case '2':
                                               book4.findbook();
                                               break;
                                      case '3':
                                               book4.lendbook();
                                               break;
                                      case '4':
                                                book4.givebackbook();
                                                break;
                                      case '5': 
                                                book4.madifyuserinfo();
                                                break;
                                      case '6':
                                                book4.displayuserinfo();
                                                break;
                                      case '7':exit(0);
                                      default:
                                              cout<<"您的输入有误,请重新输入"<<endl; 
                                      } 
                                  }//  break;  //zj
                              } 
                      }
              } 
                                                
                     if(!right)//这里还有些问题你自己解决 
                      {
                         cout<<user3.username()<<endl;
                         cout<<user4.username()<<endl;
                        // cout<<user1.studentpwd()<<endl;
                          cout<<"\n\t对不起!!您输入的用户名或密码错误!\n\t请重新输入!!\n"; 
                      }
                          
                                                               
              
              
              
               
             file.close();  
              return; 
          }
};
int main()
{ 
     system("color d");
  
     system("cls");
   char choice; //zj
   usermanager user1;
   
   while(choice!=3)//zj
   {   
      cout<<"1* 新用户注册"<<endl;
      cout<<"                  2* 登陆"<<endl;
      cout<<"                                    3* 退出 "<<endl;
      cout<<"请选择:(1~3)"<<endl;            
           
  cin>>choice;
   switch(choice)
   {  
      case '1':
               user1.register1();
               
               break;
      case '2':
               user1.login();
               
               break;
      case '3':
                return 0;
      default:
              cout<<"您输入错误,请重新输入!!"<<endl;
              break;           
                 
   } 
   
   } //zj
    
    
    system("pause");
    return 0;

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -