图书管理系统课程设计实验报告C++(完整版内含课程设计日志6篇纯手写)

图书管理系统课程设计

说明一下这是最近博主做的一篇C++课程设计报告形式的,代码的话我是测试过的应该没有bug,如果有问题的话可以在评论@我。
在这里插入图片描述
第一章 问题描述
要求以图书馆管理业务为背景,设计并实现一个“图书馆管理信息系统”软件,使用该系统可以方便查询图书的信息、借阅者的个人等信息,实现借书与还书等功能。
要求:(1)实现图书信息的录入、修改、删除和查看(2)实现借阅者分类及借阅者个人信息的录入、修改和删除(3)实现借书和还书功能(4)可图书信息查询和读者信息查询(5)对用户信息管理及权限分配
第二章 需求分析
根据题目的任务要求,对将要实现的系统做功能分析及数据分析如下:
(1)功能分析(操作需求)
根据问题描述与设计要求,本系统应具备如下功能:
 图书系统的创建:系统启动时,从图书馆功能文件加载图书信息,如果图书馆功能文件不存在,应初始化图书馆功能文件;
 添加图书信息:增加新的图书信息到图书信息系统中;
 修改图书信息:修改现有的图书的基本信息;
 删除图书信息:从图书信息系统中删除一个已经存在的图书信息;
 查找图书信息:查找图书是否存在。
 显示图书信息:显示图书信息。
 全删图书信息:把图书信息全部清空。
 读者信息系统的创建:系统启动时,从图书馆功能文件加载读者信息;
 添加读者信息:增加新的读者信息到读者信息系统中;
 修改读者信息:修改现有的读者的基本信息;
 删除读者信息:从读者信息系统中删除一个已经存在的读者信息;
 查找读者信息:查找读者是否存在。
 显示读者信息:显示读者信息。
 全删读者信息:把读者信息全部清空。
 借书管理系统的创建:系统启动时,从图书馆功能文件加载借书管理系统;
 借书功能:输入借书图书信息,查找该图书并取走该书,并进行记录借阅者信息。
 还书功能:输入借书图书信息,查找该图书并插入。
 退出系统管理的创建:关闭正运行的系统回到到图书管理系统 。

(2)数据分析
根据问题描述确定图书信息包括:书名,编号;借阅者的信息有:姓名,编号;借书信息包括:读者信息,书籍信息。
具体的流程图
第三章 编程实现

#include <iostream>
#include <iomanip>
#include <cstring>
#include <fstream>
#include <stdlib.h>
using namespace std;
const int Reader=100;     //给读者分配储存空间
const int Maxb=100;     //给图书分配储存空间
const int Bor=5;
class Student
{
   
private:
    int tag;
    int number;
    char name[10];                //读者名称
    int borbook[Bor];
public:
    Student() {
    }
    char *getname()
    {
   
        return name;
    }
    int gettag()
    {
   
        return tag;
    }
    int getnumber()
    {
   
        return number;
    }
    void setname(char *na)
    {
   
        strcpy(name,na);
    }
    void delbook()
    {
   
        tag=1;
    }
    void addStudent(int n,char *na)
    {
   
        tag=0;
        number=n;
        strcpy(name,na);
        for(int i=0; i<Bor; i++)
            borbook[i]=0;
    }
    void borrowbook(int bookid)        //借书操作
    {
   
        for(int i=0; i<Bor; i++)
        {
   
            if (borbook[i]==0)
            {
   
                borbook[i]=bookid;
                return;
            }
        }
    }
    int retbook(int bookid)            //还书操作
    {
   
        for(int i=0; i<Bor; i++)
        {
   
            if(borbook[i]==bookid)
            {
   
                borbook[i]=0;
                return 1;
            }
        }
        return 0;
    }
    void output()                 //读出读者信息
    {
   
        cout << setw(5) << number <<setw(10) << name<<"借书编号:[";
        for(int i=0; i<Bor; i++)
            if(borbook[i]!=0)
                cout << borbook[i] << "|";
        cout << "]"<<endl;
    }
};
class RData
{
   
private:
    int top;             //读者记录指针
    Student read[Reader];
public:
    RData()               //构造函数,将Student.txt读到read[]中
    {
   
        Student s;
        top=-1;
        fstream file("Student.txt",ios::in);         //打开一个输入文件
        while (1)
        {
   
            file.read((char *)&s,sizeof(s));
            if (!file)break;
            top++;
            read[top]=s;
        }
        file.close();
    }
    void clear()
    {
   
        top=-1;
    }
    int addStudent(int n,char *na)         //查找是否存在
    {
   
        Student *p
目 录 1 需求分析 2 2 数据库的概念设计 2 3 数据库的逻辑设计 3 4 数据库的物理设计 4 5 应用程序设计 6 6 编程实现 10 总结与体会 13 致 谢 14 参考文献 15 数据库原理及应用课程设计报告 1 需求分析 1.1 任务和要求 用户有以下需求:建立读者档案;建立图书档案,建立书目索引;完成日常图书检索、借、还工作,对读者档案、图书档案、借、还系统的访问,必需进行身份验证。 1.2系统总体功能设计 图书馆管理系统主要提供的功能包括图书入库、借出、归还以及对读者的信息管理 。 (1) 图书借阅: 借阅图书时应按图书馆的规则进行借阅,例如不超过5本,如果已有超时借阅的图书,则在归还前不允许再借阅等等。 (2) 图书归还: 对于图书遗失或超期归还的情况应根据图书馆的规则进行处罚。 (3) 新图书信息入库: 建立图书信息库,以便读者进行查询和借阅。 (4) 图书信息管理: 图书因使用过久或信息过时需做下架处理,或者在读者借阅书籍时发生遗失的情况下需做遗失处理,这些都需要修改数据库关于书籍的信息。 (5) 读者信息管理: 对读者应该提供能办证、修改、注销;访问时要进行身份验证,办证、修改、注销应记录操作员编号、操作日期、理由、审批记录等功能 (6) 图书信息查询: 一般读者在借阅书籍前都需查询图书馆关于所借书籍的大概信息:该图书是否在馆—是否已借出—在馆中的书架号;除查询书籍外读者还可查询关于自身的信息:是否有超期未还的图书,还可借阅书籍数目等。 1.3软硬件运行环境及开发工具 Visual Basic 6.0 SQL Server 2000 2 数据库的概念设计 E-R模型图:
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王多鱼变成鱼

谢谢宝贝们支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值