西电C语言程序设计实验之图书馆管理系统

Posted akynazh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了西电C语言程序设计实验之图书馆管理系统相关的知识,希望对你有一定的参考价值。

简单文件数据库-模拟图书馆管理系统

题目简介

涉及知识点:文件读写、内存管理、结构体定义、基本数据结构、高级格式化输入输出

要求:编写一个程序模拟图书管理系统。

用户分为管理员和读者两类,分别显示不同文本格式菜单,通过菜单项对应数字进行选择。

读者菜单包括借书、还书、查询等功能。

管理员菜单包括图书和读者信息录入、修改和删除

图书信息至少应包括:编号、书名、数量

读者信息至少应包括:编号、姓名、所借图书

可根据图书名称或编号进行图书信息查询,可查询某本书现在被哪些读者借走。

命令行参数如下:

Libsim –a(-u) xxxx

第一个参数为可执行程序名称;

第二个参数为用户身份,-a表示管理员,-u表示读者;

第三个参数为用户名

程序解析

几个函数说明

1.展示读者和图书信息

void ShowBook(char* bname);
void ShowReader(char* rname);

2.图书借阅和归还

void BookLend(char *rname, char *bname);
void BookReturn(char *rname, char* bname);

3.图书和读者信息增删

void AddBook(char* bname);
void DelBook(char* bname);
void AddReader(char* rname, char* reroot);							
void DelReader(char* rname);

4.读取读者,管理员和图书信息

void ReadBooksInfo();
void ReadReadersInfo();
void ReadAdministratorsInfo();

5.更新读者,管理员和图书信息

void UpdateBorrowerList();
void UpdateBorrowedBookList();
void UpdateBookleft();
void UpdateBooks();
void UpdateReaders();
void UpdateAdministrators();
void UpdateReroots();
void UpdateAdroots();

文件数据库信息编写规则

每个文件以end作为结尾
而null表示该书或读者已经被删除

books.txt:
每行一本书,第一行的书编号为1
readers.txt:
每行一个读者姓名,第一行的读者编号为1
administrators.txt:
每行一个管理员姓名,第管理员一行的读者编号为1

books'borrowers.txt:
每行若干个人名,第一行对应编号为1的书的借阅人
borrowers'books.txt:
每行若干个书名,第一行对应编号为1的人的在借书

reroots.txt:
每行一个密码,第一行对应编号为1的读者的密码
adroots.txt
每行一个密码,第一行对应编号为1的管理员的密码

后记

完整源码详见我的github项目:xdu-exp-c

以上是关于西电C语言程序设计实验之图书馆管理系统的主要内容,如果未能解决你的问题,请参考以下文章

西电C语言程序设计实验之图书馆管理系统

西电C语言程序设计实验之位图图像文件缩放

西电C语言程序设计实验之位图图像文件缩放

西电C语言程序设计实验之位图图像文件缩放

西电C语言程序设计实验之RLE解压缩算法

西电C语言程序设计实验之RLE解压缩算法