C#程序设计开发文档学生成绩管理系统.docx
- 文档编号:29447009
- 上传时间:2023-07-23
- 格式:DOCX
- 页数:16
- 大小:338.78KB
C#程序设计开发文档学生成绩管理系统.docx
《C#程序设计开发文档学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《C#程序设计开发文档学生成绩管理系统.docx(16页珍藏版)》请在冰豆网上搜索。
C#程序设计开发文档学生成绩管理系统
<学生成绩管理系统>
开发文档
作者:
郑娇
学号:
2008373065
指导老师:
李力
完成日期:
2011年11月1日星期一
前言
1摘要
●开发系统的名称:
学生成绩管理系统
●开发系统的目标:
节约资源,提高学籍信息的精确度。
方便快速操作,精简人员,节约开支。
结合学校管理的实际需要,实现对学生成绩等数据进行有效管理,提供查询分析功能等。
●开发系统的功能:
学生查询功能,管理员查询功能、添加功能、修改功能、删除功能、汇总功能。
2背景
●随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,具有手工管理所无法比拟的优点。
这些优点能够极大地提高学生档案管理的效率,也是企业的科学化、正规化管理,与世界接轨的重要条件。
当今学生成绩管理的繁索给具有强烈时间观念的行政人员带来了诸多不便,教学办公室缺少一种完善的学籍管理软件,为了对学生成绩的管理方便,也为了进一步检验自己在一学期的.net的学习水平,我决定着手开发《学生成绩管理系统》软件。
一、系统分析
1系统需求
●功能需求简介:
学生成绩查询系统对学校加强学生成绩管理有着极其重要的作用。
由于各个大学都在持续扩招,学生的数量日益庞大,传统的手工成绩管理不仅工作量大,而且容易出现问题。
●功能需求描述:
1.1.用户管理功能
用户分为管理员、教师用户、学生用户三类。
不论是管理员或教师用户,还是学生用户都需要通过用户名和口令进行登录。
按学生角度管理教师可以看到学生信息和成绩信息。
学生信息包括学号、姓名、班级、生日、性别、地址、电话等基本信息。
当教师要查看某一学生信息时,可以自动显示出该课程的这个学生所有课程的学习成绩,并同时自动计算出这个学生的总分和平均分。
在成绩信息中,教师可以对学习成绩进行增加、修改和删除,并能够打印报表。
特别是可以对学生成绩进行分析,便于在以后的教学和出卷中改进。
1.2.学生对成绩的查看功能
学生用户登录后,学生可以看到自己的学生信息和成绩信息。
学生信息包括学号、姓名、班级、生日、性别、地址、电话等信息。
成绩信息包括这个学生的所有课程的成绩信息。
●新系统目标:
对于本系统,我们需要实现以下一些基本功能:
1.3.学生查询功能:
为了方便学生查找成绩等信息,将所有信息按照需要进行分类。
这样学生就能很方便的找到自己需要的信息。
1.4.添加功能:
管理员可以通过填写表格的形式输入学生成绩等相关信息。
系统可以自动避免重复信息。
1.5.修改功能:
管理员可以对数据库中的信息进行修改。
系统能够通过管理员给出的条件查找出所要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。
1.6.删除功能:
管理员可以对数据进行删除操作。
系统能够通过管理员给出的条件查找出要删除的信息,并提示是否确定删除,如果确定删除,则把相关信息从数据库中删除掉。
1.7.管理员查询功能:
管理员可以通过条件选择查询所有信息,并进行排序。
二、数据库设计
1数据库总体结构
本系统采用关系型数据库模式,因此数据库由若干个二维表(数据文件)组成,每个数据文件均设计成第三范式。
表名用含有实际意义的英文字母表示,如学生成绩表:
sc。
2数据库结构
每一个数据文件均有一张定义表:
学生信息表:
字段名
类型
长度
小数位数
主关键字
备注
学号
char
10
是
不能为空
姓名
char
20
否
不能为空
性别
char
20
否
年龄
Int
微整型
系部
char
10
否
课程表:
字段名
类型
长度
小数位数
主关键字
备注
课程号
char
10
是
不能为空
课程名
char
20
否
不能为空
学分
Int
微整型
否
学期
char
10
否
学生成绩:
中文名称
类型
长度
小数位数
主关键字
备注
课程号
char
10
是
不能为空
学号
char
20
是
不能为空
成绩
微整型
10
否
用户密码:
序号
中文名称
类型
长度
小数位数
主关键字
备注
1
用户名
char
10
是
不能为空
2
密码
char
20
否
不能为空
3数据库的安全设计
1.软件系统方面
对数据库管理系统的访问账号和口令进行细致严格的权限设置,前端操作于后台数据相分离,系统管理员账号只有系统管理员才能使用。
2.程序设计方面
根据操作人员的身份进行系统的操作权限设置,将每个表单的操作权限分为新增、修改、删除、查询、打印五个功能,可以根据操作员的身份进行操作权限的设置和维护。
三、系统设计
1模块结构设计
1.1.组织结构图
学生成绩管理信息系统分析与设计的组织结构图。
四、系统实现
1开发工具
本系统代码采用MicrosoftVisualStudio2005编写,后台数据库使用的MicrosoftAccess2003
2软件界面截图
1)用户登录界面
2)系统主界面
3)课程添加界面
4)课程修改界面
5)学生添加界面
6)学生修改界面
7)成绩添加界面
8)成绩修改界面
五、关键代码
●数据库类设计
classDataBase
{
stringcon="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=studentmanage.mdb";
OleDbConnectioncnn;
OleDbCommandcmm;
DataSetdst;
OleDbDataAdapteradp;
publicDataBase()
{
cnn=newOleDbConnection(con);
//cnn.Open();
dst=newDataSet();
}
publicDataSetcheckUser(stringsql,stringtable)
{
cnn.Open();
adp=newOleDbDataAdapter(sql,cnn);
adp.Fill(dst,table);
cnn.Close();
returndst;
}
publicboolinsertUser(stringsql,stringtable)
{
cnn.Open();
cmm=newOleDbCommand(sql,cnn);
cmm.ExecuteNonQuery();
cnn.Close();
returntrue;
}
publicboolupdateUser(stringsql,stringtable)
{
cnn.Open();
cmm=newOleDbCommand(sql,cnn);
cmm.ExecuteNonQuery();
cnn.Close();
returntrue;
}
publicDataSetselectUser(stringsql,stringtable)
{
cnn.Open();
adp=newOleDbDataAdapter(sql,cnn);
adp.Fill(dst,table);
cnn.Close();
returndst;
}
}
●登录代码
privatevoidbutton1_Click(objectsender,EventArgse)
{
lbid.Text=null;
lbpass.Text=null;
if(textBox1.Text=="")
{
lbid.Text="用户名不能为空!
";
textBox1.SelectAll();
}
if(textBox2.Text=="")
{
lbpass.Text="密码不能为空!
";
textBox2.SelectAll();
}
else
{
if(checkLogin())
{
lbmsg.Text="登陆成功!
";
mf=newmainfrm();
mf.Show();
this.Hide();
}
else
lbmsg.Text="登陆失败!
";
}
}
●登录验证函数
privateboolcheckLogin()
{
dstuser=db.checkUser("select用户IDfromuserID","userID");
dstpass=db.checkUser("select密码fromuserID","userID");
for(inti=0;i { userID=dstuser.Tables[0].Rows[i][0].ToString().Trim(); pass=dstpass.Tables[0].Rows[i][0].ToString().Trim(); if(userID==textBox1.Text.Trim()&&pass==textBox2.Text.Trim()) returntrue; } returnfalse; } ●成绩查询 privatevoidsimpleButton2_Click(objectsender,EventArgse) { stringselecsql="select*fromstu_cou_scwhere"+boBox1.Text+"='"+this.textBox6.Text+"'"; mydst.Clear(); mydst=db.selectUser(selecsql,"stu_cou_sc"); this.dataGridView1.DataSource=mydst.Tables[0].DefaultView; if(this.dataGridView1.RowCount==0) MessageBox.Show("查无此项记录! "); } ●成绩修改 privatevoidsimpleButton1_Click(objectsender,EventArgse) { inta=0; mydst.Clear(); lbmsg.Text=""; if(int.TryParse(this.textBox3.Text,outa)==false) { lbmsg.Text="输入有误,请检查"; } elseif(textBox1.Text==""||textBox2.Text=="") { lbmsg.Text="请选择要修改的数据记录"; } else { stringupdatesql="updatescset成绩='"+this.textBox3.Text+"'where学号='"+this.textBox1.Text+"'and课程号='"+this.textBox2.Text+"'"; stringselectsql="select*fromstu_cou_sc"; if(db.updateUser(updatesql,"sc")) MessageBox.Show("修改成功! "); else MessageBox.Show("修改失败! "); mydst=db.selectUser(selectsql,"stu_cou_sc"); this.dataGridView1.DataSource=mydst.Tables[0].DefaultView; } } 六、总结 到此为止,一个功能简单的成绩管理系统基本实现了,通过此次开发,我进一步熟悉了.net环境的开发,更加深了对数据库开发和对面向对象程序开发的理解,该系统实现了基本的学生档案管理,包括学生信息录入、修改、查找和删除功能;实现了基本的课程管理,包括课程信息录入、修改和删除功能;实现了基本的学生成绩管理,包括学生成绩录入、查找、修改和删除功能;但是由于自己知识水平有限,该系统还不够完善,比如没有实现asp动态管理功能,但相信在以后的学习过程中,我会继续努力,是自己的编程能力进一步提高。 参考书籍 1.《C#程序设计语言(原书第4版)》作者: (美)海杰尔斯伯格等著,陈宝国等译机械工业出版社2011-8-1 2.《C#程序设计与案例教程》杨树林胡洁萍著清华大学出版社2007年8月 3.《基于.NETFramework2.0的窗体应用开发》微软院校课程系列教材 4.《C#程序设计教程(重点大学计算机专业系列教材)》春葆 等编著清华大学出版社2010年01月
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 程序设计 开发 文档 学生 成绩管理系统