C_图书馆管理系统课程设计报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图书信息管理系统

题目摘要:该系统存储以下信息:

(1)对于同一作者同一书名的书,存储书名、数目编号、作者名、库存册数

已借出册数

(2)对于每一本书还要存储一个登录号、当前借阅该书的读者姓名与借书证号、借阅日期系统功能要求如下:

1 图书信息录入功能(图书信息用文件保存)

2 图书信息浏览功能,查询或排序功能:(至少一种查询方式)

3 按书名查询

4 按作者名查询

5 图书信息的删除与修改

一、模块设计

二、主要数据结构

图书结构体:

typedef struct book

{

char bname[20]; /*书名*/

char bnum[20]; /*书编号*/

char booktype[20]; /*分类号*/

char plase[30]; /*出版单位*/

char pbtime[20]; /*出版时间*/

float price; /*价格*/

char auter[20]; /*作者名字*/

char F; /*是否在馆*/

}books;

会员信息结构体:

typedef struct peope

{

char pnum[20]; /*借书证的号码*/

int type; /*会员类型*/

char pname[20]; /*名字*/

char pmima[10]; /*密码*/

int n; /*最多接的书本数*/

int m; /*借书本数*/

union

{

struct Pbook

{

char pbooks[20]; /*借书的书本名*/

char ptime[20]; /*借书的时间*/ }peop[6]; /*普通会员*/

struct VPbook

{

char vpbooks[20]; /*借书的书本名*/

char vptime[20]; /*借书的时间*/

}vpeop[10]; /*高级会员*/ }kind;

}peoper;

全局变量:

int B,P; /*B库存的书本数;P普通会员的人数;*/ books Book[1000]; peoper peo[100];

三、流程图

四、算法清单

//增加书籍

void Liberian::Append(fstream& storef)

{

bookData book;

int choice;

int key;

int num;

(0,ios::end);

int posEnd=();

cout<<"*************书籍入库***************"<

while(1)

{

cout<<" Please enter your choice:"<

cout<<"1--添加新书\n"<<"2--已有书籍\n"<<"0--返回\n";

cin>>choice;

switch(choice)

{

case 1:

cout<<" 书号, 书名, 数量, 作者,价格,出版社,出版时间?"<>>>>>>>>>>>>>;

(reinterpret_cast(&book),sizeof(bookData));

break;

//书籍查询

void Find(fstream & f)

{

bookData book;

int key;

int choice;

(0,ios::end);

int posEnd=();

cout<<"*************书籍查询***************"<

while(1)

{

cout<<" 请输入您的选择\n"

<<" 1-- 检索一本书\n"

<<"2-- 显示全部书籍\n"

<<"0-- 返回\n";

cin>>choice;

switch(choice)

{

case 1:

(0,ios::beg);

cout<<"输入你想检索书的书号"<

cin>>key;

do{

(reinterpret_cast(&book),sizeof(bookData)); }while!=key&&()!=posEnd);

if==key)

cout<<<<"---"<<<<"---"<<<<"---"<<<<"---"<<<

cout<<"找不到此书,请重新确认!"<

break;

//查找读者

void Reader::Addreader()

{

Person temp;bookData book={0,"0",0};

(0,ios::end);

int Posend=();

cout<<"输入你想要增加的读者的名字"<

cin>>;

cout<<"新读者的学号:"<

cin>>;

[1]=book; [0]=book; =0;

(reinterpret_cast(&temp),sizeof(Person));

cout<<" 成功添加!"<<<

}

bool Reader::findreader()

{

(0,ios::end);

int Posend=();

char name[20];

Person guest={"0","0",0,{{0,"0",0},{0,"0",0}}};

cout<<"输入查找人的名字!";

cin>>name;

(0);

do{

(reinterpret_cast(&person),sizeof(Person)); }while(strcmp(name,&&()!=Posend);

if(!strcmp(name,)

{

cout<<"查到此人:"<<<

相关文档
最新文档