当前位置:首页 > C语言课程设计(图书销售管理系统)
图书销售管理系统
与文件结果一致(图书查询函数)
通过书名查找结果
调用查询功能购买图书
第 28 页 共 58 页
图书销售管理系统
购买成功后与前面文件内容对比,确实少了一题本(鬼谷子)
通过书名删除
第 29 页 共 58 页
图书销售管理系统
删除成功后与前面的文件对比,显示确实删除了
测试中出现的问题的原因和分析
在测试数据过程中,若发现测试结果与文件中结果不相符
1检查在执行相关操作后,是否确认了该操作,比如在购书过程中,最后你是否确○
认了购买。
2检查在退出程序时是否保存了修改记录。 ○
3检查文件是否一直没关过,因为信息变动后,文件如果一直没关,文件中显示的○
依旧是操作前的结果。
7.问题与不足
(1)
需求分析中存在的问题和分析:该程序不支持插入新图书,不支持统计
销售收入,不支持修改图书信息,与实际不符。程序最后我虽然加了一个图书信息新建功能和修改密码功能,但图书新建功能,不能完全识别操作者输入的错误信息。 (2)
概要设计中存在的问题和分析:全局标志性变量用的太多,在主体函数
中定义变量时,容易与全局标志性产生混淆。全局指针也用的太多,虽然这样避免了传指针出错,但没有锻炼我们传参数的能力。 (3)
详细设计中存在的问题和分析:在图书购买过程中,不能够直接支持通
过书名和作者购买图书,而且也不支持一次性购买多本,购买多本只能通过连续购买。 (4)
代码编制中存在的问题和分析:由于程序中用了较多的循环和判断,花
括弧({ })较多,容易缺少或多出花括弧。ALT+F8不仅能将代码自动整理成
第 30 页 共 58 页
图书销售管理系统
微软的cpp文件格式,而且它还是检查花括弧是否缺少或多出的有力工具。 (5)
调试和测试中存在的问题和分析:在编写程序代码是,要注意全局变量
和局部变量,防止二者混淆。当文件打开失败时要注意指针是否还有确定的指向,比喻在导入书库信息函数void loadrec()中,当文件打开失败时,p3->next=NUU就没有意义,在这之前就需要为p3申请一个空间。
8.建议
课设题目有些地方自相矛盾(不是我的题目),建议老师能花点时间将课设题目中有些不合理的地方改正一下。时间安排上,刚开始时觉得很不合理,因为有考试,哪有时间做课设,但后来就发现这样很好,因为我们可以慢慢做,有时间考虑程序中的问题,避免抄袭,对自己的编程能力的提高有好处,因为所有的都是自己写的。 建议以后也这样。
9.编程体会
刚开始准备编代码时,感觉很茫然,不知道从何写起。后来先看懂老师的程序,没事时就时不时的想一下自己的课设题目。经过一两天的思考,整个课设的框架基本建好了,现在感觉其实做课设最难的地方就是基本框架的建立,只要建好了基本框架,动起手来就会发现其实课设不是非常困难。做完课设学到了很多编程方面的技巧,比喻在编写程序时,不要将整个程序放在一起检查语法错误,那样非常难操作,可以保留主函数,然后将主体函数一个个的检查错误,这样便于错误的查找和改正。以前见到一大堆的语法错误,就头痛,总是想放弃,其实有时候就一个地方出了一点小错,现在检查逻辑错误的能力也比以前有提高,以前遇到错误找了一会找不出来就不想找了,最主要的原因是以前没有毅力,并不是自己找不出错误。全局变量的巧妙运用会给程序减少不少麻烦,对全局变量的运用也是这次课设的一大收获。这次还学到了一些课外知识,比喻getch(),goto,continue,(int a ;if((a=getch())==27)?)(按【Esc】可以退出循环),的运用,还有读文件时应注意的一些问题等。这些老师在课堂上没提过或提及较少的东西在这次课设中基本上都掌握了。课设将这半年学的东西串联了起来,是对这半年来学的C语言的一个总结。很多东西别人讲,你听懂了是一回事,但自己做出来又是一回事,只有通过自己做出来了,才算是真正的学会了,课设就起了这个作用。
10.程序源代码:
#include
第 31 页 共 58 页
共分享92篇相关文档