图书登记管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
一、题目描述: (2)
二、题目要求: (2)
三、需求分析: (2)
四、总体设计: (4)
五、实现过程与解决的主要问题 (8)
1、实现过程: (8)
2、解决的主要问题问题: (9)
3、测试过程及结果: (9)
六、特色及有待改进的方面: (17)
七、自我体会与评价: (18)
八、参考文献: (18)
九、源代码: (18)
一、题目描述:
设计一个图书登记管理程序。
二、题目要求:
1、图书信息应该包括编号,书名,出版社和价格等;
2、按照分析,设计,编码,调试和测试的软件开发过程完成这个
应用程序;
3、为各项操作功能设计一个菜单,应用程序运行后,先显示这个
菜单,然后用户通过菜单项选择希望进行的操作项目。
4进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。要求用户输入数据时,要给出清晰,明确地提示信息,包括输入的数据内容,格式及结束方式等。
三、需求分析:
该程序具有以下功能:
1、应用程序运行后,在屏幕上显示一个菜单。用户可以根据需求,
选定相应的操作项目。进入每个操作后,根据应用程序的提示
信息,从键盘输入相应的信息。
2、录入图书信息。
3、给定图书编号,显示某本图书的信息;
4、给定某个关键字,显示所有书名中包含该关键字的图书信息;
5、给定出版社,显示该出版社的所有图书信息;
6、删除某本图书的信息;
7、提供一些统计各类信息的功能。
扩展功能:
将所有图书信息存储在一个文件中,并实现文件读写的操作。
四、总体设计:
文件及函数组成:
运用技术:
1、收集图书书名,出版社(字符型数组),价格(实型)图书编
号(整型);
2、调用printf打印目录;
3、用switch,使用户选择操作项目,共有7case;
4、Case 1 录入某本图书的信息,调用printf打印出“书名出版
社价格编号”
case2给定图书编号,显示某本图书的信息;
case3给定某个关键字,显示所有书名中包含该关键字的图书信息;
case4给定出版社,显示该出版社的所有图书信息;
case5删除某本图书的信息;
case6提供一些统计各类信息的功能;
case7退出。
头文件应包含的内容
–声明函数原型
–包含文件
–自定义宏
–数据结构
菜单选择函数menu_select
–函数原型:void menu_select()
–功能:接收用户选择的命令代码
–参数:无参数
–工作方式:返回命令代码的整数值
–要求:只允许选择规定键,如果输入不符合要求,则提醒用户重新输入
录入信息函数
-函数原型:void readin()
-功能:录入图书信息
-参数:无参数
-要求:正确输入图书信息
编号函数
-函数原型:void number()
-功能:给定图书编号,显示某本图书的信息
-参数:无参数
-要求:正确输入要查的书的编号
关键字函数
-函数原型:void keyword()
-功能:给定关键字显示所有书名中含该关键字的图书信息
-参数:无参数
-要求:正确输入关键字
出版社函数
-函数原型:void publish()
-功能:给定出版社,显示该出版社的所有图书信息
-参数:无参数
-要求:正确输入出版社名字
删除函数
-函数原型:void del()
-功能:删除图书信息
-参数:无参数
-要求:输入要删除图书的编号
统计函数
-函数原型:void statistic()
-功能:统计功能
-参数:无参数
-要求:正确输入出版社名称
退出函数
-函数原型:exit(int)
-功能:退出程序
-参数:整型数据
五、实现过程与解决的主要问题
1、实现过程:
一、首先要对整个程序有个全局的理解,清楚知道程序要实现的功
能。
二、先进行需求分析,再编写。
三、上机编写代码,定义函数及各种声明,分模块编写函数。
1、.record.c中含主函数和menuselect函数;
2、input.c中含录入信息函数,应用了结构体数组,将图书多种信息定义在一起,便于操作管理;
3、number.c中含编号函数,应用2个循环(if和for),1次打开和关闭文件完成功能;
4、keyword.c 中含关键字函数,应用1个标签,1次打开和关闭文件,1个循环嵌套和1个if循环完成功能;
5、Publish.c含出版社函数,应用1个标签,1次打开和关闭文件,1
个循环嵌套和2个if循环完成功能;
6、Delete.c含删除函数,应用2次打开和关闭文件,1个循环嵌套和1个if循环完成功能,1个for循环完成功能;
7、Statistic.c含统计函数,应用1个标签,1次打开和关闭文件,1个循环嵌套和2个if循环完成功能;
四、先单独进行编译,没有错误后再建工程,一起进行连接和运行。发现错误后及时进行修改和测试,能够运行后,再次进行检查和修改,使程序趋近于完善。
2、解决的主要问题问题:
1.由于疏忽而造成的中英文标点错误,由于不认真忘记加分号,源代码输入错误;
2.实现功能的算法有错误;
3.由于知识掌握不牢固而产生的技术错误。
3、测试过程及结果: