《图书信息管理系统设计(最新编写-修订版)》由会员分享,可在线阅读,更多相关《图书信息管理系统设计(最新编写-修订版)(30页珍藏版)》请在金锄头文库上搜索。
1、东南大学C语言课程设计报告课程名称: 计算机综合课程设计 学 院: 土木工程学院 设计题目: 图书信息管理系统设计 级 别: A级 学生姓名: 学 号: 同组学生: 学 号: 指导教师: 2012年 09月05日 课程报告任务书题目图书信息管理系统主 要 内 容图书信息包括:登录号,书名,作者名,分类号,出版单位,出版时间,价格等。试设计一图书信息管理系统,使之提供以下功能:1) 系统以菜单方式工作;2) 图书信息录入功能(图书信息用文本文件形式保存);3) 图书信息浏览功能;4) 查询和排序功能: 按书名查找; 按作者名查找;5) 图书信息删除功能;6) 图书信息修改功能。任 务 要 求采用
2、模块化程序设计;鼓励可视化编程;源程序中应有足够的注释;学生可自行增加新功能模块(视情况可另外加分);必须上机调试通过;注重算法运用,优化存储效率与运算效率;需提交源程序(含有注释)及相关文件(数据或数据库文件); (cpp文件、txt或dat文件等)提交设计报告书成绩评定评定 教师摘要:随着当今社会发展,信息化水平逐步提高,对图书管理有了新的要求,因此,编写一个信息管理系统是十分必要的。为了满足图书管理的要求,通过计算机技术给图书管理人员带来便利。使用C语言编写图书管理系统,其中主要运用了结构化设计与链表结构。本系统主要实现图书信息管理的功能,通过此系统可对图书馆库存图书信息进行管理和维护操
3、作。实现了图书馆内管理的一般功能,包括图书信息录入、浏览、排序、删除和修改等功能。所设计的系统以菜单方式工作,为用户提供清晰的使用提示,依据用户的选择来进行各种处理。图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格等。图书信息的录入和显示要求有一定的规范格式,录入的图书信息用文件形式保存,并可以对其进行浏览、查询、删除和修改等基本操作。关键字:图书信息管理 C语言 链表 结构目录1. 设计的目的与要求-42. 分析-43. 总体设计-54. 主要功能算法-55. 完整程序及注释-86. 调试分析-247. 总结-288. 答辩记录-299. 教师意见-29 1. 设计的目的与
4、要求 1.1设计的目的 使用链表和结构等结构数据,编写一C语言程序,实现图书信 息管理的功能,通过此系统可对图书馆图书信息进行管理和维护等操作,给图书管理人员带来便利。 1.2设计的要求 图书信息包括:登录号,书名,作者名,分类号,出版单位,出版时间,价格等。试设计一图书信息管理系统,使之提供以下功能:(1) 系统以菜单方式工作(2)图书信息录入功能(图书信息用文本文件形式保存)(3)图书信息浏览功能(4)查询和排序功能: 按书名查找 按作者名查找(5)图书信息删除功能(6)图书信息修改功能2.分析根据题目要求,应当把图书信息用结构体形式输入,再定义一个全局变量和文件指针进行整个程序的运行,然
5、后把图书信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;在程序中需实现图书信息录入,浏览,查询,排序,删除和修改等功能的操作,所以需要建立相应的函数模块来实现;另外还需提供键盘式选择菜单实现功能,在运行时达到所要目的。3.总体设计 根据题目要求,我们经过分析和讨论后,决定将此系统分为十个功能模块:(1) 菜单选择模块(2) 图书信息录入功能模块(3) 图书信息浏览功能模块(4) 图书信息查询功能模块(5) 图书信息排序功能模块(6) 图书信息删除功能模块(7) 图书信息修改功能模块(8) 图书数据保存功能模块(9) 信息文件打开功能模块(10) 退出系统功能模块4. 主要功能的算
6、法 4.1 录入函数算法 4.2 按书名查找算法(按作者名与此类似) 4.3 删除图书信息算法(修改与此类似)4.4显示函数算法5.完整程序及注释#include /*引用库函数*/ #include # include # include # include # include typedef struct book_info/定义图书信息的结构体变量并声明新的类型名 char AN10; /*登录号*/ char name20; /*书名*/ char author20; /*作者名*/ char clc10; /*分类名*/ char company20; /*出版单位*/ char d
7、ate20; /*出版日期*/ char price10; /*价格*/ struct book_info *next; Booklist,*Pointer;int num=0;/全局变量的定义Pointer Head=NULL;/头指针为空FILE *fp;/指向文件的指针 /*声明函数*/int menu_select();/*主菜单函数*/void Insert(Pointer * Head);/*录入函数*/void Scan(Pointer Head);/*显示函数*/void Search_name(Pointer Head);/*按书名查找函数*/void Search_auth
8、or(Pointer Head);/*按作者名查找函数*/void Listbyname(Pointer *Head);/*按书名排序函数*/void Delete(Pointer * Head);/删除函数void Update(Pointer Head);/修改函数void Save();/用文本文件形式保存函数void Read();/读入文本文件函数void Exit();/退出函数void main()/主函数 system(cls);/*运行前清屏*/ for(;) switch(menu_select() case 1:Insert(& Head); break; case 2:
9、Scan(Head); break; case 3:Search_name(Head); break; case 4:Search_author(Head); break; case 5:Listbyname(&Head); break; case 6:Delete(&Head); break; case 7:Update(Head); break; case 8:Save(); break; case 9:Read(); break; case 0:Exit(); default: putchar(a); menu_select()/主菜单函数 int a; printf(nttt欢迎使用图
10、书信息管理系统nnnnntt * 请按任意键进入系统菜单! * n); getch(); system(cls); printf(tt*MENU*n);/主菜单 printf(tt 1. 录入图书信息n); printf(tt 2. 浏览图书信息n); printf(tt 3. 按书名查询图书信息n); printf(tt 4. 按作者名查询图书信息n); printf(tt 5. 图书信息排序n); printf(tt 6. 删除图书信息n); printf(tt 7. 修改图书信息n); printf(tt 8. 图书数据保存n); printf(tt 9. 图书信息文件打开n); printf(tt 0. 退出n); printf(tt*n); do printf(nt请选择您所需要的服务:); scanf(%d,&a); while (a9); return a;void Insert(Pointer * Head) /录入图书信息函数char AN10 ;char c;Pointer p,q,r;printf(ntt* 请输入图书信息 *