ImageVerifierCode 换一换
格式:DOC , 页数:34 ,大小:369.54KB ,
资源ID:5610998      下载积分:12 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/5610998.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(图书管理系统-课程设计论文报告.doc)为本站上传会员【a199****6536】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

图书管理系统-课程设计论文报告.doc

1、 课程设计报告 题 目:图书信息管理系统 目 录 一、设计任务书…………………………………………………………3 二、本组课题及本人任务………………………………………………3 三、程序功能简介………………………………………………………3 四、主体内容……………………………………………………………3 1.设计分析………………………………………………………………………3 2.程序结构………………………………………………………………………4 3.各模块的功能及程序说明……………………………

2、………………………5 4. 源程序………………………………………………………………………5 5.操作方法…………………………………………………………………….16 6.试验结果……………………………………………………………………16 7.设计体会……………………………………………………………………. 五、附录………………………………………………………………20 1.流程图………………………………………………………………………20 2.过程列表……………………………………………………………………24 一、设计任务书 1.目的

3、 1)复习、巩固C语言的基础知识,进一步加深对C语言的理解和掌握。 2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。 3)培养学生在项目开发中团队合作精神、创新意识及能力。 2.要求: 1、对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理。 2、系统设计要实用,编程简练,可用,功能全面。 3、说明书、流程图要清楚。 4、记录设计情况(备查,也为编写设计说明书作好准备)。 5、要求采用模块化程序

4、设计方法,及锯齿型书写格式,要求上机调试通过和按设计报告格式。 6、设计上交内容:设计报告一份(按格式书写);源程序一份,能编译成可执行文件并能正常运行。 二、本组课题及本人任务 课题:图书信息管理系统设计 图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计一图书信息管理系统,使之能提供以下功能: 1.系统以菜单方式工作。 2.图书信息录入功能(图书信息用文件保存)--输入。 3.图书信息浏览功能--输出。 4.查询和排序功能:(至少一种查询方式)--算法。 a. 按书名查。 b.按作者名查询。 本人任务:负责设计和编写图书信息管理系统的修改图

5、书信息部分。 三、程序功能简介 本系统是以visual C++ 6.0 环境下用C语言开发的一个图书管理系统。本系统具有图书信息录入、浏览、删除、修改、查找(包括按书名、作者查找)功能。其中图书信息包括登录号、书名、作者名、分类号、出版单位、出版时间、价格,并且对信息以文件形式储存。另外本系统具备实用性的同时代码逻辑谨慎清晰易懂,且界面美观。 四、主体内容 1.设计分析 本系统共分为一个主页面模块(主函数部分),五个功能模块(功能函数)分别为图书信息录入、图书信息浏览、图书信息查询、图书信息删除、图书信息修改。设计时应该先写好主函数、定义好全局变量和功能函数,再对五个功能函数进

6、行设计。在每个功能函数和主函数应中加入控制条件使用户可以随时退出系统,并在用户输入指令错误的时候给予提醒和退出选项。小组中的五个人分别承担一个功能模块进行设计。并在每个人设计完成后通过主函数进行链接调试正确后方为完成。 2.程序结构(流程图) 系统运行 选择功能 1.信息录入 键入信息 2.信息浏览 返回主菜单 返回主菜单 3.信息查询 按书名查找 按作者查找 返回主菜单 输入书名 输入作者 信息存在? 是 否 输出信息 返回主菜单 4.信息删除 输入删出信息代号 输出删除后的信息 返回主菜单 5.信息修改 输入修改信息代号 修改信息存在?

7、 是 信息修改 否 返回主菜单 输出修改后的信息 6.退出系统 3.各模块的功能及程序说明 A、录入模块:本模块主要执行信息录入功能。 信息录入是为了把新来的图书进行进库操作,也就是将新到来的图书的信息放入数据库当中,方便图书管理员的管理和操作,帮助图书管理员更好的管理图书的进库出库的情况,录入模块主要是方便了图书管理员对于图书的更好的管理,有助于挺高图书管理员的工作效率。 B、浏览模块:本模块主要是执行把已有信息输出浏览功能。 该模块的主要作用是为了对于所有图书信息的浏览,全方位的操作和宏观上的管理,对于图书馆已有的图书可以有一个宏观上的认识,是图书管理员做到了心

8、中有数,在总体上把握图书的所有信息,方便以后的查询、删除和修改。浏览模块对于增强图书管理员的宏观把握提供了一个有效的途径和方法,是图书馆里系统的关键所在。 C、查询模块:本模块主要是执行按书名和按作者名查找图书信息的功能。众所周知,如果图书管理员想找到某本图书或者是读者希望找到某本图书,应该对其进行查询操作,查询功能是图书管理系统的关键一环,如果没有查询功能,该图书管理系统就是一个欠缺的甚至不完整的系统,查询系统不仅方便了图书管理人员而且方便了读者对于查询图书的有效性和连贯性。 D、删除模块:本模块主要执行删除图书信息的功能。 删除模块是图书管理系统的重中之重,删除模块的功能是为了当图书

9、馆发生某种意外因素或者是对图书进行了更新,造成了某种图书的丢失或缺少,所以在此基础上要对于图书数据的更新和图书信息的重新整理,删除模块是对于图书管理系统的补充,是图书管理系统的“增、删、改、查”的功能更加的完善,因此上来说,删除模块也是图书管理系统最重要的和最关键的一环。 E、修改模块(本人设计模块):本模块主要执行图书信息修改功能。在用户选择该功能后。首先,系统会弹出已存在信息列表并让用户选择所要修改的信息项目。然后,当用户选定要修改的信息后会弹出信息目录,用户需按顺序依次修改信息内容。最好当所有信息项目都修改完成之后,按回车键会在窗口上输出修改后的内容。 4. 源程序 #includ

10、e #include #include #include #define MAX 100 struct Student { int num;/*登录号*/ char name[100];/*书名*/ char author[100];/*作者名*/ char fn[100];/*分类号*/ char place[100];/*出版单位*/ char day[100];/*出版时间*/ float money;/*价格*/ }stu[MAX]; main()/*主函数*

11、/ { void Input();/*输入*/ void Display();/*输出*/ void Find();/*查找*/ void Modify();/*删除*/ void Change();/*修改*/ int n; for(;;) { printf("\n"); printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); printf("※ ※\n");

12、 printf("※ 欢迎来到图书信息管理系统 ※\n"); printf("※ ※\n"); printf("※ ※\n"); printf("※ 主菜单

13、 ※\n"); printf("※ ※\n"); printf("※ ▲1.图书信息录入 ▲ ※\n"); printf("※ ※\n"); printf("※ ▲2.图书信息浏览 ▲

14、 ※\n"); printf("※ ※\n"); printf("※ ▲3.图书信息查询 ▲ ※\n"); printf("※ ※\n"); printf("※ ▲4.图书信息删除 ▲

15、 ※\n"); printf("※ ※\n"); printf("※ ▲5.图书信息修改 ▲ ※\n"); printf("※ ※\n"); printf("※ ▲6.退出系统 ▲

16、 ※\n"); printf("※ ※\n"); printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n\n"); printf("请输入选择项(1-6):"); scanf("%d",&n); printf("\n\n\n\n"); if(n>0&&n<7) { switch(n) {

17、 case 1:Input();break; case 2:Display();break; case 3:Find();break; case 4:Modify();break; case 5:Change();break; case 6:printf("※※※※※※※※※※※※※※※※※※※※※※※※\n"); printf("※

18、 ※\n"); printf("※ 谢谢使用! ※\n"); printf("※ 再见! ※\n"); printf("※ ※\n"); printf("※※※※※※

19、※※※※※※※※※※※※※※※※※※\n"); exit(0); } } else { printf("※※※※※※※※※※※※※※※※※※※※※※※※\n"); printf("※ ※\n"); printf("※ 输入错误! ※\n"); printf("※

20、 请退出! ※\n"); printf("※ ※\n"); printf("※※※※※※※※※※※※※※※※※※※※※※※※\n"); break; } } } void Find()/*查找*/ { FILE *fp; int i; int choose,t; char ans[100]; do { print

21、f("1.按书名查找\n"); printf("2.按作者名查找\n"); printf("返回主菜单(其他数字)\n"); scanf("%d",&choose); if(choose==1) { printf("输入所查书名:\n"); scanf("%s",ans); t=-1; if(choose==1) { for(i=0;i

22、student","rb"); for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++) printf("%d %s %s %s %s %s %f\n",stu[t].num,stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money); } } if(t==-1) printf("不存在该信息\n"); } else if(choose==2) { printf("输入所查

23、作者名:\n"); scanf("%s",ans); t=-1; if(choose==2) { for(i=0;i

24、stu[t].name,stu[t].author,stu[t].fn,stu[t].place,stu[t].day,stu[t].money); } } if(t==-1) printf("不存在该信息\n"); } else return; }while(1); } void Display()/*输出*/ { FILE *fp; int i; fp=fopen("student","rb"); printf("※※※※※※※※※※※※※※※※※※※※

25、※※※※※※※※※※\n"); printf(" 图书列表\n"); printf("-----------------------------------------------------------\n"); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); for(i=0;fread(&stu[

26、i],sizeof(struct Student),1,fp)==1;i++) { printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money); } fclose(fp); } void Input()/*输入*/ { FILE *fp; int n; fp=fopen("student","ab+"); for(n=0;n

27、rintf("n=%d 输入序号n(当输入n=-1时,返回),n=",n++); scanf("%d",&n); if(n==-1) { fclose(fp); return; } else { printf("请输入登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,stu[n].fn,stu[n].place,stu[n].day,&stu[n].money);

28、 fwrite(&stu[n],sizeof(struct Student),1,fp); } } fclose(fp); } void Modify()/*删除*/ { FILE *fp; int i,flag,n,s,j; fp=fopen("student","rb+"); rewind(fp); printf(" 图书列表\n"); printf("---------------------------------------------

29、\n"); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++) { printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].a

30、uthor,stu[i].fn,stu[i].place,stu[i].day,stu[i].money); printf("\n"); } n=i; printf("输入待删除图书号:\n"); scanf("%d",&s); for(i=0,flag=1;flag&&i

31、 strcpy(stu[j].author,stu[j+1].author); strcpy(stu[j].fn,stu[j+1].fn); strcpy(stu[j].place,stu[j+1].place); strcpy(stu[j].day,stu[j+1].day); stu[j].money=stu[j+1].money; } flag=0; } } if(!flag) n=n-1; else

32、 printf("没有此号\n"); fp=fopen("student","wb"); for(i=0;i

33、"登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); for(i=0;i

34、].place,stu[i].day,stu[i].money); printf("\n"); } fclose(fp); } void Change()/*修改*/ { FILE *fp; int i,num,n; int flag=0; fp=fopen("student","rb"); printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); printf(" 图书列表

35、\n"); printf("-----------------------------------------------------------\n"); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++) { printf("

36、6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money); } fclose(fp); printf("请输入要修改的图书号:"); scanf("%d",&num); for(i=0;i<=MAX;i++) if(stu[i].num==num) { printf(" 图书列表\n");

37、printf("-----------------------------------------------------------\n"); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu[i].name,stu[i].au

38、thor,stu[i].fn,stu[i].place,stu[i].day,stu[i].money); printf("-----------------------------------------------------------\n\n"); n=i; flag=1; break; } if(flag==0) { printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); printf(" 输入

39、错误!\n"); printf(" 请返回!\n"); printf("※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"); return; } printf("\n\n\n"); fp=fopen("student","rb+"); fseek(fp,n*sizeof(struct Student),0); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n");

40、 scanf("%d%s%s%s%s%s%f",&stu[n].num,stu[n].name,stu[n].author,stu[n].fn,stu[n].place,stu[n].day,&stu[n].money); fwrite(&stu[i],sizeof(struct Student),1,fp); fclose(fp); fp=fopen("student","rb"); printf(" 图书列表\n"); printf("------------------------------

41、\n"); printf("登录号 书名 作者名 分类号 出版单位 出版时间 价格\n"); printf("-----------------------------------------------------------\n"); for(i=0;fread(&stu[i],sizeof(struct Student),1,fp)==1;i++) { printf("%6d %8s %8s %8s %8s %8s %8.2f\n",stu[i].num,stu

42、[i].name,stu[i].author,stu[i].fn,stu[i].place,stu[i].day,stu[i].money);; } printf("-----------------------------------------------------------\n\n"); fclose(fp); } 5.操作方法(流程) 第一步:双击打包好的.exe程序,打开程序。 第二步:根据窗口提示内容作出选择。 第三步:根据弹出的二级菜单作出选择。 第四步:根据所选内容进行相应的操作。 第五步:操作完毕,根据提示返回主菜单会直接退出该系

43、统。 6.试验结果 A、图书信息录入: 数据输入: 数据输出: B、图书信息浏览 输入数据: 数据输出: C、图书信息查询 输入数据: 输出数据: D、图书信息删除: 输入数据: 输出数据: E、图书信息修改 输入数据: 输出数据: F、系统退出 输入数据: 数据输出: 7.设计体会。 一学期的C语言课程学习,已经接近尾声。在这学期的学习中,虽然没有达到对C语言很了解,但是在今后的生活中,不断积累,不断学习这门课程。因为都知道这门课程的重要性以及参加工作后的必要性。学好C语言,对今后找工作各方面都有着

44、很大的帮助,所以我们有机会学习这门课程,就必须学好。 仔细想想学习C语言 的过程中,烦恼多多。C 语言程序设计到底是有什么用。这门课程是用来做什么的。这就是我最初的疑惑。后来慢慢的接触多了,渐渐的有了点认识。其实我十分不喜欢这门课程,真的。当上机操作程序,经过编译,调试和运行后,出现界面,当时觉得很好奇,想真正的学好这门课程。通过半个学期的学习,我了解了基本知识。知道编程的基本格式,学会了一些基本语句,在程序中一些符号所代表的含义以及在程序中所要表示的含义。 编写程序时,要注意的地方很多,一个小小的符号错误就会导致程序编译失败,很纠结的事情。所以编程时要十分仔细小心。 学了各种语句,编写

45、了几个程序,这只不过是C语言中基本再基本的东西了,但还是挺模糊的,对学习这门课程讲究的是过程。学习编译基本程序后,才可以编译更加难的程序。慢慢来吧,有些事情做了不一定成功,但是不去做肯定不会成功。我相信只要努力学习。总有一天我会学好这门课程的。      七、附录 1.流程图 主页面: 信息录入: 信息浏览: 信息查询: 信息删除: 信息修改: 系统退出: 2.主要过程列表 A、程序开头定义: #include:#include是编译预处理指令,就是在编译前将stdio.h这个文件里的函数都添加到你写的cpp文件中

46、 #include:在编译前C语言里面关于字符数组的函数定义的头文件,就是在编译前将stdio.h这个文件里的函数都添加到你写的cpp文件中。 #include:在编译前将stdlib.h这个文件里的函数都添加到你写的cpp文件中。 #include:在编译前将conio.h这个文件里的函数都添加到你写的cpp文件中。 #define MAX 100:#define 就是在编译器编译之前对代码进行字符串替换,即是把MAX换成100. B、struct Student: 结构体,定义的结构体是整个程序的共用体,即是该结构

47、体可在每个模块中不从新定义就使用。 C、main()主函数模块主要变量、函数: void Input():自定义输入函数。 void Display():自定义输出函数。 void Find():自定义查找函数。 void Modify():自定义删除函数。 void Change():自定义修改函数。 for():循环函数。 switch():选择函数,判断用户输入的数字进行功能选择。 exit():退出循环函数。 D、void Input()输入模块主要变量、函数: FILE *fp:声明fp是指针,用来指向FILE类型的对象。 fopen(): f

48、open函数用来打开一个文件。 printf():输出函数,以程序员规定数据类型把数据输出到窗口上。 scanf():输入函数,以程序员规定的的数据类型输入数据。 if()…else:条件判断函数。 fclose():关闭文件的函数,功能为关闭打开的文件,以防止数据丢失。 fwrite():向文件写入一个数据块。 sizeof():以字节形式给出了其操作数的存储大小。 for():循环函数。 E、void Display()输出函数主要变量、函数: FILE *fp:声明fp是指针,用来指向FILE类型的对象。 fread():在文件中读出一个数据块赋值给某一个变量

49、 fopen(): fopen函数用来打开一个文件。 fclose():关闭文件的函数,功能为关闭打开的文件,以防止数据丢失。 printf():输出函数,以程序员规定数据类型把数据输出到窗口上。 scanf():输入函数,以程序员规定的的数据类型输入数据。 if()…else:条件判断函数。 for():循环函数。 F、void Find()查找函数主要的变量和函数: FILE *fp:声明fp是指针,用来指向FILE类型的对象。 char ans[100]:一个定义为字符型的有100个元素的数组。 strcmp(,):比较函数。比较逗号两边的值是否一

50、样,如果一样返回值为0,否则为1 。 do….while:循环函数,当函数返回值为1时退出循环,否则继续循环。 fopen(): fopen函数用来打开一个文件。 fclose():关闭文件的函数,功能为关闭打开的文件,以防止数据丢失。 if()…else:条件判断函数。 for():循环函数。 printf():输出函数,以程序员规定数据类型把数据输出到窗口上。 scanf():输入函数,以程序员规定的的数据类型输入数据。 G、void Modify()删除函数主要变量和函数: fopen(): fopen函数用来打开一个文件。 fclose():关闭文件的函数,功能

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服