《计算机c语言课程设计【图书信息管理系统】》由会员分享,可在线阅读,更多相关《计算机c语言课程设计【图书信息管理系统】(22页珍藏版)》请在金锄头文库上搜索。
1、 德州学院计算机系课课程程设设计计报报告告实习名称实习名称 C 语言课程设计 设计题目设计题目 图书信息管理系统 实习时间实习时间 2012.3.52012.3.11 专业班级专业班级 11 级计算机科学与技术 指导老师指导老师 谢延红 教学单位教学单位(盖章) 计算机系 小组分工情况:学号姓名分工201101005109刘昭峰代码编辑及文档编写二一二年五月二十五日目目 录录1 设计目的12 需求分析.23 概要设计24 详细设计34.1 WELCOME()欢迎界面.3 4.2 LIST()函数.4 4.3 ENTerING()图书信息录入函数.5 4.4 SEARCH()图书信息浏览函数.7
2、 4.5 CHECK图书信息查询函数.95 使用说明.145.1 欢迎界面14 5.2 目录14 5.3 图书信息录入15 5.4 图书信息浏览17 5.5 图书信息查询18 5.6 退出系统196 总结207 参考文献21德州学院 计算机系 2011 级 计算机网络技术 自主能力学习 1图图书书信信息息管管理理系系统统 1 设计目的图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理。根据调查得知,他们以前对信息管理的主要方式是基于文本、表格等纸介质的手工处理,对于图书借阅情况(如借书天数、超过
3、限定借书时间的天数)的统计和核实等往往采用对借书卡的人工检查进行,对借阅者的借阅权限、以及借阅天数等用人工计算、手抄进行。数据信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说,缺乏系统,规范的信息管理手段。尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。数据处理手工操作,工作量大,出错率高,出错后不易更改。图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对它比
4、较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的图书进行更改就更加困难了。基于以上种种原因要建立图书管理系统,以便于对图书信息进行管理,提高图书查询浏览的效率,以及及时了解各个环节中的信息变更,使图书管理工作规范化,系统化,程序化,避免图书管理的随意性,提高信息处理的速度和准确性。2 需求分析书籍是人类进步的阶梯,随着人类社会的发展,人类对知识的需求也不断增长。在当今社会书藉对我们的影响越来越大,繁多的图书也需要系统的管理。图书系统在生活中运用十分广泛,因此需要编写程序对图书进行管理。德州学院 计算机系 2011 级 计科外包 c 语言
5、课程设计2所需要的图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。基本要求包括:系统以菜单的方式工作,要有图书信息录入功能(图书信息用文件保存)、图书信息浏览功能、查询和排序功能(至少一种查询方式)。查询时分按书名查询和按作者名查询并需要把书籍按一定的顺序排序。3 概要设计概要设计以功能图的形式呈现出来,如图 1 所示。图书信息管理系统包括四大方面,分别为目录、图书信息录入、图书信息浏览、图书查询和排序。其中在查询之前会按每本书的价格排序,然后再分别按书名和作者名进行查询。输入 输入 排序 图 1 系统功能图图书信息管理系统目录图书录入图书浏览图书查询和排序1录入2浏览
6、3查询4返回书名作者名分类号出 版 单 位价格出 版 时 间按书名按 作 者 名写入文件德州学院 计算机系 2011 级 计科外包 c 语言课程设计34 详细设计本系统有一个 Book 类,有五个函数。分别是 list()目录函数,entering()图书信息录入函数,search()图书信息浏览函数,check()图书信息查询函数,check()为友元函数。4.1 欢迎界面Welcome 欢迎界面出现在运行程序的最前面,是图书信息管理系统的欢迎界面。其中,登录号在 1 到 30 之间,登录号输入正确后才能进入目录,输入错误则返回导航界面。void Book:welcome()long id;
7、/*登录号*/coutid;if(id=1switch(a)case 1 : entering();break;case 2 : search();break;case 3 : check();break;case 4 : coutname;coutauthor;coutclassify;coutpublishers;couttime;coutprice;FILE *fp;fp=fopen(“book.txt“,“a“);fprintf(fp,“%s %s %d %s %s %fn“,name,author,classify,publishers,time,price);fclose(fp);
8、couts;if(s=1)entering();德州学院 计算机系 2011 级 计科外包 c 语言课程设计6else if(s=2)list();elsecouts;if(s=1)entering();else if(s=2)list();elsecouts;if(s=1)search();德州学院 计算机系 2011 级 计科外包 c 语言课程设计8else if(s=2)list();elsecouts;if(s=1)search();else if(s=2)list();elsecoutbookj+1.price)temp=bookj;bookj=bookj+1;bookj+1=tem
9、p;for(i=0;is;if(s=1)char name120;coutname1;for(i=0;is;if(s=1)check();else if(s=2)temp.list();elsecoutauthor1;for(i=0;is;if(s=1)check();else if(s=2)temp.list();elsecout“选项输入错误,返回导航界面!“;temp.list();elsecout“选项输入错误,返回导航界面!“endl;Book a;temp.list();德州学院 计算机系 2011 级 计科外包 c 语言课程设计135 使用说明5.1 欢迎界面点击红色叹号开始运行
10、,出现导航界面。如图 2 所示。图 2 欢迎界面5.2 目录输入登录号,例如输入 1,注意登录号在 130 之间。然后出现目录。如图 3 所示。德州学院 计算机系 2011 级 计科外包 c 语言课程设计14图 3 目录5.3 图书信息录入输入 1 进入图书信息的录入。如图 4 所示。图 4 图书录入德州学院 计算机系 2011 级 计科外包 c 语言课程设计15依次分别输入书名、作者名、分类号、出版单位、出版时间、价格。如图5 所示。图 5 输入图书信息按回车,继续选择。如图 6 所示。图 6 再次输入一本图书的信息德州学院 计算机系 2011 级 计科外包 c 语言课程设计16第二次输入完
11、毕后,输入 2,返回导航界面。如图 7 所示。图 7 返回导航界面5.4 图书信息浏览输入 2 进入图书信息浏览。如图 8 所示。德州学院 计算机系 2011 级 计科外包 c 语言课程设计17图 8 图书信息浏览输入 2,返回导航界面。如图 9 所示。图 9 返回导航界面5.5 图书信息查询输入 3,进入图书信息查询。屏幕输出图书按价格排序的信息。如图 10 所示。图 10 图书信息查询输入 1,按书名查询,输入书名 ms。如图 11 所示。德州学院 计算机系 2011 级 计科外包 c 语言课程设计18图 11 按书名的查询结果输入 1,继续查询。然后输入 2,按作者名查询。如图 12 所
12、示。图 12 按作者名的结果最后输入 2,返回导航界面。如图 13 所示。图 13 返回导航界面5.6 退出系统输入 4,如图 14 所示。德州学院 计算机系 2011 级 计科外包 c 语言课程设计19图 14 退出系统6 6 总结总结通过这次程序设计,我充分认识到要自己设计一个程序是一件多么不容易 的事,学习 C+是多么重要。刚着手开始做的时候对这个程序无从下手,不知道应该怎样去做。从网上看了很多其他人做的程序,同时问了同学,然后才开始做。我先从题目要求开始,把图书信息管理系统的要求写下来,把需要的函数和变量一一列出来,然后按目录录入浏览查询的顺序把函数写出来。在写程序的过程中,有很多地方
13、不知道怎样写,像写入文件函数,这些都是边看书边写的。在调试过程中出了很多错,包括有中文的分号、少大括号等因不仔细所犯下的错,也有没有定义、函数非法等错误。在写程序的过程中,我本想在查询函数里使所输入的书名或作者名在录入的所有书里查询一遍,若没有此书信息则输出无此书信息,但这个想法以我现在的能力写不出来。这使我深刻认识到自己的不足,对所学知识不能灵活运用。通过这次课程设计我深刻认识到了自己的不足,对很多知识都不能熟练的德州学院 计算机系 2011 级 计科外包 c 语言课程设计20掌握,同时也认识到理论和实践相结合的重要性,只有自己亲手去做才可能知道自己哪里不会,才能更清楚的认识到自己的不足,才能有所提高。今后还会有很多程序设计,一定要吸取这次的经验教训,把知识学懂学透学精,真正的为我所用。7 7 参考文献参考文献1 谭浩强.C+程序设计M,北京:清华大学出版社,2011.8.2 谢延红,王付山.C 语言程序设计教程M,北京:国防工业出版社,2011.7.