C#学生成绩管理系统.docx
- 文档编号:7984605
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:41
- 大小:726.55KB
C#学生成绩管理系统.docx
《C#学生成绩管理系统.docx》由会员分享,可在线阅读,更多相关《C#学生成绩管理系统.docx(41页珍藏版)》请在冰点文库上搜索。
C#学生成绩管理系统
C#课程设计
:
班级:
学号:
指导老师:
简介
该系统是用Visua Studio2010和Access 2007,通过C#语言进行相关代码的编写,生成相关程序。
学生成绩管理系统是构建于Visual C#.NET平台上的Windows应用程序。
本文描述的是基于Windows环境的学生成绩管理系统,主要工具Microsoft Visual Studio 2010 设计窗体,Access 2007建立数据库, 学生成绩管理管理系统为用户提供充足的信息和快捷的查询手段,实现学生基本信息、成绩的录入,删除,查询,维护以及成绩的统计分析等几方面的功能,是现实问题的迫切要求。
本篇报告介绍一个学生信息管理系统的从分析到设计最后到开发的全过程为,给出了学生信息管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。
涉及到学生信息管理的基本功能在本报告中都有相应的描述。
管理信息系统正在向着网络化、智能化和集成化等趋势发展。
学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。
它对于一个学校是不可缺少的重要部分,它的内容对于学校的决策者和管理者来说都至关重要。
在这次的课程设计中,让我了解到MicrosoftVisualStudio2010,同时学习了Access数据库的建立和连接与导入。
能在VisualC#.NET平台上进行Access数据库的修改与控制,将C#语句与SQL语句混合使用,成功的完成了学生成绩管理系统的整体设计,加深稳固了选择的条件语句,还有曾经学习过的基本运算语句,同时也为以后的进一步学习垫下了了良好的基础。
第一章绪论……………………………………………………4
设计目的…………………………………………………4
开发工具选择……………………………………………4
开发环境…………………………………………………4
第二章需求分析………………………………………………5
系统目标…………………………………………………5
功能需求分析……………………………………………6
性能需求分析……………………………………………6
第三章总体设计………………………………………………7
设计概述…………………………………………………7
功能模块设计……………………………………………7
第四章数据库设计……………………………………………8
数据库需求分析………………………………………8
数据库表设计…………………………………………9
第五章详细设计………………………………………………10
5.1系统程序流程图…………………………………………11
5.2系统主要功能模块………………………………………13
5系统登录……………………………………………13
5学生登录模块………………………………………15
5管理员登录模块……………………………………20
第六章总结………………………………………………………41
第一章绪论
1.1 课程设计目的
本次课程设计的目的是使学生能熟练掌握简单的简单Windows窗体应用程序的设计和.net的应用,复习熟练基本运算符,和基本的条件语句、判断语句,将Access的使用和Microsoft Visual Studio 2010的使用结合起来,希望通过本次的课程设计锻炼我们使用C#语言解决实际问题的能力。
1.2 系统开发环境
系统开发平台:
Microsoft Visual Studio 2010 系统开发语言C# 数据库管理软件:
Access 系统开发程序 本系统后台数据库采用Access 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2010作为主要开发工具,可与Access 2007数据库无缝链接。
1.4 报告主要内容
本报告详细的介绍了学生信息管理系统的开发过程,主要涉及到的工作如下:
系统的需求分析、系统的总体设计设计思路、系统的数据库设计、系统各模块的详细设计、系统运行测试。
第二章需求分析
2.1系统设计目标
〔1〕登录模块中,有不同的权限设置,分为学生登录和管理员登录
〔2〕学生用户可根据不同的用户名和相应的密码进行登录,并可修改密码。
〔3〕管理员可以根据不同的用户名和相应的密码进行登录,并可修改密码。
〔4〕学生界面中学生可以按照,学号,邮箱来查询成绩
〔5〕管理员界面中管理员可以实现学生成绩的录入,删除,修改,查询,成绩的分析,将成绩导出到Excel表中,还可以根据成绩画出柱状图。
2.2 功能需求分析
本系统的功能需求分析如下:
(1) 学生密码修改:
学生可在成功登录后对自己的密码进行修改,以防个人信息外泄。
(2) 学生成绩查询:
学生根据,学号,邮箱进行查询。
(3) 学生成绩和信息的录入:
用于学生成绩管理,录入学生成绩和学生个人信息,也可以实现对成绩的其他操作。
2.3 性能需求分析
(1) 登录、用户界面需求:
简洁、易懂、易用、友好的用户界面。
(2) 安全保密性需求:
只有凭借用户名和密码登陆系统,才能进行信息的管理,同时也可以进行密码修改。
(3) 数据分析需求:
可根据学生要求进行条件查询,分不同的,学号,邮箱进行相应查询。
(4) 数据统计要求:
可对学生成绩和个人信息进行添加更改和删除。
第三章总体设计
3.1 设计总体概述
根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。
把这些模块结合起来组成一个整体。
逐一实现各个功能;
功能模块设计
〔1〕登录模块,根据不同权限,链接数据库,然后登录。
〔2〕管理员登录模块,在此模块中有成绩查询,修改,删除,添加,分析,导出Excel表,绘出矩形图,退出登录,帮助,密码修改等功能模块。
〔3〕学生登录模块,在此模块中有查询,退出登录,帮助,密码修改等模块功能。
〔4〕成绩查询模块,连接数据库,用SELECT语句实现
〔5〕成绩修改模块,连接数据库,用UPDATE语句实现
〔6〕成绩删除模块,连接数据库,用DELETE语句实现
〔7〕成绩添加模块,连接数据库,用INSERT语句插入实现
〔8〕成绩分析模块,连接数据库,读出数据库中的成绩,按照个门成绩分别求出他们的最高分,最低分,平均分等。
〔9〕导出Excel表模块,将想要保存的信息导出到Excel表中
〔10〕绘出矩形图模块,根据成绩分析模块绘出矩形图。
〔11〕退出登录模块,退出当前登录,切换用户
〔12〕帮助模块,给与一些非法操作的解决方法
〔13〕密码修改模块,修改当前用户的密码
第四章数据库设计
数据库需求分析
数据库中存储学生的基本信息和成绩、管理员和学生的登录号和密码。
数据库的E-R图如下
密码
成绩
班级
学号
密码
用户名
性别
学生
管理员
邮箱
数据库表设计
本系统在登录时需要验证使用者的身份,用户需要输入用户名和密码,所建立的数据库表如下:
1、管理员表:
2、学生表:
3、学生基本信息和成绩表:
第五章详细设计
系统总体结构
经过对系统的需求分析,学生成绩管理系统主要划分为两个部分:
学生成绩查询,管理员模块。
管理员登录模块
学生登录模块
成绩管理系统
系统程序模块流程图:
成绩管理系统
学生登录模块
管理员登录模块
帮助
成绩查询
退出登录
密码修改
其他
成绩管理
导出Excel表
绘出矩形图
密码修改
退出登录
帮助
到处Excel表
成绩分析
成绩删除
成绩修改
成绩查询
成绩添加
学生登录模块
学生登录模块
退出登录
密码修改
帮助
成绩查询
管理员登录模块
退出登录
密码修改
帮助
导出Excel表
成绩分析
成绩删除
成绩修改
成绩查询
成绩添加
绘出矩形图
其他
成绩管理
管理员登录模块
系统主要功能模块
系统登录模块
登录:
代码:
privatevoidbuttonLogin_Click(objectsender,EventArgse)
{
//判断登录状态并弹出对应提示框
if((BoxUser.Text.Trim()==string.Empty)||(BoxPassword.Text.Trim()==string.Empty))
{
MessageBox.Show("请输入用户名或密码");
}
else
{
if(this.student.Checked==true)
{
stringuser=BoxUser.Text;
stringpassword=BoxPassword.Text;
stringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb";
OleDbConnectionobjConnection=newOleDbConnection(strConnection);
objConnection.Open();
OleDbCommandobjCommand=newOleDbCommand("select*fromstudent",objConnection);
DataSetds=newDataSet();
OleDbDataAdaptersda=newOleDbDataAdapter("select*fromstudent",objConnection);;
sda.Fill(ds,"student");
OleDbDataReaderreader=objCommand.ExecuteReader();
inti;
for(i=0;i { reader.Read(); if(reader["username"].Equals(user)&&reader["password"].Equals(password)) { this.DialogResult=DialogResult.OK; this.Close(); break; } } if(i==ds.Tables["student"].Rows.Count) MessageBox.Show("用户名或者密码输入有误! "); //关闭Reader. reader.Close(); objConnection.Close(); } elseif(this.admin.Checked==true) { stringuser=BoxUser.Text.ToString(); stringpassword=BoxPassword.Text.ToString(); stringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb"; OleDbConnectionobjConnection=newOleDbConnection(strConnection); objConnection.Open(); OleDbCommandobjCommand=newOleDbCommand("select*fromadmin",objConnection); DataSetds=newDataSet(); OleDbDataAdaptersda=newOleDbDataAdapter("select*fromadmin",objConnection);; sda.Fill(ds,"admin"); OleDbDataReaderreader=objCommand.ExecuteReader(); inti; for(i=0;i { reader.Read(); if(reader["username"].Equals(user)&&reader["password"].Equals(password)) { this.DialogResult=DialogResult.OK; this.Close(); break; } } if(i==ds.Tables["admin"].Rows.Count) MessageBox.Show("用户名或者密码输入有误! "); //关闭Reader. reader.Close(); objConnection.Close(); } } } 学生登录模块 〔1〕学生界面模块 〔2〕成绩查询模块 代码: //查询学生信息 stringcheckInfo=""; stringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb"; OleDbConnectionobjConnection=newOleDbConnection(strConnection); objConnection.Open(); OleDbCommandobjCommand=newOleDbCommand("select*frominformation",objConnection); OleDbDataReaderreader=objCommand.ExecuteReader(); switch(flag)//分别根据,学号,邮箱查询学生信息 { case1: checkInfo=textBox1.Text.ToString(); break; case2: checkInfo=textBox2.Text.ToString(); break; case3: checkInfo=textBox3.Text.ToString(); break; } if(checkInfo.Length==0||checkInfo.Trim()==string.Empty) { //输入查询信息为空,直接列出所有学生信息 this.listViewInfo.Items.Clear(); this.init(reader); } else { //依据输入查询信息checkInfo查询学生信息并显示到显示区 this.listViewInfo.Items.Clear(); while(reader.Read()) { if(reader["name"].ToString().Equals(checkInfo)||reader["studentID"].ToString().Equals(checkInfo) ||reader["email"].ToString().Equals(checkInfo)) { ListViewItemlvi=newListViewItem(reader["name"].ToString()); lvi.SubItems.Add(reader["studentID"].ToString()); lvi.SubItems.Add(reader["class"].ToString()); lvi.SubItems.Add(reader["sex"].ToString()); lvi.SubItems.Add(reader["email"].ToString()); lvi.SubItems.Add(reader["courseOne"].ToString()); lvi.SubItems.Add(reader["courseTwo"].ToString()); lvi.SubItems.Add(reader["courseThree"].ToString()); this.listViewInfo.Items.Add(lvi); } } } //关闭Reader. reader.Close(); objConnection.Close(); 〔3〕密码修改模块 代码: privatevoidtoolStripMenuItem8_Click(objectsender,EventArgse) { xiugaimima2xiu=newxiugaimima2(); xiu.Show(); } privatevoidbutton1_Click(objectsender,EventArgse) { stringuser=tbusername.Text; stringpassword=tbpassword.Text; stringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb"; OleDbConnectionobjConnection=newOleDbConnection(strConnection); objConnection.Open(); OleDbCommandobjCommand=newOleDbCommand("select*fromstudent",objConnection); DataSetds=newDataSet(); OleDbDataAdaptersda=newOleDbDataAdapter("select*fromstudent",objConnection);; sda.Fill(ds,"student"); OleDbDataReaderreader=objCommand.ExecuteReader(); inti; for(i=0;i { reader.Read(); if(reader["username"].Equals(user)&&reader["password"].Equals(password)) { strings="updatestudentset[username]='"+user+"',[password]='"+this.tbnewpassword.Text+"'where[username]='"+user+"'"; OleDbCommandcmd=newOleDbCommand(s,objConnection); cmd.ExecuteNonQuery(); MessageBox.Show("修改成功! "); break; } } if(i==ds.Tables["student"].Rows.Count) MessageBox.Show("请确认密码! "); //关闭Reader. reader.Close(); objConnection.Close(); } 〔4〕退出登录模块 privatevoidtoolStripMenuItem1_Click(objectsender,EventArgse) { Application.Restart(); } 〔5〕帮助模块 privatevoidtoolStripMenuItem4_Click(objectsender,EventArgse) { MessageBox.Show("请确定是不是没考! "); } privatevoidtoolStripMenuItem6_Click(objectsender,EventArgse) { MessageBox.Show("请联系管理员! "); } privatevoidtoolStripMenuItem7_Click(objectsender,EventArgse) { MessageBox.Show("请联系老师! "); } 管理员登录模块 〔1〕管理员界面模块 〔2〕成绩添加模块 代码: privatevoidtoolStripMenuItem3_Click(objectsender,EventArgse) { //初始化信息录入窗口,进行输入 InfoInputinputForm=newInfoInput(); inputForm.Show(); } privatevoidbuttonAdd_Click(objectsender,EventArgse) { //将学生信息录入 stringsex; if(this.radioButtonMale.Checked) sex="男"; else sex="女"; stringstrConnection="Provider=Microsoft.Jet.OleDb.4.0;"; strConnection+=@"DataSource="+Application.StartupPath+"\\StudentInfo.mdb"; OleDbConnectionobjConnection=newOleDbConnection(strConnection); OleDbCommandcmd=newOleDbCommand("insertinto[information]"+ "([name],[studentID],[class],[sex],[email],[courseOne],[courseTwo],[courseThree])values('"+ this.textBoxName.Text+"','"+this.tex
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 学生 成绩管理系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)