本系统开发工具:VC+ACCESS
本设计包含内容:源代码+可执行程序+毕业论文+开题报告+答辩稿
论文大概:
一、系统需求与功能:(所在班级同学通讯录)
1.对新加入本班或转走的同学的信息进行增删操作;
2.查询某个学生的综合管理;
3.查询某个学生从入学到目前某门功课的成绩;
3.登记某个学生新的成绩;
二、课设开发平台及数据库程序:
Microsoft Visual Studio
6.0
Microsoft Access
三、操作步骤:
在运行学生综合管理系统前,需要在“控制面板”的“ODBC数据源(32位)”中为将要用调用的数据库与系统建立连接。
进入“ODBC数据源(32位)”,添加一个Access数据库,数据源名为sis,数据库定位在sis.mdb文件。然后即可运行本信管系统。
四、系统功能分析及实践总结和体会:
刚刚拿到课程设计要求时,草草地看了一眼,觉得很容易实现,不就是显示几个学生信息,并对其进行增删吗。但一动手编程,才发现做一个管理系统,并不如我想像中那么容易。
起初,我做了一个DOS界面的系统,在每个命令前给出相应的字母,利用Switch语句,用户只需输入一个字母,即可让系统执行相应命令。但是DOS界面,操作起来不直观,不利于普通用户使用,而且在显示数据上也存在诸多阻碍,比如数据显示布局、显示数量等等。
对于数据的输入输出,我试了几套方案:
1.数据对象用结构体处理,利用链表,通过指针,动态创建(new)和撤销(delete)数据,以达到不用预先设定要输入的学生信息数量的目的,避免浪费空间或发生溢出;
2.数据对象用类处理,学生综合管理(intro)、各科成绩(chinese、maths、english等)均作为基类,再建立一个student类继承上述各类,如此建类,便于实现查询系统的功能完善,如:查询学生部分信息、单科或某几科成绩等。每个类中,都包含一个带参数的构造函数,和一个不带参数的构造函数,以及一个析构函数,带参的用于调用已有数据,不带参的用于用户输入数据,析构函数用于释放已建立的动态空间;
3.其它方案初试均告夭折,不再赘述。
按照上述方案实现了数据I/O后,又出现一个至关重要的问题,它使我感觉到知识已达瓶颈,那就是数据存储问题。我查阅教材《高级语言C++程序设计》,上边只对文件I/O做了简单的介绍,而且程序示例还存在问题,我也做了多次试验,很遗憾,以失败告终。我又翻开《C程序设计(第二版)》,利用包含在stdio.h头文件中的函数(fopen,fclose,fread,fwrite等),解决了数据存储问题,将数据以二进制形式存储在扩展名为dat的文件中,但对其数据存储在应用上还需进一步调试。
在此特别感谢何薇老师的点拨,对于C++的文件I/O,我会按照您的指点,继续修改我的DOS版信管系统。
至此,一个简单的学生综合管理系统雏形宣告成功!但在我进行了几次试用后,发现DOS界面在使用上存在不少弊端,不利于用户操作,而且功能也不全面,连最综合的“删除”和“修改”操作都没有实现,主要是由于对文件I/O的使用还不够熟练。于是我决定编制一个可视化信管系统。
亲手将自己花费不少心血编好的程序付之一炬,难免有些伤感,但为了追求更完美的信管系统,为了使我的管理系统更便于用户操作,我毅然决然地把它从我的大脑内存中清除。
我要从零开始,学习使用Visual C++集成开发环境开发出可视化的管理系统。对《新概念Visual C++ 6.0教程》的相关内容进行突击学习后,我终于做出了一个很简单的信管系统。
本系统与Access数据库相关联,解决了数据的存储问题,而且可视化的操作界面,便于用户与计算机进行交互式操作,数据的显示布局等问题也得到解决。