图书信息管理系统设计_纯c语言课程设计(26页).doc
《图书信息管理系统设计_纯c语言课程设计(26页).doc》由会员分享,可在线阅读,更多相关《图书信息管理系统设计_纯c语言课程设计(26页).doc(26页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-图书信息管理系统设计_纯c语言课程设计-第 24 页C语言课程设计报告题 目:图书信息管理系统设计河南理工大学计算机学院目 录第一章 题目与要求1.1 问题提出.11.2 本系统涉及的知识点.11.3 功能要求.1第二章 功能设计2.1 算法设计.12.2 部分模块流程图.4第三章 程序代码设计.5第四章 C程序设计总结.16第五章 结束语.16参考文献.17附录.161、题目与要求1.1 问题提出本人计划编写一个图书信息管理系统,主要用来管理图书管图书基本信息。1.2 本系统涉及的知识点结构、数组、循环、函数、分支、文件1.3 功能要求1、管理员进行登录号验证。2、进行图书信息录入,每本书
2、的信息包括:书名、作者名、分类号、出版单位、出版时间、价格等。3、进行图书查询,包括按书名查询和按作者查询。4、进行图书删除,删除一些丢失,毁坏的图书。5、进行图书修改,修改书籍的书名、作者名、分类号、出版单位、出版时间、价格。6、进行图书排序,按书名进行排序。7、进行图书信息保存。2 功能设计请输入登录号2.1 算法设计1、利用if函数进行输入登录号进入系统2、进入主菜单登录后进入主菜单输入编号(16)通过switch函数进行操作请输入登录号1图书录入3图书浏览2图书查询4图书删除5图书修改6图书排序3、图书录入选择1后用void putin()函数录入信息作者名1图书录入分类号书名出版单位
3、出版时间图书价格1 继续录入0 退出4、图书查询选择2后用void search()查询图书;图书查询按书名查询按作者查询5、图书浏览选择3后用void lookup()浏览图书图书浏览书名分类号作者出版单位出版时间价格6、图书删除选择4后用void del()函数删除图书信息图书删除删除图书全部信息图书修改7、图书修改选择5后用void update()函数相修改图书信息书名分类号作者出版单位出版时间价格8、图书排序选择6后用void rank()函数进行图书排序图书排序按图书名进行排序9、图书信息的保存在每次操作后都用void save()函数进行保存操作后的图书信息信息保存save()函
4、数2.2 部分模块流程图开始输入登录号输入数字putinswitchlookupsearchupdate退出rank进入系统If(? =0)YNdel1234560printfscanfprintfscanfif1save0by作者by书名12进入系统printfforYN进入系统saveprintfprintfscanf进入系统save 进入系统for处理进入系统终止NY3 程序代码设计1、文件打开:利用文件函数进行打开1)函数原型FILE *fp;if(fp=fopen(library.doc,r)=NULL)printf(n不能打开图书管理系统n);fp=fopen(library.do
5、c,w+);printf(n进入图书管理系统n);fclose(fp);fread(books,sizeof(books0),1,fp);fclose(fp);2)功能:打开信息文件2、登录模块,菜单模块:利用if判断语句,比较函数strcmp,当输入号码与已存号码复符合是执行下一步操作,进入图书管理系统,然后输入相应数字,利用switch函数判断执行相应的函数进行操作1)函数原型:void main() int key=0;for(key=0;key100;key+)bookskey.id=0;key=0;system(color A);FILE *fp;if(fp=fopen(librar
6、y.doc,r)=NULL)printf(n不能打开图书管理系统n);fp=fopen(library.doc,w+);printf(n进入图书管理系统n);fclose(fp);fread(books,sizeof(books0),1,fp);fclose(fp);while(1)if(key=0)system(cls);printf(nttt请输入管理员登录号(初始登录号123456):nntttpassword:);elsesystem(cls);printf(nttt密码错误请重新输入:(初始登录号123456):nntttpassword:);scanf(%s,password);
7、if(strcmp(password,123456)=0)int a;dosystem(cls);printf(nnnntttt图书信息管理系统ttttn);printf(tt _n);printf(ttt1 图书信息录入n);printf(tt _n);printf(ttt2 图书信息浏览n);printf(tt _n);printf(ttt3 图书信息查询n);printf(tt _ n);printf(ttt4 图书信息删除n);printf(tt _n);printf(ttt5 图书信息修改n);printf(tt _n);printf(ttt6 图书信息排序n);printf(tt
8、_n);printf(ttt0 退出图书信息系统n);printf(tt _n);printf(tt 请进行操作: );fflush(stdin);scanf(%d,&a);switch(a)case 1:book_add();break;case 2:book_lookup();break;case 3:book_search();break;case 4:book_del();break;case 5:book_update();break;case 6:rank();break;case 0:printf(nn退出nn);break;default:printf(n序号不对n);whil
9、e(a!=0);save();elsekey=1;2)实现功能:登录管理系统,进入主菜单进行菜单选择。3)运行结果:3、菜单执行模块(1)图书录入模块:利用while循环进行图书各项信息的录入,一本书信息全部录入完后,再利用switch函数进行继续录入,和返回主菜单操作,利用save函数保存图书信息1)函数原型:void book_add(void) int x=1;system(cls); fflush(stdin);page_title(录入);while(x) printf(ttt分类号: ); scanf(%d,&booksn.id); printf(ttt书 名: ); scanf(
10、%s,&booksn.name); printf(ttt作 者: ); scanf(%s,&booksn.author); printf(ttt出版单位:);scanf(%s,&booksn.publish);printf(ttt出版时间:);scanf(%s,&booksn.time);printf(ttt价 格: );scanf(%f,&booksn.price);n+;save();printf(nttt 1.继续;0,退出录入);fflush(stdin);scanf(%d,&x);if (x!=1)x=0;break;2)实现功能:进行图书信息录入,并保存录入的图书信息。3)运行结果
11、(2)图书信息浏览:利用for循环对图书进行全部信息输出,使之显示在屏幕上1)函数原型:void book_lookup(void) /*浏览函数*/system(cls); if(books0.id=0)printf(ttt无书籍信息!);elsefor(i=0;booksi.id!=0;i+)printf(分类号:%dt,booksi.id);printf(书名:%st,booksi.name); printf(作者:%st,booksi.author); printf(出版单位:%st,booksi.publish); printf(出版时间:%st,booksi.time);print
12、f(价格:%4.2fn,booksi.price); fflush(stdin);getchar(); 2)实现功能:使所有图书信息全部显示在屏幕上,便于管理人员管理。3)运行结果(3)图书信息查询:利用switch函数进行选择查询方式,按书名查询和按作者查询,然后设计两种方式的函数代码,嵌套在查询主函数内1)函数原型 :void search_by_name(void) /*按书名查询*/char s220; int flag=1;system(cls); printf(nttt请输入要查询的书名: );fflush(stdin);scanf(%s,&s2);for(i=0;booksi.i
13、d!=0;i+ )if(strcmp(s2,booksi.name)=0)flag=0;printf(分类号:%dt,booksi.id);printf(书名:%st,booksi.name); printf(作者:%st,booksi.author); printf(出版单位:%st,booksi.publish); printf(出版时间:%st,booksi.time);printf(价格:%4.2fn,booksi.price); if (flag)printf(查无此书!);fflush(stdin);getchar();void search_by_author(void) /*按
14、作者名查询*/char s320;int flag=1;system(cls); printf(ttt请输入要查询的书的作者: );fflush(stdin);scanf(%s,&s3);for(i=0;in;i+ )if(strcmp(s3,booksi.author)=0)flag=0;printf(分类号:%dt,booksi.id);printf(书名:%st,booksi.name); printf(作者:%st,booksi.author); printf(出版单位:%st,booksi.publish); printf(出版时间:%st,booksi.time);printf(价
15、格:%4.2fn,booksi.price); if (flag)printf(无此信息!);fflush(stdin);getchar();void book_search(void) /*查询函数*/int a;system(cls); /*进行清屏*/ printf(tt*n);printf(ttt开始查询n); printf(ttt1-按书名查询n); printf(ttt2-按作者查询n); printf(ttt0-退出n); printf(tt*n) ; printf(ttt请选择你想要的查询方式:);fflush(stdin); scanf(%d,&a); switch(a)ca
16、se 1:search_by_name();break; case 2:search_by_author();break;case 0:return;2)实现功能:可通过按书名查询和按作者进行查询。(4)图书信息删除:利用for循环对所要删除的图书下一本图书是之各项序列改为其前一项的序号,主次更改,然后用save循环进行保存1)函数原型:void book_del(void) long int m; system(cls); page_title(删除); printf(ttt输入删除书的分类号);scanf(%d,&m);for(i=0;im;i+)if(m=booksi.id)for(j=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图书 信息管理 系统 设计 语言 课程设计 26
限制150内