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

加入VIP,免费下载
 

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

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

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(图书信息管理系统设计.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

图书信息管理系统设计.docx

1、图书信息管理系统设计课程名称 高级语言程序课程设计题目名称学生学院专业班级图书信息管理系统设计 自动化学院自动化 06 级( )班学号3106000861学生姓名指导教师蓝源炽杨其宇2007 年 6 月 18 日广东工业大学课程设计任务书题目名称学生学院专业班级图书信息管理系统设计自动化学院自动化 06 级( )班姓学名号蓝源炽3106000861一、课程设计的内容C 题目二:图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。试设计 一图书信息管理系统,使之能提供以下功能:系统以菜单方式工作 图书信息录入功能(图书信息用文件保存)输入 图书信息浏览功能

2、输出 查询和排序功能:(至少一种查询方式)算法 按书名查询 按作者名查询图书信息的删除与修改(可选项) 二、课程设计的要求与数据1、进一步掌握和利用 C 语言进行程设计的能力;2、进一步理解和运用结构化程序设计的思想和方法;3、初步掌握开发一个小型实用系统的基本方法;4、学会调试一个较长程序的基本方法;5、学会利用流程图或 N-S 图表示算法;6、掌握书写程序设计开发文档的能力。三、课程设计应完成的工作1、编写完成相应题目的程序;2、编写课程设计报告,课程设计报告的内容应包括以下 6 个部分:1) 需求分析:包括设计题目、设计要求以及系统功能需求分析;2) 总体设计:包括系统总体设计框架和系统

3、功能模块图;3) 详细设计:包括主要功能模块的算法设计思路以及对应的工作流程图;4)调试分析过程描述:包括测试数据、测试输出结果,以及对程序调试过程中存在问题的思考(列出主要问题的出错现象、出错原因、解决方法及效果等,适 当的包含结果截图);5)总结:课程设计完成了哪些功能,有没有什么扩展功能?还有哪些地方需要改进?课程设计过程中的学习体会与收获、对本次课程设计的认识以及自己的建 议等内容;6) 附录:主要源程序代码,含必要的注释。3、答辩:在实验室建立程序运行的环境,并在指导教师的监督下,独立解 决问题、运行程序和回答教师提出的问题。四、课程设计进程安排五、应收集的资料及主要参考文献1 谭浩

4、强.C程序设计(第三版)M,北京:清华大学出版社,2005.92 谭浩强. C程序设计题解与上机指导(第三版)M,北京:清华大学出版社, 2005.7目录1 设计目的与要求页码 2 总体设计页码 3 详细设计页码3.1 功能模块设计页码 3.1.1 XX 功能模块(可选) 页码 3.1.1 YY 功能模块(可选) 页码 3.1.1 ZZ 功能模块(可选)页码3.2 数据结构设计页码 4 调试分析 页码 5 总结页码 6 附录页码 6 答辩记录(正文处请留出适当空白) 页码 7 指导教师意见(正文处请留出十行空白) 页码1 目的与要求题目:图书信息管理系统设计图书信息包括:登录号、书名、作者名、

5、分类号、出版单位、出版时间、价格等。试设计 一图书信息管理系统,使之能提供以下功能:系统以菜单方式工作 图书信息录入功能(图书信息用文件保存)输入 图书信息浏览功能输出 查询和排序功能:(至少一种查询方式)算法 按书名查询 按作者名查询图书信息的删除与修改(可选项) 需求说明:图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等并且要求 职工号不重复;录入的图书信息要求用文件形式保存,并可以对其进行浏览、查询、修改、删除等基本操 作;对图书信息查询应能够分别按书名及作者名两种方式进行,要求能返回所有符合条件的职 工的信息;对职工信息的修改应逐个地进行,一个职工信息的更改不应影

6、响其他的职工记录; 系统应以菜单方式工作,应为用户提供清晰的使用提示,依据用户的选择来进行各种处理。2 总体设计按登陆序菜单选择模块完成用户命令的接收,此模块也是图书信息管理系统的入口,用户所要进行 的各种操作均需在此模块中进行选择并进而调用其他模块实现相应的功能;输入模块完成图书信息的输入功能,输入信息包括登陆号、书名、作者名、分类号、出版 社、出版日期、价钱等;输出模块完成已录入图书信息的显示;查询模块完图书信息的查询,查询时对应有按书名查询和按作者名查询两种方式; 修改模块完成图书信息的修改功能;删除模块完成图书信息的删除功能;按登陆号排序模块完成对信息的排序;文件保存模块完成文件的保存

7、。3 详细设计(内容可以适当调整,清晰的有条理的把你的设计思路表达出来)3.1 功能模块设计3.1.1 XX 功能模块(可选)3.1.2 YY 功能模块(可选)3.1.3 ZZ 功能模块(可选)3.2 数据结构设计(可选) 菜单选择模块:(给出信息提示;绘制菜单(包含输入、显示、查询、修改、删除、退出、排序); 提示菜单选择并读入到变量;根据读入变量的值调用不同的模块函数;)信息输入模块:( 打开职工信息文件; 发出输入提示信息;输入职工信息; 提示是否继续输入; 读入到变量;根据读入变量的值进入菜单或输入函数模块;) 信息输出模块:(输出所有图书的所有信息。)信息查询模块:( 调用 swit

8、ch 函数;给出信息提示;提示菜单选择并读入到变量;根据读入变量的值进入不同的 case;Case 1给出信息提示;提示菜单选择并读入到变量;Strcmp 函数将保存的信息与变量比较,如有相同,就输出该图书的所有信息;否则,提示 出错。Case 2给出信息提示;提示菜单选择并读入到变量;Strcmp 函数将保存的信息与变量比较,如有相同,就输出该图书的所有信息;否则,提示 出错。)5 信息修改模块:(给出信息提示;提示菜单选择并读入到变量;Strcmp 函数将保存的信息与变量比较,如有相同,就输出该图书的所有信息,并提示输入 新的图书信息;否则,提示出错。)6信息删除模块:(给出信息提示;提示

9、菜单选择并读入到变量;Strcmp 函数将保存的信息与变量比较,如有相同,就输出该图书的所有信息,并删除该图 书的图书信息;否则,提示出错。)7排序模块(看能不能打开程序;如能,则用冒泡法排序;输出排序后的所有信息)8 文件保存模块(看文件能不能读;否则提示出错。看文件的长度符不符合要求;否则提示出错。保存文件)4 调试分析一实现程序:首先进入如下界面:1:input2:output3:save4:search5:xiugai6:del7:sort0:exit;二输入“1”,后按“num 登陆号”, book_name 书名,writer 作者名,sort。name 分类号, 出版社 pubc

10、onpany,出版时间 pubtime,价钱 price 顺序输入两组数据:“1,we,er,1,as,1234,34”“2,ew,re,2,sa,4321,43”3输入“3”保存。4输入“2”输出数据:“1,we,er,1,as,1234,34”“2,ew,re,2,sa,4321,43”五输入“4”查找,“请选择按书名或作者名查询:1:书名。2作者名 “输入“1“或”2“分别查询。输入“1“和“we“,输出“1,we,er,1,as,1234,34”;输入 2 和“re“,输出“2,ew,re,2,sa,4321,43”符合要求六 输入”5”或“6“进行修改或删除。输入修改的书名“we”显

11、示“1,we,er,1,as,1234,34”及“please input xiugais the informations”,后输入新信息,再输入“3”保存。七输入 7 按登陆号排序。运行正常,输入 0 退出。调试过程中,问题很多比如说编写排序和文件保存函数时,对 fopen 函数认识不够,一开始是用 if(fp=fopen(f:c,rb)=NULL)这个语句,调试的时候一直都最少都是一个错误:后来怎么弄都纠正不了。后来慢慢的查书,逐行检查。才终于改正为 if(fp=fopen(file.c,wb)=NULL)。程序终于可以运行。通过这我懂得:写程序时一定要严谨,尽可能写下的每一行不出错。否

12、则调试时会很麻烦。5 总 结本次课程设计是我这学期编写的第一个大程序,从花费的过去三天总计十七个小时中, 我得到如下收获:1 用好 C 语言某种程度上关键就是用好所需的各种函数的调用,c 语言的确是一种结构化 的语言。2 学会和加深了对于结构体和共用体的理解,以及在程序中怎样实现文件函数的输入输 出和文件的定位。345只有上机实践才能检验自己写的程序,看是看不出来的。深深懂得调试、书写规范和检错的重要性。连续三天每天六小时端坐在电脑前动都不能动,绞尽脑汁艰苦奋斗的经历告诉我:程 序员这种工作,真的不是人干的.7.附录#include #include #include #define N 10

13、struct libraryint num;char book_name30;char writer30;char sort_num3;char pub_company30;char pub_time30;char prise30;typedef struct library LIB;LIB libN;FILE *fp;int all=0;int menu(void);void input(void);void output(void);void save(void);void del(void);void search(void);void xiugai(void);void sort(vo

14、id);main()for(;)switch(menu()case 1:input();break;case 2:output();break;case 3:save();break;case 4:search();break;case 5:xiugai();break;case 6:del();break;case 7:sort();break;case 0:exit(1);break;int menu(void) /*显示主菜单*/ char m3;int n;printf(tt1:inputn);printf(tt2:outputn);printf(tt3:saven);printf(t

15、t4:searchn);printf(tt5:xiugain);printf(tt6:deln);printf(tt7:sortn);printf(tt0:exitn);printf(ttplease choose a operation(0-6):n);scanf(%s,m);n=atoi(m);return(n);void input(void) /*显示输入函数*/int i;char m3;for(i=all;iN;i+)all+;printf(please input informations:n);printf(ttnum:n);scanf(%d,&libi.num);printf

16、(ttbook_name:n);scanf(%s,libi.book_name);printf(ttwriter:n);scanf(%s,libi.writer);printf(ttsort_num:n);scanf(%s,libi.sort_num);printf(ttpub_company:n);scanf(%s,libi.pub_company);printf(ttpub_time:n);scanf(%s,libi.pub_time);printf(ttprise:n);scanf(%s,libi.prise);a: printf(ttyes/no continue input?n);p

17、rintf(tt1:yesn);printf(tt2:non);scanf(%s,m);if(atoi(m)=1)continue;else if(atoi(m)=2)return;elseprintf(ttinput error!n);goto a;void output(void) /*显示输出函数*/int i;for(i=0;iall;i+)printf(tt%dn,libi.num);printf(%stt%stt%sn,libi.book_name,libi.writer,libi.sort_num);printf(%stt%stt%sn,libi.pub_company,libi

18、.pub_time,libi.prise);void sort(void) /*从登陆号从大到小排序的函数*/int b,i;struct library flash;if(fp=fopen(file.c,wb)=NULL) printf(cannot open filen);return;for(b=0;bN;b+)for(i=b+1;iN;i+)if(strcmp(libb.sort_num,libi.sort_num)0)flash=libb;libb=libi;libi=flash;printf(the down object is:n);printf( num bookname wr

19、iter sort_num pub_company pub_time prisen);for(b=0;bN;b+)if(libb.sort_num0!=0)printf(%d %s %s %s %s %s %sn,libb.num,libb.book_name,libb.writer,libb.sort_num,libb.pub_company,libb.pub_time,libb.prise);else break;void save(void) /*文件保存*/int i;if(fp=fopen(file.c,wb)=NULL)printf(can not open the file);e

20、xit(1);for(i=0;iall;i+)if(fwrite(&libi,sizeof(LIB),1,fp)!=1)printf(can not write!);exit(1);fclose(fp);void search(void) /*书名和作者名查找*/int i,flag;char m3;char name30;printf(tt 请选择按书名或作者名查询:n);printf(tt1:书名n);printf(tt2:作者名n);scanf(%s,m);i=atoi(m);switch(i)case 1:printf(ttplease input the book_name:n);s

21、canf(%s,name);flag=0;for(i=0;iN;i+)if(strcmp(name,libi.book_name)=0)printf(tt%dn,libi.num);printf(%stt%stt%sn,libi.book_name,libi.writer,libi.sort_num);printf(%stt%stt%sn,libi.pub_company,libi.pub_time,libi.prise);flag=1;break;if(flag=0)printf(ttnot find the book!n);break;case 2:printf(ttplease inpu

22、t the writer:n);scanf(%s,name);flag=0;for(i=0;iN;i+)if(strcmp(name,libi.writer)=0)printf(tt%dn,libi.num);printf(%stt%stt%sn,libi.book_name,libi.writer,libi.sort_num);printf(%stt%stt%sn,libi.pub_company,libi.pub_time,libi.prise);flag=1;break;if(flag=0)printf(ttnot find the wtiter!n);break;void xiugai

23、(void) /*显示修改函数*/int i,flag;char name30,n3;printf(ttplease input the book_name of xiugai :n);scanf(%s,name);flag=0;for(i=0;iN;i+)if(strcmp(name,libi.book_name)=0)printf(tt%dn,libi.num);printf(%stt%stt%sn,libi.book_name,libi.writer,libi.sort_num);printf(%stt%stt%sn,libi.pub_company,libi.pub_time,libi

24、.prise); printf(ttplease input xiugais the informations:n);printf(ttnum:n);scanf(%d,&libi.num);printf(ttbook_name:n);scanf(%s,libi.book_name);printf(ttwriter:n);scanf(%s,libi.writer);printf(ttsort_num:n);scanf(%s,libi.sort_num);printf(ttpub_company:n);scanf(%s,libi.pub_company);printf(ttpub_time:n);

25、scanf(%s,libi.pub_time);printf(ttprise:n);scanf(%s,libi.prise);flag=1;break;if(flag=0)printf(ttnot find xiugais the book!n);void del(void) /*显示删除函数*/int i,flag,n;char name30;printf(ttplease input the book_name of del:n);scanf(%s,name);flag=0;for(i=0;iN;i+)if(strcmp(name,libi.book_name)=0)printf(tt%d

26、n,libi.num);printf(%stt%stt%sn,libi.book_name,libi.writer,libi.sort_num);printf(%stt%stt%sn,libi.pub_company,libi.pub_time,libi.prise);libi.num=libn-1.num;strcpy(libi.book_name,libn-1.book_name);strcpy(libi.writer,libn-1.writer);strcpy(libi.sort_num,libn-1.sort_num);strcpy(libi.pub_company,libn-1.pub_company);strcpy(libi.pub_time,libn-1.pub_time);strcpy(libi.prise,libn-1.prise);n=n-1;flag=1;printf(ttdel ok!n);break;if(flag=0)printf(ttno information of the book!n);7 答辩记录序号问 题回 答12345

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1