图书管理系统程序代码
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include
#include
#include
#define SIZE (struct booklist *)malloc(sizeof(struct booklist))
//建立已借阅图书信息结构体
struct borrow
{
char borbook_num[10];
char borbook_name[22];
char return_time[15];
char stu_num[15];
char stu_name[15];
struct borrow *next;
};
//建立预借图书信息结构体
struct prebor_stu
{
char prebook_num[10];
char prestu_num[15];
struct prebor_stu *next;
};
//建立图书结构体
struct booklist{
char num[10];
char name[22];
char zuozhe[15];
char leibie[10];
char pub_time[10];
char price[10];
char condition[10];
struct booklist *next;
};
struct booklist *create(void); /*创建图书信息链表*/
struct borrow *borrow_creat(struct booklist *head); //创建已借阅图书信息链表
int pre_creat(struct booklist *head); //学生登录系统预借图书并将信息存入文件prebor_stulist.txt
struct prebor_stu *prebor_creat(void); //创建预借阅图书信息链表
void printf1_(struct booklist *); //输出单个基本图书的数据
void store(struct booklist *head); /*保存链表中的图书信息到文件booklist.txt*/
void printfb1_(struct borrow *); //输出单个借出图书的部分数据
void printfb_(struct borrow *p); //输出单个借出图书的数据
void printfp1_(struct prebor_stu *); //输出单个被预借出图书的部分数据
void printfp_(struct prebor_stu *); //输出单个被预借出图书的数据
void printf_(struct booklist *,struct borrow *,struct prebor_stu *); /*2---输出链表中的图书信息*/
struct booklist *load(void); //5---从文件读入图书信息
struct booklist *num_paixu(struct booklist *); //4---按编号排序
struct booklist *price_paixu(struct booklist *); //3---按价格顺序排序
int kcnum(struct booklist *head); //6---统计库存数
void chaxun1_(struct booklist *,struct borrow *,struct prebor_stu *); //7---查询图书的编号图书的信息,并输出
void chaxun2_(struct booklist *,struct prebor_stu *,struct borrow *);//7---按作者查询信息并输出
void chaxun3_(struct booklist *,struct prebor_stu *,struct borrow *); //7---查询某类别图书信息并自动输出
void chaxun4_(struct borrow *,prebor_stu *,struct booklist *); //7---按学号查询借阅信息struct booklist *shanchu(struct booklist *,struct borrow *,struct prebor_stu *); //9---删除数据
struct borrow *shanchu2_(struct borrow *,struct borrow *); //删除一个struct borrow 结构体的数据
struct prebor_stu *shanchu3_(struct prebor_stu *,struct prebor_stu *); //删除一个struct prebor_stu 结构体的数据
void xiugai(struct booklist *,struct borrow *,struct prebor_stu *); //10---修改数据
void borstore(struct borrow *borrow_head); //保存已借阅图书信息到文件borrowlist.txt
//重新保存修改后的预借阅信息到文件prebor_stulist.txt (全部覆盖)
void prestore(struct prebor_stu *pre_head);
struct borrow *borload(void); //从文件提取信息创建已借阅图书源信息链表
struct booklist *charu(struct booklist *head,struct borrow *borrow_head); //8---将图书的数据到顺序排放的链表中,且插入后也是顺序排放的
struct booklist *scanf1_(void); // 输入单个图书源数据
void exchange(struct booklist *,struct booklist *) ;//交换两个结构体内的内容
struct borrow *tianjia1_(struct borrow *borrow_head,struct booklist *p); //添加一个struct borrow 结构体的数据
int main(void){
int n, n1, x , k = 0, flag, flag1, x1;
char ch;
struct booklist *head = NULL; //图书信息链表头指针
struct borrow *borrow_head = NULL ; //已借阅图书信息链表头指针
struct prebor_stu *pre_head = NULL ; //预借图书信息链表头指针
flag1 = 0; x = x1 = 1;
while(x)
{
system("cls");
printf("************************************************************************* **\n");
printf("* >>>>>>>>>>>>>欢迎使用君宁图书管理系统<<<<<<<<<<<<<<< *\n");