汽车销售信息管理系统程序设计实验报告.DOC
汽车销售信息管理系统程序设计实验报告
姓名:宁蒙 班级:211128班
学号 班内序号:25
手机 邮箱:691342444@
此次我们小学期需要完成的作业是以小组为单位,设计一个汽车销售信息管理系统,我与同班的两位同学组成了一个小组,我作为组长,组员分别是梁晓彤同学和靳梦茜同学。经过两周的时间,通过课上的学习以及课下的看书自学,我们完成了程序的设计,一下就是我关于这次程序设计的实验报告。
一、功能描述:
根据题目要求,我们所设计的出来程序应包含以下十条基本功能:(1)添加记录(2)显示记录(3)查询记录(4)代号的排序(5)删除记录(6)更新记录(7)按关系类别显示记录(8)保存记录(9)读入记录(10)退出。
我们设计的程序可以很好地做到这些功能,除此之外,我们还设计并实现了一些扩展功能:(1)友好的操作界面:在进行界面的设计时,我们的主菜单、各个程序的提示和信息的显示均采用了中文表示,使设计出来的界面更加美观、易于人们读懂,适合大多数人使用。并且,我们对界面进行了美化的工作,调整了各个功能选项以及程序标题之间的比例,使用户在使用此系统的过程中不仅仅有功能的享受,还有视觉效果上的乐趣。(2)清除缓存:这一项功能我们通过一个fflush(stdin)语句实现,它和我们设计的动态链表一起,动态而合理地分配了内存方式,可以及时有效地释放空间,提高系统的运行速度,方便用户的使用。(3)原文件的录入及新文件的创建:在我们设计的程序中,我们将原文件的录入设计成自动录入,即系统会自动录入名为“shares”的TXT文件。而为了保证该文件内容不会被更改,在将内容改动后,用户选择保存新文件时,系统会创建一个名为“shares_over”的新的TXT文件。这样,之前的信息依旧可以保存,而如果想查询更改过的信息,我们只需录入“shares_over”文件即可。
二、程序模块描述:
从整个程序来看可以分成以下几个主要的模块。首先是主界面的显示,程序运行后会显示“欢迎进入汽车销售信息管理系统!”并询问“是否进入管理中心?y/n”此时我们通过使用“while”判断语句排除了使用者输入其他内容的情况,之后再通过“if”再次判断,实现显示主菜单或退出系统。关于主菜单的显示,为了简化系统,我们设计了一个名为“printmenu”的函数,在以后的程序中,只要调用次函数可以了。
进入主菜单后,用户需输入选项数字来实现功能,我们使用了“switch”语句来编写此部分程序,其中我们分出了9个不同的“case”,每一个“case”都实现一个不同的功能,并设计了“default”语句来处理用户输入中可能出现的错误。
由于我主要负责函数部分,所以对于函数的研究就多一点,在实现每个“case”功能的过程中,我们编写了不同的函数,如实现录入功能的“link”函数,实现显示功能的“print”函数,实现删除功能的“del”函数等,在这些函数中我们运用了结构体、指针、文件、选择结构、循环结构等方面的知识。其中结构体方面的知识是重点,为了节省内存空间,我建造了一个动态链表,通过动态链表的知识,我们可以实现譬如录入、显示、排序、插入等很多功能。另外,程序与文件的关联也是难点之一,由于这一部分知识位于书的第十三章,学习得比较晚,所以掌握得不是很牢固,但是最终,通过对于fopen、fwrite等函数的应用,我们成功实现了文件与函数的关联,完成了程序的录入功能。
小组内分工情况如下:我主要负责调用函数的编译及扩展功能的开发。程序设计中问题的发现与调试。梁晓彤负责基本功能的实现,汽车信息的收集,PPT的制作以及部分的调试。靳梦茜负责主体程序和基本功能的编译,问题的发现与调试,创意设计。
三、心得体会
通过这两周的小学期的实践,我们学到了不少东西。上学期通过上课我学到了很多书本上的知识,但在这次小学期进行应用时发现自己对于很多概念还是比较模糊,通过在图书馆查阅资料和在网络上进行搜索,我扫除了很多知识上的盲点,对于编程方面的知识也变得比以前更加熟悉。但现在我们所掌握的知识也还仅仅是一小部分,在以后的学习中仍然需要不断努力。在应用方面,通过上机实验,以及小组成员相互之间的探讨,我们在读程序以及程序的调试,流程图的制作上比起以前都进步不少。另外在编写程序时,学习到一些特殊函数的使用,也是很大的收获。看到自己设计出来的程序能够运行,内心充满了成就感,希望在以后的日子里可以通过继续的学习,做出具有不同功能的程序。
程序设计及调试过程中我们也遇到了一些问题,由于VC++6.0与Windows7的系统有些部分不兼容,所以经常会有程序意外退出的情况发生。而且,由于设计过程中需要用到的知识很多,我们不仅要弄懂书上的知