c++课程设计及图书管理系统(窗口界面)


    






    C++课程设计
    课程设计















    系部:计算机应技术系
    专业:计算机应技术
    班级学号:
    姓名:



    系统功分析:
    图书理系统

    设计说明报告:
    图书馆作学生学知识重场作信息资源集散图书馆户阅资料繁包含信息数理介现象图书馆阅理系统进行全面分析处理信息高速发展天促进图书馆理运网络技术通信息系统开发图书馆间互通利提高图书利率
    系统针图书理面量纷繁复杂图书理工作图书出需设计合理系统应包括图书库读者库图书书信息建立网电子图书理系统目实现纸化图书理减轻理员工作量
    时损失图书进行删达降低成提高工作效率目标
    系统设计缺点足时间里断完善修改希老师够指出足够真正更应生活中
    二系统设计:
    设计四类Reader(读者类)Rdatabase(读者库类)Book(图书类)Bdatabase(图书库类)读者类存储信息中包括读者基属性int tag删标记 1:已删0:未删 int no 读者编号 char name[10]读者姓名 int borbook[Maxbor]图书 char *getname() 获取姓名 int gettag() 获取删标记 int getno()获取读者编号void setname(char na[])设置姓名void delbook()设置删标记void addreader(int nchar *na) 增加读者void borrowbook(int bookid) 书操作int retbook(int bookid) 书操作void disp() 输出读者信息读者库类包括:int top 读者记录指针Reader read[Maxr] 读者记录RDatabase() 构造函数readertxt读read[]中void clear() 删读者信息int addreader (int nchar *na) 添加读者时先查找否存Reader *query(int readerid) 编号查找void disp() 输出读者信息void readerdata() 读者库维护~RDatabase() 析构函数read[]写入readertxt文件中
    图书类包括:int tag 删标记 1:已删 0:未删 int no 图书编号 char name[20] 书名 int onshelf 否架 1:架 0:已 char *getname() {return name} 获书名 int getno() {return no} 获书编号 int gettag() {return tag} 获删标记 void setname(char na[]) 设置书名void delbook()删图书void addbook(int nchar *na)增加图书int borrowbook() 书操作void retbook() 书操作void disp() 输出图书图书库类包括:int top图书记录指针 Book book[Maxb] 图书记录BDatabase() 构造函数booktxt读book[]中void clear() 全删int addbook(int nchar *na) 增加图书Book *query(int bookid)查找图书void bookdata() 图书库维护~Bdatabase析构函数book[]写入booktxt文件中

    Reader(读者类)
    Int tag
    Int no
    Char name[10]
    Int borbook[maxbor]
    Reader()
    Char *getname()
    Int gettag()
    Int getno()
    Void setname(char na[])
    Void delreader()
    Void addreader(int nchar *na)
    Void borrowbook(int bookid)
    Int retbook(int bookid)
    Void disp()

    Rdatabase(读者库类)
    Int top
    Reader read[maxr]
    Rdatabase()
    Void clear()
    Int addreader(int nchar *na)
    Reader *query(int readerid)
    Void disp()
    Void readerdata()
    ~Rdatabase()

    Book(图书类)
    Int tag
    Int no
    Char name[20]
    Int oneself
    Book()
    Char *getname()
    Int getno()
    Int gettag()
    Void setname(char na[])
    Void delbook()
    Void addbook(int nchar *na)
    Void borrowbook()
    Int retbook()
    Void disp()

    Bdatabase(图书库类)
    Int top
    Book book[maxb]
    BDatabase()
    Void clear()
    Int addbook(int nchar *na)
    book *query(int bookid)
    Void disp()
    Void bookdata()
    ~BDatabase()













    三代码编写:
    #include
    #include
    #include
    #include

    const int Maxr100
    const int Maxb100
    const int Maxbor5

    class Reader
    {
    int tag
    int no
    char name[10]
    int borbook[Maxbor]
    public
    Reader() {}
    char *getname() {return name}
    int gettag() {return tag}
    int getno() {return no}

    void setname(char na[])
    {
    strcpy(namena)
    }

    void delbook()
    {
    tag1
    }

    void addreader(int nchar *na)
    {
    tag0
    non
    strcpy(namena)
    for (int i0i borbook[i]0
    }

    void borrowbook(int bookid)
    {
    for (int i0i if (borbook[i]0)
    {
    borbook[i]bookid
    return
    }
    }

    int retbook(int bookid)
    {
    for (int i0i if (borbook[i]bookid)
    {
    borbook[i]0
    return 1
    }
    return 0
    }

    void disp()
    {
    cout< for (int i0i if (borbook[i]0)
    cout< cout<<]<}
    }

    class RDatabase
    {
    int top
    Reader read[Maxr]
    public
    RDatabase()
    {
    Reader s
    top1
    fstream file(readertxtiosin)
    while (1)
    {
    fileread((char *)&ssizeof(s))
    if (file) break
    top++
    read[top]s
    }
    fileclose()
    }

    void clear()
    {
    top1
    }

    int addreader (int nchar *na)
    {
    Reader *pquery(n)
    if (pNULL)
    {
    top++
    read[top]addreader(nna)
    return 1
    }
    return 0
    }

    Reader *query(int readerid)
    {
    for (int i0i if (read[i]getno()readerid && read[i]gettag()0)
    return &read[i]
    return NULL
    }

    void disp()
    {
    for (int i0i {
    if (read[i]gettag()0)
    read[i]disp()
    }
    }

    void readerdata()

    ~RDatabase()
    {
    fstream file(readertxtiosout)
    for (int i0i if (read[i]gettag()0)
    filewrite((char *)&read[i]sizeof(read[i]))
    fileclose()
    }
    }


    void RDatabasereaderdata()
    {
    int choice1
    char rname[20]
    int readerid
    Reader *r
    while(choice0)
    {
    if (choice0)
    {
    cout<<读者维护 <
    cin>>choice
    if(choice0)continue
    if(choice1)
    {
    cout<<输入读者编号:
    cin>>readerid
    cout<<输入读者姓名:
    cin>>rname
    addreader(readeridrname)
    }
    else
    if(choice2)
    {
    cout<<输入读者编号:
    cin>>readerid
    rquery(readerid)
    if (rNULL)
    {
    cout<<该读者存< continue
    }
    cout<<输入新姓名:
    cin>>rname
    r>setname(rname)
    }
    else
    if(choice3)
    {
    cout<<输入读者编号:
    cin>>readerid
    rquery(readerid)
    if (rNULL)
    {
    cout<<该读者存< continue
    }
    r>delbook()
    }
    else
    if(choice4)
    {
    cout<<输入读者编号:
    cin>>readerid
    rquery(readerid)
    if (rNULL)
    {
    cout<<该读者存< continue
    }
    r>disp()
    }
    else
    if(choice5)disp()
    else
    if(choice6)clear()
    else
    cout<<您输入误请重新输入:< }
    }
    }

    class Book
    {
    int tag
    int no
    char name[20]
    int onshelf
    public
    Book() {}
    char *getname() {return name}
    int getno() {return no}
    int gettag() {return tag}

    void setname(char na[])
    {
    strcpy(namena)
    }

    void delbook()
    {
    tag1
    }
    void addbook(int nchar *na)
    {
    tag0
    non
    strcpy (namena)
    onshelf1
    }

    int borrowbook()
    {
    if (onshelf1)
    {
    onshelf0
    return 1
    }
    return 0
    }

    void retbook()
    {
    onshelf1
    }

    void disp()
    {
    cout< }
    }

    class BDatabase
    {
    int top
    Book book[Maxb]
    public
    BDatabase()
    {
    Book b
    top1
    fstream file(booktxtiosin)
    while (1)
    {
    fileread((char*)&bsizeof(b))
    if (file) break
    top++
    book[top]b
    }
    fileclose()
    }

    void clear()
    {
    top1
    }

    int addbook(int nchar *na)
    {
    Book *pquery(n)
    if (pNULL)
    {
    top++
    book[top]addbook(nna)
    return 1
    }
    return 0
    }

    Book *query(int bookid)
    {
    for (int i0i if (book[i]getno()bookid && book[i]gettag()0)
    return &book[i]
    return NULL
    }

    void bookdata()

    void disp()
    {
    for (int i0i {
    if (book[i]gettag()0)
    book[i]disp()
    }
    }

    ~BDatabase()
    {
    fstream file(booktxtiosout)
    for (int i0i if (book[i]gettag()0)
    filewrite((char*)&book[i]sizeof(book[i]))
    fileclose()
    }
    }


    void BDatabasebookdata()
    {
    int choice1
    char bname[40]
    int bookid
    Book *b
    while(choice0)
    {
    if (choice0)
    {
    cout<<图书维护<
    cin>>choice
    if(choice0)continue
    if (choice1)
    {
    cout<<输入图书编号:
    cin>>bookid
    cout<<输入图书书名:
    cin>>bname
    addbook(bookidbname)
    }
    else
    if (choice2)
    {
    cout<<输入图书编号:
    cin>>bookid
    bquery(bookid)
    if (bNULL)
    {
    cout<<该图书存< continue
    }
    cout<<输入新书名:
    cin>>bname
    b>setname(bname)
    }
    else
    if (choice3)
    {
    cout<<输入图书编号:
    cin>>bookid
    bquery(bookid)
    if (bNULL)
    {
    cout<<该图书存< continue
    }
    b>delbook()
    }
    else
    if (choice4)
    {
    cout<<输入图书编号:
    cin>>bookid
    bquery(bookid)
    if (bNULL)
    {
    cout<<该图书存< continue
    }
    b>disp()
    }
    else
    if (choice5)disp()
    else
    if (choice6)clear()
    else
    cout<<您输入误请重新输入:< }
    }
    }

    void main()
    {
    int choice1bookidreaderid
    RDatabase ReaderDB
    Reader *r
    BDatabase BookDB
    Book *b
    while(choice0)
    {
    if(choice0)
    {
    cout<<1书 2书 3图书维护 4读者维护 0离开>
    cin>>choice
    if(choice0)continue
    if (choice1)
    {
    cout<< 书 读者编号:
    cin>>readerid
    cout<< 图书编号
    cin>>bookid
    rReaderDBquery(readerid)
    if (rNULL)
    {
    cout<<该读者存书< continue
    }
    bBookDBquery(bookid)
    if (bNULL)
    {
    cout<<该读者存书< continue
    }
    if (b>borrowbook()0)
    {
    cout<<该读者存书< continue
    }
    r>borrowbook(b>getno())
    }
    else
    if (choice2)
    {
    cout<<书 读者编号
    cin>>readerid
    cout<< 图书编号:
    cin>>bookid
    rReaderDBquery(readerid)
    if (rNULL)
    {
    cout<<存该读者书< continue
    }
    bBookDBquery(bookid)
    if (bNULL)
    {
    cout<<存该图书书< continue
    }
    b>retbook()
    r>retbook(b>getno())
    }
    if (choice3)BookDBbookdata()
    else
    if (choice4)ReaderDBreaderdata()
    else cout<<您输入误请重新输入:< }
    }
    }

    四总结
    C++语言课程设计现代计算机技术实际应相结合阶段学完理课程该方面力次检验
    开始算法思路运行调试美观图形界面兴奋程序学锻炼程巩固原理知识培养灵活运组合集成学知识技分析解决实际问题力体会身知识力实际中应发挥激发创新意识开发创造力培养沟通力
    次实时间然仅星期确实受益非浅通实丰富计算机操作验更加深C++语言解熟悉环境
    外实中老师进行细心耐心指导鼓励程序进行合理改进培养创新意识创新力原认怕课程设计种种辅助条件完成心里说出高兴
    发现问题解决问题程困惑明朗苦恼道兴奋步步走发现编程真奇妙刺激旅程特认毫事情完成种感觉简直言语表达
    感谢次课程设计带全新体验丰富验会换成奋斗源泉
    五参考书
    •1 李龙澍编 C++程序设计 清华学出版社
    •2李龙澍编 C++程序设计实训 清华学出版社社
    •3刘振安等 C++程序设计课程设计 机械工业出版社
    •4李春葆等 C++语言程序设计题典清华学出版社

    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 2 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    c++超市管理系统课程设计报告

    c++超市管理系统课程设计报告第1章 任务描述本次C++实践课题为“超市管理系统”。要求功能有A、添加商品信息,有商品编号、商品名、供应商代号、进货价、售出价、存货数等。进货:若商品已存在...

    2年前   
    552    0

    图书馆图书管理系统课程设计

     课程设计 (图书馆图书管理系统) 指导老师: 班 级:能动 姓 名: 学 号: ...

    5年前   
    1618    0

    基于UML的图书管理系统设计课程设计

    滨江学院 统一建模语言课程设计报告( 2013 -- 2014 年度第 二 学期)课程名称: 统一建模语言课程设计 题 目: 图书馆管理系统 院 系: ...

    1年前   
    399    0

    UML课程设计—图书管理系统

    《信息系统分析与设计》课程设计报告设计题目: 图书管理系统 姓 名: 班 级: 信管班 ...

    3年前   
    860    0

    银行账户管理系统(c++课程设计)

     2015-2016学年第二学期 面向对象程序设计(c++)大作业说明书学院名称: 计算机与信息工程学院 班级名称: 计算机科学与技术(对口)...

    3年前   
    729    0

    C++课设报告图书管理系统软件分析报告

    2015- 图书管理系统软件分析报告 XX大学《面向对象程序设计语言》课程设计报告目录系统设计者和开发者: 1软件信息: 1试验形式及分工情况: 1需求分析: 1程序...

    3年前   
    425    0

    图书管理系统

    毕业设计论文 毕业设计题目:图书管理系统 教 学 班: 学生姓名: 学 ...

    5年前   
    1712    0

    软件过程管理电子商务系统在线图书商城课程设计

    软件工程专业《软件过程管理》 课程设计报告题 目: 电子商务系统——在线图书商城 姓 名: 准考证号...

    1年前   
    293    0

    数据结构课程设计报告——图书管理系统

    课程设计报告 课设课题: 课程设计——图书管理系统 学 院: 电 子 信 息 学 院 专 业: 网 络 工 程 ...

    3年前   
    681    0

    《SQL-Server-数据库设计》课程设计报告(图书馆管理系统)

    《SQL Server 数据库设计》课程设计报告课题名称:图书馆管理系统_班级:_ 软大班____学号:_ __姓名:___ ___完成日期:_2...

    3年前   
    749    0

    SQL数据库图书管理系统课程设计

    XX职业技术学院信息工程系题 目:《图书管理系统》班 级 网络班 学 号 ...

    3年前   
    698    0

    数据库课程设计图书管理系统

    理工大学软件学院课程设计报告课 程:数据库课程设计题 目:图书管理系统班 级: 专 业:软件工程姓名学号:指导教师: 日期: 1.1背景 随着图书馆规模的不断扩大,图书...

    1年前   
    255    0

    图书管理系统(软件工程课程设计报告)

    图书管理系统(软件工程课程设计报告)一、可行性研究报告1.引言1.1编写目的可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解 经过对此项目进行详细调查研究...

    2年前   
    532    0

    图书管理系统软件工程课程设计

    XX大学 课程名称:软件工程 试题题目:图书管理系统 姓 名: 学 号: 专 业: 计算机科学与技术 学 院:计算机与信息科学学院 ...

    5年前   
    1283    0

    基于WEB的图书管理系统的设计与实现课程设计

    软件工程课程设计报告基于WEB的图书信息管理系统的设计与实现所 在 学 院 信息科学技术学院 专 业 名 称 计算机科学与技术 ...

    3年前   
    905    0

    C++语言课程设计一迷你高尔夫

    C++语言课程设计一迷你高尔夫一、实验内容 玩家通过按下键盘上的上下左右方向键控制球的移动,使其最终到达出口则游戏通关。 要求如下:1、 游戏分成3关,第一关、第二关、第三关界面图如下:第一关...

    3年前   
    610    0

    图书管理系统数据库设计数据库应用系统开发课程设计

    信息工程学院《数据库应用系统开发》课程设计论文题 目:图书管理系统数据库设计学 号:专业班级:信管级(X)班姓 名:魏 金 风指导老师:完成日期:2007摘 要在计算机日益普及...

    2年前   
    440    0

    图书管理系统心得

    图书管理系统心得  为期两个星期的c#图书管理系统实习终于结束了,总算松了一口气,在这短短的两周时间内承受了很大的压力现在终于能够得到“释放”了,感觉到很轻松。回顾这两周所做过的工作和努力,感...

    9年前   
    684    0

    图书管理系统小结

    图书管理系统小结  为期两个星期的c#图书管理系统实习终于结束了,总算松了一口气,在这短短的两周时间内承受了很大的压力现在终于能够得到“释放”了,感觉到很轻松。回顾这两周所做过的工作和努力,感...

    11年前   
    720    0

    图书馆管理系统

    图书馆管理系统图书馆管理系统 发布时间: 2004-03-17 作者: 摘 要 图书管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。...

    12年前   
    655    0

    文档贡献者

    文***享

    贡献于2020-12-20

    下载需要 2 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档