C# 学生管理系统.docx
- 文档编号:4114793
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:12
- 大小:604.45KB
C# 学生管理系统.docx
《C# 学生管理系统.docx》由会员分享,可在线阅读,更多相关《C# 学生管理系统.docx(12页珍藏版)》请在冰豆网上搜索。
C#学生管理系统
目目录
一、需求分析…………………..2
二、设计系统流程图…………..3
三、创建数据表………………..4
四、学生管理系统模块设计…..5
五、部分程序源代码…………..7
六、实训心得与体会…………..11
书山有路勤为径,学海无涯苦作舟。
一、需求分析
一套软件是否有市场,满足用户需求是关键因素,所以搞清楚用户到底需要什么是软件开发的头等大事。
用户需求如何得来?
用户有没有把需求描述清楚?
如何把用户需求转化成自动化方式?
软件的开发其实就是从一个个问题开始,再一个个地解决地过程。
整个需求的过程如图:
二、设计系统流程图
三、创建数据表
表5-1
Student(学生)表
字段名
数据类型
备注
stuID
varchar(20)notnull
学号
stuPwd
varchar(20)notnull
密码
stuName
varchar(10)notnull
姓名
stuDepart
int
系院号
stuGrade
int
年级
stuClass
int
班级
表5-2
Teacher(教师)表
字段名
数据类型
备注
teaID
varchar(20)notnull
教师编号
teaPwd
varchar(20)notnull
教师密码
teaName
varchar(10)notnull
教师姓名
teaDepart
int
系院号
表5-3
Cource(课程)表
字段名
数据类型
备注
courceID
varchar(20)notnull
课程编号
tealID
varchar(20)notnull
教师编号
courceName
varchar(100)notnull
课程名称
courceTime
varchar(20)
上课时间
courceAddress
varchar(50)
上课地点
courceInfo
text
课程简介
表5-4
Elect(选课)表
字段名
数据类型
备注
electId
intnotnull
选课编号
stuID
varchar(20)notnull
学生编号
teaID
varchar(20)notnull
教师编号
courceID
varchar(20)notnull
课程编号
score
int
成绩
表5-5
Users(系统管理员)表
字段名
数据类型
备注
adminName
varchar(20)notnull
管理员用户名
adminPwd
varchar(20)
管理员密码
表5-6
Depart(系院)表
字段名
数据类型
备注
departed
intnotnull
系院号
departName
varchar(100)
系院名称
四、学生管理系统模块设计
概要设计中最重要的就是确定此项目包括哪些模块。
根据上两节讲述的设计原则和模块特征,将用户需求转化为下面的模块。
(1)管理员模块:
是本系统的核心模块,该模块又包括对学生管理和课程管理2个子模块,功能如下:
1)学生管理子模块:
实现对学生信息的添加、修改、删除操作,还可以输入查询条件进行查询操作。
图3-1学生管理子模块
2)课程管理子模块:
实现对课程的添加,添加时为其分配任课教师、上课时间和地点,实现对课程的修改、删除,查看某个课程的详细信息等。
图3-2课程管理子模块
(2)教师模块:
实现查看自己所教授的课程、课程有哪些学生选修,以及利用本系统提交学生的成绩。
图3-3教师管理模块
(3)学生模块:
实现学生的选课,查看、修改自己的选课信息。
图3-4学生模块
(4)公有模块:
实现用户的身份验证,密码修改,退出系统等功能。
五、部分程序源代码
登录界面及登录按钮代码:
try
{
if(textBox3.Text.Trim()==""||textBox4.Text.Trim()=="")
{
MessageBox.Show("用户名和密码不能为空!
","登录失败",
MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
SqlConnectionconn=new
SqlConnection("server=.;database=Student;Integratedsecurity=true");
StringBuildersql=newStringBuilder();
sql.AppendFormat("selectcount(*)fromUserswhereadminName='{}'andadminPwd='{}'",textBox3.Text.Trim(),textBox4.Text.Trim());
SqlCommandcmd=newSqlCommand(sql.ToString(),conn);
conn.Open();
intresult=Convert.ToInt32(cmd.ExecuteScalar());
conn.Close();
if(result==1)
{
this.Hide();
FormMyform=newForm2();
Myform.ShowDialog();
}
else
{
MessageBox.Show("用户名和密码错误!
","登录失败",
MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
}
catch(Exceptionee)
{
MessageBox.Show("发生错误"+ee.Message,"登录失败",
MessageBoxButtons.OK,MessageBoxIcon.Error);
return;
}
Form2界面及登录按钮代码:
publicpartialclassForm2:
Form
{
publicForm2()
{
InitializeComponent();
}
privatevoid注册ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm3();
Myform.ShowDialog();
}
privatevoid查询ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm4();
Myform.ShowDialog();
}
privatevoid录入ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm6();
Myform.ShowDialog();
}
privatevoid学生信息管理ToolStripMenuItem_Click(objectsender,EventArgse)
{
}
privatevoid查询ToolStripMenuItem1_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm7();
Myform.ShowDialog();
}
privatevoid录入ToolStripMenuItem1_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm8();
Myform.ShowDialog();
}
privatevoid修改ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm9();
Myform.ShowDialog();
}
privatevoid查询ToolStripMenuItem2_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm10();
Myform.ShowDialog();
}
privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm1();
Myform.ShowDialog();
}
privatevoid删除ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm13();
Myform.ShowDialog();
}
privatevoid密码修改ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm12();
Myform.ShowDialog();
}
privatevoid选课信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm5();
Myform.ShowDialog();
}
privatevoid添加ToolStripMenuItem_Click(objectsender,EventArgse)
{
this.Hide();
FormMyform=newForm11();
Myform.ShowDialog();
}
privatevoidForm2_Load(objectsender,EventArgse)
{
}
}
六、实训心得与体会
1.态度第一
摆正自己的心态,不要以为什么东西上网搜搜就可以了,一定要有自己的东西。
只有自己付出过,当程序运行成功时的那种喜悦才会令自己有一种莫名的自豪感。
态度决定一切!
2.兴趣是关键
我的学习完全是兴趣导向的,所以压力并不大。
因为有兴趣,所以我会很想充分理解一切细节。
又因为理解,所以许多原本片片断断的知识都可以渐渐互相融会贯通,累积技术能量,理论和实务之间的藩篱被打破了,学习效率倍增。
学习并快乐着!
3.敢于挑战
不安于现成的程序,要敢于用多种方法实现一个目的。
现在的网
络科技很发达,想要一个源程序的确很简单,所以很多人都是在自己都不明白题目要求时,就可以在网上搜到一模一样的代码,根本没有自己的东西。
挑战自我是项艰巨的任务。
只有坚持自己多看代码多写程序才会有更多的收获。
4.不懈追求
要对源代码进行不断地完善,要尽可能地实现课题所要求的功能。
对初学者来说,大量地写程序是必要的,但过了某个阶段之后,写程序所带来的技术能力成长已经到了极限,还不如多花一点时间看书,学新技术和新观念。
可以从实现源程序功能着手,比如添加写模块啊什么的,实现更多功能。
看着自己编的程序能成功运行,这样自己会更感兴趣,也就会乐此不疲。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 学生管理系统 学生 管理 系统