★C++语言期末课程设计★——图书借阅系统(完整项目+源代码+详细注释)

本文主要是介绍★C++语言期末课程设计★——图书借阅系统(完整项目+源代码+详细注释),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图书借阅系统报告

一、描述

        大家好!我是小浝仔,今天给大家分享C++语言期末课程设计——图书借阅系统,这个程序是C++语言程序编写的,运行环境为VisualC++6.0,实现了

1、管理员模式:录入图书信息、查看图书信息、修改图书信息、修改管理密码、退出系统;
2、客户模式:

        ①查看图书信息:按书名查找、按书号查找、查看所有未借阅图书、查看所有已借阅图书、查看所有图书、返回主菜单;
        ②借阅图书:按书名借阅、按书号借阅、查看所有图书、返回主菜单、退出系统;
3、退出系统

功能等等,是学习C++语言程序很好的参考资料,本系统在命令行窗口运行,没有可视化界面,没有用到MFC类库,如果朋友们用来学习或做C++语言期末课程设计作业一定是可以的,我来共享给大家一些哦!!!要是觉得好的话,记得给个三连!!!亲测有效哦!!!

一定要看:管理员初始化登录密码为:123

本项目下载地址:(直接运行)

C++语言课程设计——图书借阅系统(源代码+详细注释).zip_c语言图书借阅管理系统源代码-C++文档类资源-CSDN文库icon-default.png?t=M4ADhttps://download.csdn.net/download/m0_46843484/26802031

 有问题或意见,请及时联系我: 

CSDN:小浝仔_CSDN博客https://blog.csdn.net/m0_46843484?spm=1000.2115.3001.5343

版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

二、需求分析

        为了满足图书管理的要求,通过计算机技术给图书管理人员和读者借、还书带来便利。使用c语言编写了图书管理系统。本系统主要实现图书信息管理的功能,通过此系统可对图书馆库存图书信息进行管理和维护操作。实现了图书馆内管理的一般功能,包括查询、借书、还书、添加、删除、修改图书信息等。所设计的系统以菜单方式工作,为用户提供清晰的使用提示,依据用户的选择来进行各种处理,并且在此过程中能够尽可能的兼容用户使用过程中可能出现的异常情况。图书信息包括编号、书名、作者、出版社、出版日期、价格等。图书信息的录入和显示要求有一定的规范格式,录入的图书信息用文件形式保存,并可以对其进行浏览、查询、修改、删除等基本操作。整个程序实现链表操作,对图书信息的操作逐个地进行,一个图书信息的更改不应影响其他的图书记录。

三、设计思想

        在整个系统编写的过程中,涉及了较多C++语言知识点,对于不同的数据类型、程序控制结构、数据结构作以分析和总结,并结合这个课题进行综合的应用,在一定程度上做到了对所学知识融会贯通。由此进一步加深、巩固了所学的课程的基本理论知识,培养了综合分析问题、解决问题的能力。在设计程序时,参考了学校图书馆的图书管理系统,实现了程序的模块化、结构化。在主函数中调用各种函数,操作界面简单,易操作,人机互动性较强。

四、实现功能

        1、管理员模式:录入图书信息、查看图书信息、修改图书信息、修改管理密码、退出系统;
        2、客户模式:

                ①查看图书信息:按书名查找、按书号查找、查看所有未借阅图书、查看所有已借阅图书、查看所有图书、返回主菜单;
                ②借阅图书:按书名借阅、按书号借阅、查看所有图书、返回主菜单、退出系统;
        3、退出系统

五、运行和调试

        1、主界面

        2、 管理员登录

        3、管理员模式主界面

        4、录入图书信息

        5、查看图书信息主界面

        6、按书名查找

        7、按书号查找

        8、查看所有图书

        9、修改图书信息

        10、修改管理员密码

        11、客户模式主界面

        12、借阅图书主界面

        13、按书名借阅

        14、按书号借阅 

 六、源代码


/* 【小浝仔】CSDN:https://blog.csdn.net/m0_46843484?spm=1011.2124.3001.5343*/#include "stdafx.h"#include"stdio.h"
#include"conio.h"
#include"string.h"
#include"stdlib.h"
int N;
char mima[20]="123";
/**********定义图书结构体类型book*******/
struct book
{long num;char name[20];char publish[20];/*出版社*/struct time{int day;int month;int year;}t;int jie;/*借阅*/
}bk[20];
/********建立图书信息库********/
void xinxi()
{int i;system("CLS");printf("\t\t         =====================        \n");printf("\t\t               录入图书信息              \n");printf("\t\t         =====================        \n\n");printf("\t\t请输入您要录入的数量:");scanf("%d",&N);for(i=0;i<N;i++){printf("\t\t请输入第%d本书的编号:",i+1);scanf("%d",&bk[i].num);printf("\t\t请输入第%d本书的名称:",i+1);scanf("%s",bk[i].name);printf("\t\t请输入第%d本书的出版社:",i+1);scanf("%s",bk[i].publish);printf("\t\t请输入第%d本书的出版时间(用逗号隔开):",i+1);scanf("%d,%d,%d",&bk[i].t.year,&bk[i].t.month,&bk[i].t.day);printf("\t\t该书是否已经被借阅,已被借阅输入'1',未被借阅输入'0':");scanf("%d",&bk[i].jie);printf("--------------------------------------------------------------------------------\n");}system("CLS");printf("\t\t         =====================        \n");printf("\t\t               信息录入完成              \n");printf("\t\t         =====================        \n");printf("\n\t\t             按任意键继续...\n");
}
/******主菜单******/
int mymainmenu()
{int x;printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|                                         |\n");printf("\t\t|        ======================        |\n");printf("\t\t|           欢迎光临图书管理系统          |\n");printf("\t\t|        ======================        |\n");printf("\t\t|                                         |\n");printf("\t\t|           1.管理员模式                   |\n");printf("\t\t|           2.客户模式                     |\n");printf("\t\t|           3.退出系统                     |\n");printf("\t\t|--------------------------------------------------------------|\n");printf("\n\t\t请输入您的选择:");scanf("%d",&x);return x;
}
/**************管理员密码验证*****************/
int mimayanzheng()
{char temp_mima[20];/*用来存放用户输入的密码*/printf("\n");printf("\t\t         ======================        \n");printf("\t\t            欢迎使用管理员模式            \n");printf("\t\t         ======================        \n");printf("\n");printf("\t\t          请输入密码:");scanf("%s",temp_mima);if(strcmp(temp_mima,mima)==0)/*比较密码*/return 1;elsereturn 0;
}
/**************修改密码***********/
void xiugaimima()
{char temp_mima[20],temp1[20],temp2[20];/* temp_mima[20]用来存放用户输入的密码,temp1[20],temp2[
20]分别用来存放用户输入的两次修改的密码*/    
printf("\n");printf("\t\t         ======================        \n");printf("\t\t                 修改密码                 \n");printf("\t\t         ======================        \n");printf("\n");printf("\t\t           请输入原始密码:");scanf("\t\t%s",temp_mima);while(1){if(strcmp(temp_mima,mima)==0)/*比较密码*/{printf("\t请输入新密码:");scanf("%s",temp1);printf("\t请再输入一次:");scanf("%s",temp2);if(strcmp(temp1,temp2)==0)/*如果输入的两次新密码都相同*/{printf("\t修改密码成功!!请记牢密码,任意键返回...");strcpy(mima,temp1);getch();break;}else{printf("\t输入两次密码不相同,修改失败!任意键返回...");getch();break;}}else{printf("\t密码错误!您不能进行密码修改!任意键返回...");getch();break;}
}
}	
/**************管理员模式****************/
int adm()
{int x;printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|                                         |\n");printf("\t\t|        ======================        |\n");printf("\t\t|               管理员模式                |\n");printf("\t\t|        ======================        |\n");printf("\t\t|                                         |\n");printf("\t\t|           1.录入图书信息                |\n");printf("\t\t|           2.查看图书信息                |\n");printf("\t\t|           3.修改图书信息                |\n");printf("\t\t|           4.修改管理密码                |\n");printf("\t\t|           5.退出系统                    |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\n\t\t请输入您的选择:");scanf("%d",&x);return x;
}
/******************客户模式********************/
int peo()
{int x;printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|                                         |\n");printf("\t\t|        ======================        |\n");printf("\t\t|               欢迎光临                  |\n");printf("\t\t|        ======================        |\n");printf("\t\t|                                         |\n");printf("\t\t|           1.查看图书信息                |\n");printf("\t\t|           2.借阅图书                    |\n");printf("\t\t|           3.退出系统                    |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\n\t\t请输入您的选择:");scanf("%d",&x);return x;
}
/*********查看所有图书*******/
void show_all_book()
{int i;if(bk[0].num==0&&bk[0].t.year==0||N==0)/*当bk[0].num,bk[0].t.year,结构体数组等值同时为零时表示无图书信息*/printf("\t数据不存在,请先录入数据!\n\t\t按任意键返回...");else{printf("\t编号    图书名称     出版社        出版时间     状态\n");for(i=0;i<N;i++){printf("\t%-7d %-8s %-12s   %4d年%2d月%2d日 ",bk[i].num,bk[i].name,bk[i].publish,bk[i].t.year,bk[i].t.month,bk[i].t.day);if(bk[i].jie==0)printf("未借阅\n");elseprintf("已借阅\n");}}
}
/*********按书名查看********/
void showbook_name()
{int i,k=0,n;/*k用来标记是否存在该书*/char book_name[20];printf("\t\t         =====================        \n");printf("\t\t               按书名查看                \n");printf("\t\t         =====================        \n");printf("\n\t\t请输入您要查看的图书名称:");scanf("%s",book_name);for(i=0;i<N;i++)if(strcmp(book_name,bk[i].name)==0){n=i;if(k==0)/* "项目"只输出一次*/printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[n].num,bk[n].name,bk[n].publish,bk[n].t.year,bk[n].t.month,bk[n].t.day);if(bk[n].jie==1)printf("已被借阅\n");elseprintf("可以借阅\n");printf("按任意键返回...");k++; /*k值不为零则表示找到图书*/}if(k==0)  /*k值为零则表示未找到图书*/printf("\t不存在该书!按任意键返回...");
}
/*********按书号查看********/
void showbook_num()
{int n,book_num,i,k=0;/*k用来标记是否存在该书*/printf("\t\t         =====================        \n");printf("\t\t               按书号查看                \n");printf("\t\t         =====================        \n");printf("\n\t\t请输入您要查看的图书编号:");scanf("%d",&book_num);for(i=0;i<N;i++)if(book_num==bk[i].num){n=i;if(k==0)/*项目只输出一次*/printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[n].num,bk[n].name,bk[n].publish,bk[n].t.year,bk[n].t.month,bk[n].t.day);if(bk[n].jie==1)printf("已被借阅\n");elseprintf("可以借阅\n");k++;printf("\t按任意键返回...");}if(k==0) /*k为零则表示未找到图书*/printf("\t不存在该书!按任意键返回...");    	
}/********显示全部已借阅的图书**********/
void yijieyue()
{int i,k=0;if(bk[0].num==0&&bk[0].t.year==0||N==0)printf("\t数据不存在,请先录入数据!\n\t\t按任意键返回...");else{for(i=0;i<N;i++)if(bk[i].jie==1){if(k==0)printf("\t编号    图书名称     出版社        出版时间     \n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 \n",bk[i].num,bk[i].name,bk[i].publish,bk[i].t.year,bk[i].t.month,bk[i].t.day);k++;			}if(k==0)printf("\n\t\t目前没有任何书借出。按任意键继续...");}
}
/********显示全部未借阅的图书********/
void weijieyue()
{int i,k=0;if(bk[0].num==0&&bk[0].t.year==0||N==0)printf("\t数据不存在,请先录入数据!\n\t\t按任意键返回...");else{for(i=0;i<N;i++)if(bk[i].jie==0){if(k==0)printf("\t编号    图书名称     出版社        出版时间     \n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 \n",bk[i].num,bk[i].name,bk[i].publish,bk[i].t.year,bk[i].t.month,bk[i].t.day);k++;}if(k==0)printf("\n\t很遗憾!目前所有的书都被借出了。按任意键继续...");}
}
/*****查看图书菜单******/
void show()
{int x;do{system("cls");printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|                                         |\n");printf("\t\t|         =====================        |\n");printf("\t\t|              查看图书信息               |\n");printf("\t\t|         =====================        |\n");printf("\t\t|                                         |\n");printf("\t\t|           1.按书名查找                  |\n");printf("\t\t|           2.按书号查找                  |\n");printf("\t\t|           3.查看所有未借阅图书          |\n");printf("\t\t|           4.查看所有已借阅图书          |\n");printf("\t\t|           5.查看所有图书                |\n");printf("\t\t|           6.返回主菜单                  |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\n\t\t请输入您的选择:");scanf("%d",&x);switch(x){case 1:system("cls");showbook_name();getch();break;/*按书名查看*/case 2:system("cls");showbook_num();getch();break;/*按书号查看*/case 3:system("cls");weijieyue();getch();break;/*查看未借阅图书*/case 4:system("cls");yijieyue();getch();break;/*查看已借阅图书*/case 5:system("cls");show_all_book();getch();break;/*查看所有图书*/	}                                    }while(x!=6);
}
/*********按书名借阅*******/
void jie_name()
{char jy[2],name[20];/*jy用来表示是否确定借阅*/int i,book_xb,k=0;/*k用来标记是否存在该书*/printf("\t\t         ======================       \n");printf("\t\t                按书名借阅               \n");printf("\t\t         ======================       \n");while(1){printf("\n\t\t请输入书名:");scanf("%s",name);for(i=0;i<N;i++)if(strcmp(bk[i].name,name)==0&&bk[i].jie!=1)/*找到图书并确认图书没有被借出,记录图书下标*/{book_xb=i;k++;}if(k==0){printf("\t不存在该书,或该书已经借出!请正确输入图书名称!\n\t\t按任意键返回...");getch();break;}if(k==1)printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);if(bk[book_xb].jie==1)printf("已被借阅\n");else{printf("可以借阅\n\t是否借阅?(是:'y',否:'n'):");scanf("%s",jy);if(strcmp(jy,"n")==0){printf("\t借阅取消,按任意键返回....");getch();break;}else if(strcmp(jy,"y")==0){printf("\t借阅成功!按任意键返回...");bk[book_xb].jie=1;getch();break;}else{printf("\t输入有错!按任意键重新输入...");getch();break;}           }}
}
/*********按书号借阅*******/
void jie_num()
{long i,k=0,book_xb,book_num;/*k用来标记是否存在该书*/char jy[2];/*jy用来表示是否确定借阅*/printf("\t\t         ======================       \n");printf("\t\t                按书号借阅               \n");printf("\t\t         ======================       \n");while(1){printf("\n\t\t请输入书号:");scanf("%d",&book_num);for(i=0;i<N;i++)if(bk[i].num==book_num&&bk[i].jie!=1){book_xb=i;k++;}if(k==0){printf("\t不存在该书,或该书已经借出!请正确输入图书名称!\n\t\t按任意键返回...");getch();break;}printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);if(bk[book_xb].jie==1)printf("已被借阅\n");else{printf("可以借阅\n\t是否借阅?(是:'y',否:'n'):");scanf("%s",jy);if(strcmp(jy,"n")==0){printf("\t借阅取消,按任意键返回....");getch();break;}else if(strcmp(jy,"y")==0){printf("\t借阅成功!按任意键返回...");bk[book_xb].jie=1;getch();break;}else{printf("\t输入有错!按任意键重新输入...");getch();break;}       }}
}
/*********借阅图书********/
void jieyue()
{int x;do{system("cls");printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|         =====================        |\n");printf("\t\t|                借阅图书                 |\n");printf("\t\t|         =====================        |\n");printf("\t\t|                                         |\n");printf("\t\t|            1.按书名借阅                 |\n");printf("\t\t|            2.按书号借阅                 |\n");printf("\t\t|            3.查看所有图书               |\n");printf("\t\t|            4.返回主菜单                 |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t请输入您的选择:");scanf("%d",&x);switch(x){case 1:system("CLS");jie_name();getch();break;/*按书名借阅*/case 2:system("CLS");jie_num();getch();break;/*按书号借阅*/case 3:system("cls");show_all_book();getch();break;/*查看所有图书*/}}while(x!=4);
}
/***************按书名进行查找并修改信息*************/
void xiugai_name()
{int i,book_xb,k=0;/*book_xb用来记录下标,k用来判断是否找到该书*/char temp[20];/*temp[20]用来存放用户输入的查找的书名*/while(1){system("cls");printf("\n");printf("\t\t|         =====================        |\n");printf("\t\t|             按书名进行修改              |\n");printf("\t\t|         =====================        |\n");printf("\t\t请输入您准备修改的图书的名称,输入'exit'退出:");scanf("%s",temp);if(strcmp(temp,"exit")==0)break;else{for(i=0;i<N;i++)if(strcmp(temp,bk[i].name)==0){book_xb=i;printf("\t该书的信息为:\n");printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);if(bk[book_xb].jie==1)printf("已被借阅\n");elseprintf("可以借阅\n");k++;printf("\t\t现在请输入新信息:\n");printf("\t\t请输入本书的编号:");scanf("%d",&bk[book_xb].num);printf("\t\t请输入本书的名称:");scanf("%s",bk[book_xb].name);printf("\t\t请输入本书的出版社:");scanf("%s",bk[book_xb].publish);printf("\t\t请输入本书的出版时间(用逗号隔开):");scanf("%d,%d,%d",&bk[book_xb].t.year,&bk[book_xb].t.month,&bk[book_xb].t.day);printf("\t\t该书是否已经被借阅,已被借阅输入'1',未被借阅输入'0':");scanf("%d",&bk[book_xb].jie);}if(k==0){printf("\t您输入的书名不存在!按任意键继续...");getch();continue;}printf("\t恭喜!信息修改成功!任意键返回...");getch();break;}}
}
/***************按书号进行查找并修改信息*************/
void xiugai_num()
{int i,book_xb,k=0;/*book_xb用来记录下标,k用来判断是否找到该书*/long temp;/*temp用来存放用户输入的查找的书号*/do{system("cls");printf("\n");printf("\t\t|         =====================        |\n");printf("\t\t|             按书号进行修改              |\n");printf("\t\t|         =====================        |\n");printf("\t\t请输入您准备修改的图书的图书号,输入'0'退出:");scanf("%ld",&temp);if(temp==0)	break;else{for(i=0;i<N;i++)if(temp==bk[i].num){book_xb=i;printf("\t该书的信息为:\n");printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);k++;if(bk[book_xb].jie==1)printf("已被借阅\n");elseprintf("可以借阅\n");printf("现在请输入新信息:\n");printf("\t\t请输入本书的编号:");scanf("%d",&bk[book_xb].num);printf("\t\t请输入本书的名称:");scanf("%s",bk[book_xb].name);printf("\t\t请输入本书的出版社:");scanf("%s",bk[book_xb].publish);printf("\t\t请输入本书的出版时间(用逗号隔开):");scanf("%d,%d,%d",&bk[book_xb].t.year,&bk[book_xb].t.month,&bk[book_xb].t.day);printf("\t\t该书是否已经被借阅,已被借阅输入'1',未被借阅输入'0':");scanf("%d",&bk[book_xb].jie);}if(k==0){printf("\t您输入的书名不存在!按任意键继续...");getch();continue;}printf("\t恭喜!信息修改成功!任意键返回...");getch();break;}}while(temp!=0);
}
/**************删除所有图书***********/
void dele_all()
{char queren[4];printf("\t继续操作会删除所有信息,是否继续?'y'继续,'n'撤销...");scanf("%s",queren);if(strcmp(queren,"y")==0){N=0;printf("\t删除成功!\n");}else{printf("\t操作被用户取消!任意键返回...");getch();}
}
/******************按书名删除************/
void dele_name()
{int i,book_xb,k=0;/*book_xb用来存放图书下标,k用标记是否找到书*/char queren[4],temp_name[20];/*queren[2]用来存放'是否'确认删除,temp_name[20]用来存放查找时输入的图书名称*/printf("\t输入你要删除的书的名称,输入'0'退出:");scanf("%s",temp_name);if(strcmp(temp_name,"0")!=0){for(i=0;i<N;i++)if(strcmp(temp_name,bk[i].name)==0){book_xb=i;printf("\t该书的信息为:\n");printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);if(bk[i].jie==0)printf("未借阅\n");elseprintf("已借阅\n");k++;printf("\t是否要删除该书?是'y',否'n'");scanf("%s",queren);if(strcmp(queren,"y")==0){if(book_xb==N-1)N--;else{for(i=0;i<N;i++)bk[book_xb+i]=bk[book_xb+i+1];N--;}printf("\t删除成功!\n");}elseprintf("\t操作被用户取消!任意键返回...");}if(k==0)printf("\t未找到该书,请核实以后再操作!,按任意键返回....");getch();}	
}
/***************按书号查找并删除***********/
void dele_num()
{int i,book_xb,k=0,temp_num;/*book_xb用来存放图书下标,k用标记是否找到书,temp_num用来存放查找时输入的图书名称*/char queren[4];/*queren[2]用来存放'是否'确认删除*/while(1){printf("\t输入你要删除的书的书号,输入'0'退出:");scanf("%d",&temp_num);if(temp_num==0)break;else{for(i=0;i<N;i++)if(temp_num==bk[i].num){book_xb=i;printf("该书的信息为:\n");printf("\t编号    图书名称     出版社        出版时间     状态\n");printf("\t%-7d %-8s %12s   %4d年%2d月%2d日 ",bk[book_xb].num,bk[book_xb].name,bk[book_xb].publish,bk[book_xb].t.year,bk[book_xb].t.month,bk[book_xb].t.day);if(bk[i].jie==0)printf("未借阅\n");elseprintf("已借阅\n");k++;printf("\t是否要删除该书?是'y',否'n'");scanf("%s",queren);if(strcmp(queren,"y")==0){if(book_xb==N-1)N--;else{for(i=0;i<N;i++)bk[book_xb+i]=bk[book_xb+i+1];N--;}printf("\t删除成功!\n");}elseprintf("\t操作被用户取消!任意键返回...");}if(k==0)printf("\t未找到该书,请核实以后再操作!,按任意键返回....");getch();break;}	}
}
void dele()
{int x;	do{system("cls");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|         =====================        |\n");printf("\t\t|              删除图书信息               |\n");printf("\t\t|         =====================        |\n");printf("\t\t|                                         |\n");printf("\t\t|            1.按书名删除                 |\n");printf("\t\t|            2.按书号删除                 |\n");printf("\t\t|            3.删除所有图书               |\n");printf("\t\t|            4.返回主菜单                 |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t请输入您的选项:");scanf("%d",&x);switch(x){case 1:system("cls");dele_name();break;case 2:system("cls");dele_num();break;case 3:system("cls");dele_all();getch();break;}}while(x!=4);
}/***************修改图书**************/
void xiugai()
{int x;do{system("cls");printf("\n\n\n\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t|         =====================        |\n");printf("\t\t|               修改图书信息              |\n");printf("\t\t|         =====================        |\n");printf("\t\t|                                         |\n");printf("\t\t|            1.按书名查找                 |\n");printf("\t\t|            2.按书号查找                 |\n");printf("\t\t|            3.删除图书                   |\n");printf("\t\t|            4.返回主菜单                 |\n");printf("\t\t|-------------------------------------------------------------|\n");printf("\t\t请输入您的选择:");scanf("%d",&x);switch(x){case 1:system("CLS");xiugai_name();break;/*按书名查找名修改信息*/case 2:system("CLS");xiugai_num();break;/*按书号查找并修改信息*/case 3:system("cls");dele();break;							}}while(x!=4);
}/**************主函数**************/             
void main()
{int x,x2,s;/*s用来判断密码验证的结果*/do{system("cls"); x=mymainmenu();switch(x){case 1:/************调用管理员模式函数***********/system("cls");s=mimayanzheng();/*密码验证*/do{				    if(s==1){system("cls");x2=adm();switch(x2){case 1:system("cls");xinxi();getch();break;/*录入信息*/case 2:system("cls");show();break;/*查看信息*/				           case 3:system("cls");xiugai();break;/*修改信息*/case 4:system("cls");xiugaimima();break;/*修改密码*/}	}else{printf("\t密码错误!按任意键返回...");getch();break;}}while(x2!=5);break;case 2:/*调用客户模式函数*/do{system("cls");x2=peo();switch(x2){case 1:system("cls");show();getch();break;/*查看图书信息*/case 2:system("cls");jieyue();getch();break;/*借阅图书*/}        }while(x2!=3);}}while(x!=3);system("cls");printf("\n\n\n\n\n\n\n\n\n\n\n\n\t\t\t\t谢谢使用!\n\t\t\t");getch();
}

七、其他C/C++期末课程设计系统(完整项目开源)

(1条消息) ★C/C++语言期末课程设计★——万年历显示系统(详细报告+源代码+详细注释)_小浝仔(๑>؂<๑)的博客-CSDN博客

★C语言期末课程设计★——教师工资管理系统(详细报告+源代码+详细注释)_小浝仔(๑>؂<๑)的博客-CSDN博客_教师工资管理系统c语言课程设计

★C语言期末课程设计★——成绩管理系统(源代码+详细注释)_小浝仔(๑>؂<๑)的博客-CSDN博客_c语言期末课程设计作业

【C语言期末课程设计】——超市管理系统(开源)_小浝仔(๑>؂<๑)的博客-CSDN博客_超市管理系统c语言

★C/C++期末课程设计★—☆产品入库管理操作系统☆【开源+详细注释】_小浝仔(๑>؂<๑)的博客-CSDN博客_c++期末设计

【C&C++期末课程设计】——职工工作量统计系统(源代码+详细注释)_小浝仔(๑>؂<๑)的博客-CSDN博客_c语言职工工作量统计系统

​​​​​​【C&C++期末课程设计】——职工资源管理系统(源代码+详细注释)不要错过哦。_小浝仔(๑>؂<๑)的博客-CSDN博客

C&C++期末课程设计——个人收支管理系统(一)【源代码+详细注释】_小浝仔(๑>؂<๑)的博客-CSDN博客_个人收支管理系统

C&C++期末课程设计——学生成绩管理源代码_小浝仔(๑>؂<๑)的博客-CSDN博客_c++学生成绩管理系统代码

C&C++期末课程设计——图书管理系统源代码_小浝仔(๑>؂<๑)的博客-CSDN博客_图书馆管理系统源代码

C++期末课程设计——宾馆客房管理系统(详细报告+源代码+详细注释)(另附加“25+”C++&&C语言期末课程设计系统下载地址)_小浝仔(๑>؂<๑)的博客-CSDN博客_c语言客房管理系统

C&C++期末课程设计——产品管理系统(源代码+详细注释)_小浝仔(๑>؂<๑)的博客-CSDN博客_产品管理系统

八、附载/下载地址

注意

下面附载了“25+”C++&&C语言期末课程设计下载地址(超详细),每个系统的简介都详细介绍了本系统的实现功能,可以根据功能查找自己所需要的。

C&C++期末课程设计

C&C++——文件成绩(源代码)-C/C++文档类资源-CSDN文库

C&amp;C++课程设计——图书管理系统.zip_图书管理系统c++增添删除-C/C++文档类资源-CSDN文库

C&C++课程设计——学生成绩管理系统.zip-C/C++文档类资源-CSDN文库

C/C++课程设计——职工工作量统计系统(源代码、注释).zip-C/C++文档类资源-CSDN文库

C&C++课程设计——班级学生档案管理系统源代码(源代码+注释).zip-C/C++文档类资源-CSDN文库

C&C++期末课程设计——KTV歌曲管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C&amp;C++期末课程设计——产品信息管理系统(源代码+详细注释)-C/C++文档类资源-CSDN文库

 C&C++期末课程设计——个人收支管理系统(源代码+详细注释)-C/C++文档类资源-CSDN文库

 C&C++期末课程设计——职工资源管理系统(源代码+详细注释)-C/C++文档类资源-CSDN文库

C&C++期末课程设计——个人收支管理系统(二)(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言期末课程设计

C语言课程设计——教工工资管理系统(源代码+课程设计+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——成绩管理系统源程序.zip-C/C++文档类资源-CSDN文库

C语言课程设计——超市管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——火车票订票管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——商品销售系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——通讯录管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——图书管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——图书借阅系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——万年历系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——文本编辑器系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——学生成绩管理系统.zip-C/C++文档类资源-CSDN文库

 C语言课程设计——学生成绩管理系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——学生信息系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

C语言课程设计——做的绘图板系统(源代码+详细注释).zip-C/C++文档类资源-CSDN文库

 -  版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

这篇关于★C++语言期末课程设计★——图书借阅系统(完整项目+源代码+详细注释)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/390455

相关文章

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

C++右移运算符的一个小坑及解决

《C++右移运算符的一个小坑及解决》文章指出右移运算符处理负数时左侧补1导致死循环,与除法行为不同,强调需注意补码机制以正确统计二进制1的个数... 目录我遇到了这么一个www.chinasem.cn函数由此可以看到也很好理解总结我遇到了这么一个函数template<typename T>unsigned

MyBatis分页查询实战案例完整流程

《MyBatis分页查询实战案例完整流程》MyBatis是一个强大的Java持久层框架,支持自定义SQL和高级映射,本案例以员工工资信息管理为例,详细讲解如何在IDEA中使用MyBatis结合Page... 目录1. MyBATis框架简介2. 分页查询原理与应用场景2.1 分页查询的基本原理2.1.1 分

MyBatis Plus实现时间字段自动填充的完整方案

《MyBatisPlus实现时间字段自动填充的完整方案》在日常开发中,我们经常需要记录数据的创建时间和更新时间,传统的做法是在每次插入或更新操作时手动设置这些时间字段,这种方式不仅繁琐,还容易遗漏,... 目录前言解决目标技术栈实现步骤1. 实体类注解配置2. 创建元数据处理器3. 服务层代码优化填充机制详

Python实现Excel批量样式修改器(附完整代码)

《Python实现Excel批量样式修改器(附完整代码)》这篇文章主要为大家详细介绍了如何使用Python实现一个Excel批量样式修改器,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一... 目录前言功能特性核心功能界面特性系统要求安装说明使用指南基本操作流程高级功能技术实现核心技术栈关键函

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

C++统计函数执行时间的最佳实践

《C++统计函数执行时间的最佳实践》在软件开发过程中,性能分析是优化程序的重要环节,了解函数的执行时间分布对于识别性能瓶颈至关重要,本文将分享一个C++函数执行时间统计工具,希望对大家有所帮助... 目录前言工具特性核心设计1. 数据结构设计2. 单例模式管理器3. RAII自动计时使用方法基本用法高级用法

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可