1、1课程设计报告题 目:图书信息管理系统2目 录一、设计任务书3二、本组课题及本人任务 3三、程序功能简介 3四、主体内容 31设计分析 32程序结构 43各模块的功能及程序说明 54. 源程序 55操作方法 .166试验结果 167设计体会 .五、附录201.流程图202.过程列表 243一、设计任务书1.目的1)复习、巩固 C语言的基础知识,进一步加深对 C语言的理解和掌握。2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。3)培养学生在项目开发中团队合作精神、创新意识及能力。
2、2.要求:1、对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理。2、系统设计要实用,编程简练,可用,功能全面。3、说明书、流程图要清楚。4、记录设计情况(备查,也为编写设计说明书作好准备) 。5、要求采用模块化程序设计方法,及锯齿型书写格式,要求上机调试通过和按设计报告格式。6、设计上交内容:设计报告一份(按格式书写) ;源程序一份,能编译成可执行文件并能正常运行。二、本组课题及本人任务课题:图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能:
3、1.系统以菜单方式工作。2.图书信息录入功能(图书信息用文件保存)输入。3.图书信息浏览功能输出。4.查询和排序功能:(至少一种查询方式)算法。a. 按书名查。b.按作者名查询。本人任务:负责设计和编写图书信息管理系统的修改图书信息部分。三、程序功能简介本系统是以 visual C+ 6.0 环境下用 C 语言开发的一个图书管理系统。本系统具有图书信息录入、浏览、删除、修改、查找(包括按书名、作者查找)功能。其中图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格,并且对信息以文件形式储存。另外本系统具备实用性的同时代码逻辑谨慎清晰易懂,且界面美观。4四、主体内容1设计分析本系统
4、共分为一个主页面模块(主函数部分) ,五个功能模块(功能函数)分别为图书信息录入、图书信息浏览、图书信息查询、图书信息删除、图书信息修改。设计时应该先写好主函数、定义好全局变量和功能函数,再对五个功能函数进行设计。在每个功能函数和主函数应中加入控制条件使用户可以随时退出系统,并在用户输入指令错误的时候给予提醒和退出选项。小组中的五个人分别承担一个功能模块进行设计。并在每个人设计完成后通过主函数进行链接调试正确后方为完成。2程序结构(流程图)5系统运行选择功能1.信息录入键入信息2.信息浏览返回主菜单返回主菜单3.信息查询按书名查找 按作者查找返回主菜单输入书名 输入作者信息存在?是 否输出信息
5、 返回主菜单4.信息删除输入删出信息代号输出删除后的信息返回主菜单5.信息修改输入修改信息代号修改信息存在?是信息修改否返回主菜单输出修改后的信息6.退出系统3各模块的功能及程序说明A、录入模块:本模块主要执行信息录入功能。信息录入是为了把新来的图书进行进库操作,也就是将新到来的图书的信息放入数据库当中,方便图书管理员的管理和操作,帮助图书管理员更好的管理图书的进库出库的情况,录入模块主要是方便了图书管理员对于图书的更好的管理,有助于挺高图书管理员的工作效率。B、浏览模块:本模块主要是执行把已有信息输出浏览功能。该模块的主要作用是为了对于所有图书信息的浏览,全方位的操作和宏观上的管理,对于图书
6、馆已有的图书可以有一个宏观上的认识,是图书管理员做到了心中有数,在总体上把握图书的所有信息,方便以后的查6询、删除和修改。浏览模块对于增强图书管理员的宏观把握提供了一个有效的途径和方法,是图书馆里系统的关键所在。C、查询模块:本模块主要是执行按书名和按作者名查找图书信息的功能。众所周知,如果图书管理员想找到某本图书或者是读者希望找到某本图书,应该对其进行查询操作,查询功能是图书管理系统的关键一环,如果没有查询功能,该图书管理系统就是一个欠缺的甚至不完整的系统,查询系统不仅方便了图书管理人员而且方便了读者对于查询图书的有效性和连贯性。D、删除模块:本模块主要执行删除图书信息的功能。删除模块是图书
7、管理系统的重中之重,删除模块的功能是为了当图书馆发生某种意外因素或者是对图书进行了更新,造成了某种图书的丢失或缺少,所以在此基础上要对于图书数据的更新和图书信息的重新整理,删除模块是对于图书管理系统的补充,是图书管理系统的“增、删、改、查”的功能更加的完善,因此上来说,删除模块也是图书管理系统最重要的和最关键的一环。E、修改模块(本人设计模块):本模块主要执行图书信息修改功能。在用户选择该功能后。首先,系统会弹出已存在信息列表并让用户选择所要修改的信息项目。然后,当用户选定要修改的信息后会弹出信息目录,用户需按顺序依次修改信息内容。最好当所有信息项目都修改完成之后,按回车键会在窗口上输出修改后
8、的内容。4. 源程序#include#include#include#include#define MAX 100struct Studentint num;/*登录号*/char name100;/*书名*/char author100;/*作者名*/char fn100;/*分类号*/char place100;/*出版单位*/char day100;/*出版时间*/float money;/*价格*/stuMAX;7main()/*主函数*/void Input();/*输入*/void Display();/*输出*/void Find();/*查找*/void Modify();/*
9、删除*/void Change();/*修改*/int n;for(;)printf(“n“);printf(“n“);printf(“ n“);printf(“ 欢迎来到图书信息管理系统 n“);printf(“ n“);printf(“ n“);printf(“ 主菜单 n“);printf(“ n“);printf(“ 1.图书信息录入 n“); printf(“ n“);printf(“ 2.图书信息浏览 n“);printf(“ n“);8printf(“ 3.图书信息查询 n“); printf(“ n“);printf(“ 4.图书信息删除 n“);printf(“ n“);pr
10、intf(“ 5.图书信息修改 n“);printf(“ n“);printf(“ 6.退出系统 n“); printf(“ n“);printf(“nn“);printf(“请输入选择项(1-6):“);scanf(“%d“,printf(“nnnn“);if(n0break;case 2:Display();break;case 3:Find();break;case 4:Modify();break;case 5:Change();break; case 6:printf(“n“);printf(“ 9n“);printf(“ 谢谢使用! n“);printf(“ 再见! n“);pri
11、ntf(“ n“);printf(“n“);exit(0); else printf(“n“);printf(“ n“);printf(“ 输入错误! n“);printf(“ 请退出! n“);printf(“ n“);printf(“n“);break;void Find()/*查找*/ FILE *fp;10int i;int choose,t;char ans100;doprintf(“1.按书名查找n“);printf(“2.按作者名查找n“);printf(“返回主菜单(其他数字)n“);scanf(“%d“,if(choose=1)printf(“输入所查书名:n“);scanf
12、(“%s“,ans);t=-1;if(choose=1)for(i=0;iMAX;i+) if(strcmp(ans,stui.name)=0) t=i;fp=fopen(“student“,“rb“);for(i=0;fread(i+)printf(“%d %s %s %s %s %s %fn“,stut.num,stut.name,stut.author,stut.fn,stut.place,stut.day,stut.money);if(t=-1) printf(“不存在该信息n“);else if(choose=2)printf(“输入所查作者名:n“);scanf(“%s“,ans);