C语言课程设计—书店管理系统.doc_第1页
C语言课程设计—书店管理系统.doc_第2页
C语言课程设计—书店管理系统.doc_第3页
C语言课程设计—书店管理系统.doc_第4页
C语言课程设计—书店管理系统.doc_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机程序设计(C语言)课程设计报告题目:图书管理系统学院:专业:班级:学号:姓名:指导教师:设计日期:2013年06月24日一、选题背景:设计一个图书管理系统,管理员通过登陆账号来进行下一步,使用错误账号和密码会被视为非法登陆。图书信息包括:每种图书都有书名、ISBN、一名或多名作者(译者)、出版社、定价和内容简介等;读者信息包括:借书证记录有借阅者的姓名、密码、所在单位和类别等;读者凭借书证借书二、设计思想:(1)整个系统除了主函数外,另外还有各种功能子函数,利用无限次循环语句while()和选择语句swithch()实现各个子函数的调用,系统根据输入的数字选项来调用相应的函数,以实现相应的功能。主要实现了图书的录入、存储、查询、添加、删除、修改、借书、还书等功能。 (2)、Cbook();这是一个指针函数,它主要实现了链表的创建,并且在创建过程中从文件读取信息到链表中,以用于后面其他函数的操作。它返回的时一个单向链表的头。其他函数调用时只需调用它返回的头即可。 (3)、mainmenu();、menu1();、glm enu();、cxmenu();、jhmenu();这五个函数时整个图书管理系统的全部菜单函数,mainmenu();为系统主界面,进入时可选择进入程序和退出程序。menu1();为进程序时显示的功能菜单,在此菜单可以选择录入、保存图书信息,也可选择进入其他子系统。glmenu();此菜单为 进入图书管理系统的菜单,在此可以选择添加、删除、修改图书等操作。cxmenu();为查询系统的菜单,在此可以选择按书名、编号、作者等方式进行查询图书。jhmenu();为借书还书的子菜单,在此可以选择借书还书操作。操作完成后按提示信息进行文件的保存操作。三、程序流程图会员登陆系统系统管理界面收银系统管理系统报表系统退出系统四、主要解决问题的方法及技术关键通过自己定义的函数和声明一个结构,主要方法是先使用int函数定义,不同的选择进入不同的定义函数,通过for语句进行判断,然后使用heart数组的各种方式打开此文件,然后通过while函数和for函数关闭文件,在不同的取用数值里,分别使用for,while语句进行判断是否进行下条语句。五、设计结果说明程序都是比较简单的函数,使用方便,易懂,占用空间小。六、程序清单:#include#include#include#includeusing namespace std;class BookDataprivate:char isbn14;char bookTitle51;char author31;char publisher31;char dataAdded11;int qytOnHand;double wholesale;double retail;double price;public:void set();void write();void read();BookData()void change();void search();void cwrite();void deleteBook();void rwrite();void shouyin();void pifa();void jiazhi();void lingshou();void shuliang();void riqi();BookData b500,B;int count=0;void BookData:rwrite()fstream inf(book.txt,ios_base:trunc|ios_base:out);if(!inf)coutERROR!endl;for(int i=0;icount-1;i+)infbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;inf.close();void BookData:deleteBook()char s14,e;cout请输入要删除图书的ISBN号:s;for(int i=0;icount;i+)if(strcmp(bi.isbn,s)=0)for(int q=i;qcount;q+)bq=bq+1;cout是否将修改保存至书库?Y/ye;if(e=y|e=Y)B.rwrite();void BookData:cwrite()fstream inf(book.txt,ios_base:trunc|ios_base:out);if(!inf)coutERROR!endl;for(int i=0;icount;i+)infbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;inf.close();void BookData:set()char no14,s;char title51;char zhuozhe31;char ban31;char data11;int kucun;double pifa;double ling;doif(count=0)cout请输入书籍的ISBN号:no;cout请输入书籍的名称:title;cout请输入书籍的作者:zhuozhe;cout请输入书籍的出版社:ban;cout请输入进书的日期data;cout请输入进书的数量:kucun;cout请输入书的批发价:pifa;cout请输入书的零售价:ling;strcpy(bcount.isbn,no);strcpy(bcount.author,zhuozhe);strcpy(bcount.bookTitle,title);strcpy(bcount.publisher,ban);strcpy(bcount.dataAdded,data);bcount.qytOnHand=kucun;bcount.retail=ling;bcount.wholesale=pifa;bcount.price=bcount.wholesale*bcount.qytOnHand;count+;elsecout请输入书籍的ISBN号:no;for(int i=0;icount;i+)if(strcmp(bi.isbn,no)=0)cout您输入的图书已经存在!endl;return;cout请输入书籍的名称:title;cout请输入书籍的作者:zhuozhe;cout请输入书籍的出版社:ban;cout请输入进书的日期data;cout请输入进书的数量:kucun;cout请输入书的批发价:pifa;cout请输入书的零售价:ling;strcpy(bcount.isbn,no);strcpy(bcount.author,zhuozhe);strcpy(bcount.bookTitle,title);strcpy(bcount.publisher,ban);strcpy(bcount.dataAdded,data);bcount.qytOnHand=kucun;bcount.retail=ling;bcount.wholesale=pifa;bcount.price=bcount.wholesale*bcount.qytOnHand;count+;cout是否继续输入?(Y/y)s;while(s=Y|s=y);B.write();void BookData:write()fstream inf(book.txt,ios_base:ate|ios_base:out);if(!inf)coutERROR!endl;for(int i=0;icount;i+)infbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;inf.close();void BookData:read()BookData s500;fstream inf(book.txt,ios_base:in|ios_base:out);if(!inf)coutERROR!endl;if(count=0)int a;for(a=0;aba.isbnba.bookTitleba.authorba.publisherba.dataAddedba.qytOnHandba.wholesaleba.retail;inf.close();for(int i=0;ia;i+)coutbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;void BookData:search()char c14;cout请输入要查询的ISBN号:c;for(int i=0;icount;i+)if(strcmp(bi.isbn,c)=0)cout 你所查询的图书信息如下endl;cout ISBN号:bi.isbnendl;cout 书 名:bi.bookTitleendl;cout 作者名:bi.authorendl;cout 出版社:bi.publisherendl;cout 进书日期:bi.dataAddedendl;cout 库 存 量:bi.qytOnHandendl;cout 批 发 价:bi.wholesaleendl;cout 零 售 价:bi.retailendl;cin.get();return;void BookData:change()char a15,s;int i;cout请输入要修改图书的ISBN号:a;for(i=0;icount;i+)if(strcmp(bi.isbn,a)=0)cout请输入书籍的名称:bi.bookTitle;cout请输入书籍的作者:bi.author;cout请输入书籍的出版社:bi.publisher;cout请输入进书的日期bi.dataAdded;cout请输入进书的数量:bi.qytOnHand;cout请输入书的批发价:bi.wholesale;cout请输入书的零售价:bi.retail;cout是否将修改保存到书库?Y/ys;if(s=y|s=Y)B.cwrite();void guanli()int z;docout 1.查找图书 endl;cout 2.增加书 endl;cout 3.修改图书信息endl;cout 4.删除书 endl;cout 5.返回到主菜单endl;cout 请输入选择(15):z;switch(z)case 1:B.search();break;case 2:B.set();break;case 3:B.change();break;case 4:B.deleteBook();break;case 5:cout退回主菜单!endl;break;default:cout输入有误重新输入!endl;while(z!=5);void BookData:shouyin()BookData a500;double sum=0;int x=0;cout*endl;cout 已进入付款模块!endl;cout*endl;char s14,d;int w,n500;docout请输入购买图书的ISBN:s;S:cout请输入购买图书的数量:w;for(int i=0;icount;i+)if(strcmp(bi.isbn,s)=0)ax=bi;nx=w;if(bi.qytOnHandw)cout库存不够!endl;cout是否在库存允许范围内购买?Y/yd;if(d=y|d=Y)goto S;bi.qytOnHand=bi.qytOnHand-w;x+;cout是否继续购买?Y/yd;while(d=y|d=Y);cout*endl;cout 艺人书店图书出售票据endl;cout*endl;cout日期:2009年6月30日星期二endl;cout数量 ISBN号 书名 单价 金额endl;for(int h=0;hx;h+)coutnhtah.isbntah.bookTitletah.retailtah.retail*nhendl;sum=sum+ah.retail*nh;cout=endl;cout销售合计:¥sumendl;cout应付总额:¥sumendl;cout=endl;cout 谢谢光临!endl;cout=endl;B.cwrite();void BookData:pifa()int i,j,a;BookData temp;for(i=0;icount-1;i+)for(j=0;jbj+1.wholesale)temp=bj;bj=bj+1;bj+1=temp;for(a=0;acount;a+)coutba.isbntba.bookTitletba.authortba.publishertba.dataAddedtba.qytOnHandtba.wholesaletba.retailendl;B.cwrite();void BookData:lingshou()int i,j,a;BookData temp;for(i=0;icount-1;i+)for(j=0;jbj+1.retail)temp=bj;bj=bj+1;bj+1=temp;for(a=0;acount;a+)coutba.isbntba.bookTitletba.authortba.publishertba.dataAddedtba.qytOnHandtba.wholesaletba.retailendl;B.cwrite();void BookData:shuliang()int i,j,a;BookData temp;for(i=0;icount-1;i+)for(j=0;jbj+1.qytOnHand)temp=bj;bj=bj+1;bj+1=temp;for(a=0;acount;a+)coutba.isbntba.bookTitletba.authortba.publishertba.dataAddedtba.qytOnHandtba.wholesaletba.retailendl;B.cwrite();void BookData:jiazhi()int i,j;BookData temp;for(i=0;icount-1;i+)for(j=0;jbj+1.price)temp=bj;bj=bj+1;bj+1=temp;for(i=0;icount;i+)coutbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;B.cwrite();void BookData:riqi()int i,j;BookData temp;for(i=0;icount-1;i+)for(j=0;j0)temp=bj;bj=bj+1;bj+1=temp;for(i=0;icount;i+)coutbi.isbntbi.bookTitletbi.authortbi.publishertbi.dataAddedtbi.qytOnHandtbi.wholesaletbi.retailendl;B.cwrite();void baobiao()int q;docout*endl;cout 艺人书店报表模块endl;cout 1.书库列表endl;cout 2.批发价列表endl;cout 3.零售价列表endl;cout 4.按书的数量列表endl;cout 5.按书的价值额列表endl;cout 6.按进书日期列表endl;cout 7.返回到主菜单endl;cout 请输入选择(17):endl;cout*q;switch(q)case 1:B.read();break;case 2:B.pifa();break;case 3:B.lingshou();break;case 4:B.shuliang();break;case 5:B.jiazhi();break;case 6:B.riqi();break;case 7:cout退回主菜单!endl;break;default:cout输入有误重新输入!endl;while(q!=7);void m

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论