C++课程设计.docx
《C++课程设计.docx》由会员分享,可在线阅读,更多相关《C++课程设计.docx(14页珍藏版)》请在冰豆网上搜索。
C++课程设计
摘 要
本论文的主要内容是基于C++ Builder的高校学生管理系统的软件开发。
论文详尽论述了从需求分析、系统分析、概要设计以及详细设计的整个过程。
本文严格按照软件工程的原理,对以上各项目进行了的分析、设计与测试,并做了理论上的阐述;遵循软件工程的方法,进行了学生管理系统的需求分析、功能模块划分、数据库模式分析,并由此设计了数据库结构和应用程序。
文中可以看到系统具体实现的设计界面,以便让读者能够较轻松地了解系统的设计思路。
本系统的设计主要使用Borland C++ Builder数据控件来创建一个学生信息处理界面即数据处理窗体。
在该窗体中,可以增加、编辑、删除记录和使用任意条件查询数据。
我们还将制作一个系统的启动封面,系统启动封面将控制进入或退出系统,另外系统封面对于系统的修饰作用也是极好的。
关键词:
BorlandC++Builder;数据控件;学生信息管理
Abstract
The main content of this thesis is the software development of university student management system based on C++ Builder. It presents the whole procedure from demand analysis, system analysis, outline design and details design, to test and debugging. According to the principles of software project, theoretical elaborations are performed on the above analysis, designs and tests. Following the methodology of software project, demand analysis, function module classification and database mode analysis are carried out. Consequently, the database and application program are designed. One can directly see the realizing interface of the software system ,so that the design story may be easily understood. The design mainly uses the data control widget of Borland C++ Builder to establish an information processing interphase of students, namely the forms of information processing. We can increase, edit, delete record and use arbitrary condition to search data. We will make a start cover of the system, which will control entering and exiting the system. The decorative effect of the system's cover for the system is wonderful.
Key Words :
Borland C++ Builder; the data control widget ; Student management
第1章绪论
1.1设计背景与意义
企业人事信息管理是企业管理中的一个重要组成部分,如何管理好企业内部员工的信息,对人力资源进行合理优化,成为企业管理中的一个重要问题,使用计算机来管理可以提高人事信息管理的效率,从而提高经济效率,因此企业人事信息管理系统是一个现代化企业不可缺少的部分,它的作用对于企业的决策者和管理者来说都至关重要,企业人事信息管理系统能够为用户提供充足的信息和快捷的查询手段,使用计算机对人事信息进行管理,具有着手工管理所无法比拟的有点,例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、成本低等优点,这些优点能够极大地提高企业人事信息管理的效率,使用这种先进的管理工具也是企业管理科学化、正规化、与世界接轨的先决条件,因此,开发这样一套信息管理软件成为很重要的事情。
本系统从满足操作简单、界面友好、灵活、实用、安全的要求出发,完成了企业人事信息管理的流程,设计实现的功能包括:
用户管理、密码管理、员工基本信息管理等,本文所设计的人事信息管理系统基本上可以满足企业人事管理方面的需求。
第2章设计题目的介绍
2.1设计目的
针对要求,建立一个基于计算机的人事信息管理系统,解决手工的查询与修改员工信息,大大地减少工作量,节约人力财力,提高管理的效率,为此提出一下设计目标:
(1)能够实现对职工综合情况的输入、修改以及删除;
(2)能够实现对职工信息的浏览;
(3)能够实现对职工进行查询;
(4)设计系统封面并由计时器控制。
2.2设计内容及要求
2.2.1系统性能要求:
(1)系统安全、可靠;
(2)功能齐全;
(3)操作方便、界面友好;
(4)易于维护和扩充。
2.2.2系统的功能分析:
(1)系统维护:
系统维护包括对各种表记录的修改、删除、添加等操作。
(2)信息浏览:
对数据表中的信息进行浏览。
(3)系统查询:
可以按工号、姓名等相关信息进行详细或模糊查询。
(4)报表统计:
工号、职工姓名、性别、所在单位、年龄、入职日期、职务、职称、照片和简历等字段。
(5)其它操作:
系统封面、计时器控制与人性化提示信息。
2.2.3系统功能模块
“数据查找与浏览”模块、“数据修改”模块、“报表显示”模块和“系统封面”模块。
2.2.4要实现的功能:
1.“数据查找与浏览”模块:
(1)数据查找:
工号、职工姓名、性别、所在单位、年龄、入职日期、职务、职称、照片和简历等字段进行精确或模糊查找。
(2)数据浏览:
可以对数据表中的数据实现,上一项、下一项、操作。
(3)其他信息:
设置字体、颜色属性和一些提示信息。
2.“数据修改”模块:
(1)添加数据:
增加一个新的记录
(2)修改数据:
修改原有记录。
3.“报表显示”模块:
显示当前查找到的数据内容,以报表形式打印。
4.“系统封面”模块:
(1)系统时钟:
在在设定的时间间隔内,系统封面显示达到或超过设定的显
示时间,系统封面会自动释放
(2)功能实现:
进入主界面与退出系统。
第3章系统总体分析
3.1数据库设计
首先通过C++Buider软件从BDEADMIN程序创建一个名为DCB的文件夹,再从DBD32程序创建一个名为DCB1.db的数据库,然后创建用户表、员工信息表,表如下:
(1)用户表
数据来源:
系统管理模块用户信息录入。
图3-1员工信息字段表
(2)员工信息表
数据来源:
员工基本管理模块录入员工信息。
图3-2创建信息表
3.2模块分析
本系统由一下三个模块组成,其功能分别为:
(1)系统管理模块:
用户管理,密码管理,定时管理;
(2)员工基本信息管理模块:
员工基本信息录入,员工基本信息修改,员工基本信息查询,员工基本信息删除,员工基本信息报表;
(3)员工信息报表模块:
浏览报表。
第4章系统设计
根据已有的信息需求和总体设计,就可以进行系统的详细设计和设计和实现,本系统共有有三个模块:
系统管理模块、员工基本信息管理模块、员工信息报表模块。
各模块设计如下:
4.1系统管理模块
本模块包括系统界面、用户登陆、定时退出设置。
4.1.1登陆
4.1.1.1算法步骤
(1)数据输入:
用户从Form4界面进入Form1的界面输入用户名和密码并点“登陆”按钮,若登陆时间到时,就会自动退到Form4界面;
(2)数据验证:
用程序验证用户名和密码是否正确;
(3)登陆响应:
若用户或密码错误,则弹出提示页面,若用户和密码正确则进入主页面Form2。
4.1.1.2关键代码
intlogintime=10;//(定时)
TForm4*Form4;
//---------------------------------------------------------------------------
__fastcallTForm4:
:
TForm4(TComponent*Owner)
:
TForm(Owner)
{
}
//---------------------------------------------------------------------------
void__fastcallTForm4:
:
Button1Click(TObject*Sender)
{
Form1->Show();(进入)
}
//---------------------------------------------------------------------------
void__fastcallTForm4:
:
Timer1Timer(TObject*Sender)
{
if(logintime==0)
{Timer1->Enabled=false;
Form1->Close();}
logintime--;
Button2->Caption="退出("+IntToStr(logintime)+")";(定时退出)
}
//---------------------------------------------------------------------------
4.1.1.3运行效果图
图4-1系统封面
图4-2登陆面
4.2员工基本信息管理模块
本模块包括员工基本信息录入,员工基本信息查询、修改和删除
4.2.1员工基本信息录入
4.2.1.1算法步骤
(1)菜单连接:
当用户和密码正确进入员工基本信息界面Form2.
(2)数据添加:
输入新员工的各项基本信息,点击“保存”按钮.
4.2.2员工基本信息查询、添加和删除
4.2.2.1算法步骤
(1)菜单连接:
进入Form2界面;
(2)查询:
点击“查询”按钮.提供“按员工编号查询”输入完成,点击“确定”;
(3)显示查询结果:
若结果空,则没有该员工的信息记录,若有结果,则光标指向该员工的信息处;
(4)添加和删除:
利用该组件:
“+”为“添加”按钮;“—”为“删除”按钮;
(5)保存。
4.2.2.2关键代码
void__fastcallTForm2:
:
Button3Click(TObject*Sender)
{
Form3->Show();//打印报表
}
//---------------------------------------------------------------------------
void__fastcallTForm2:
:
Label2Click(TObject*Sender)
{
Table1->IndexFieldNames="";
AnsiStringqueryString=InputBox("查询","请输入需要查询的字段","");
if(!
Table1->FindKey(ARRAYOFCONST((queryString))))
Application->MessageBox("没有找到符合条件的记录","信息",MB_OK);
}
//---------------------------------------------------------------------------
void__fastcallTForm2:
:
Button1Click(TObject*Sender)
{
Table1->IndexFieldNames="";
AnsiStringqueryString=InputBox("查询","请输入需要查询的字段","");
if(!
Table1->FindKey(ARRAYOFCONST((queryString))))
Application->MessageBox("没有找到符合条件的记录","信息",MB_OK);
}//查询
//---------------------------------------------------------------------------
4.2.2.3运行效果图
图4-3员工信息
图4-4查询
4.3员工信息报表模块
本模块报括浏览报表。
4.3.1浏览报表
4.3.1.1算法步骤
(1)菜单连接:
从Form2中点击“打印报表”按钮,进入“报表”Form3;
(2)访问数据库:
进入“报表”Form3,点击“浏览报表”按钮,进程信息浏览;
(3)操作响应:
浏览是否成功,均有提示页面。
4.3.1.2关键代码
void__fastcallTForm3:
:
Button1Click(TObject*Sender)
{
QuickRep1->Preview();
}
4.3.1.3运行效果图
图4-5报表
图4-6浏览报表
总结
经过了这次课设,我体会颇多我充分体会了编程工作者的辛苦,因为每一个细微的细节都必须十分的注意。
由于自己的经验及各方面的能力的不足,所以进展的速度非常的缓慢,往往一天下来什么都没做成功。
这个过程曾给我沉重打击,不过当看到程序没错误能执行出来时,心中的喜悦难以用言语来表达。
在开始编写程序的时候,我看到别人的程序功能非常的详细,而且界面非常的漂亮,总希望自己的程序也多一些功能更加的完善。
但是渐渐的我发现编写一个优秀的程序决不是一蹴而就的事情,需要长时间的积累和经验,在同学的帮助下,我认识到自己的不足和劣势。
其实尽自己所能,编制一个实用简单的程序也是一件很不容易的事情。
由于我的知识浅薄,经验不足及阅历破浅,因此在该程序的设计方面还有很多不足,比如功能过少,只是简单的实现了数据的添加,对数据的删除和查询等操作均为实现,因此需要今后更加深入的学习和努力。
我也认识到理论知识与实践是不一样的,实践是否能顺利完成取决于理论知识是否深厚。
参考文献
[1]赵明现,C++Builder6编程实例精解,北京:
清华大学出版社,2006年
[2]陈雪飞,C++buider实例入门,北京:
中国青年出版社,2011年
[3]陈灿煌,C++builder彻底研究,北京:
中国铁路出版社,2009年
[4]张宽海,管理信息系统概论[M],北京:
高等教育出版社,2002年
[5]常明华,数据库技术及开发教程[M],成都:
电子工业出版社,2002年