欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    学生选课系统C#(完美终结版)(共41页).doc

    • 资源ID:13879538       资源大小:6.08MB        全文页数:41页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    学生选课系统C#(完美终结版)(共41页).doc

    精选优质文档-倾情为你奉上 电子信息工程 专业课程设计题单 班级 学生 朱振华 课程名称 专业课程设计 课 题 学生选课系统 设计要求 利用Visual C#和SQL sever(或者 Access)的开发环境实现一个学生选课系统,数据库中要包含学生、课程、选课等表。课 题 发 给 日 期 2011.6.11 课程设计完成日期 2011.6.20 指 导 教 师 评语: 评分: 摘 要本文设计并实现了一个简单的学生选课系统,它是学生选课的平台,含登陆界面,三种角色(学生用户、教师用户、教务员)在输入正确密码的前提下方能进入系统。进入系统后学生可以在这个平台进行选课、查看所选课程以及成绩,教师可以查看个人资料,学生信息以及成绩录入和查看,教务员可以查看个人资料、学生信息,更改成绩。系统设计的目的是方便选课的顺利进行。学生选课系统具有以下特点: ·用户登录按角色进行登录;·学生可以根据要求和自身条件选择自己喜欢的学科;·教师可以查看学生资料以及登分等;·教务员可以查看学生、教师、以及自己的资料,更改学生成绩等。本系统后台数据库采用SQL Server2000,前台采用C#作为开发工具。 本系统的主要功能包括以下几个方面:· 用户登录以及密码修改· 学生选课以及相关查询· 教师登分以及相关查询· 教务员可以更正学生分数以及做其相应工作关键字: 信学生选课 数据库 C# SQL Server Access目 录一 系统概述 3二 系统设计 102.1系统设计思想 102.1系统功能模块划分 10三 数据库设计113.1数据库需求分析 113.2数据库概念结构设计 113.3数据库逻辑结构设计 12四 模块分析及设计 144.1登录界面实现 14 4.1.1登录(含密码修改)界面设计 144.1.2登录(含密码修改)界面设计代码 154.2学生用户界面 19 4.2.1学生主界面 194.2.2选课列表及本次选课结果界面 224.2.3个人信息及选课要求界面 264.3教师用户界面 29 4.3.1教师用户登录主页面 294.4教务员界面 30 4.4.1教务员登录主页面 33五 课程调试 38六 课程总结 39七、课程总结 40一 系统概述1.1 系统功能与应用背景 随着社会的进步,作为代表科学前沿的学生所学的课程也在不断增加。相应的公共任选课业越来越多。为了解决上述问题,本系统提供了一套学生选课管理的平台,使得教务管理人员对学校的选课工作得以改善。 1.2 系统预览(学生部分) 图1-1为学生选课系统的登陆界面,由相应的学生用户、教师用户、教务员正确输入用户名和密码以及选择正确的相应角色后方可成功登陆。成功登陆后系统转至相应的程序主界面。图1-1 系统登陆窗体 图1-2 登录异常(密码错误) 图1-3 修改密码时出错(两次输入密码不同)图1-4 修改密码(密码不可见) 图1-5 学生进入选课系统的主界面 图1-6 学生个人信息 图1-7 选课要求图1-8 选课列表 图1-9 选课进行中图1-10 查看选课结果图1-11退出登录 二 系统设计2.1 系统设计思想本系统采用C#作为开发语言,采用结合后台Access数据库开发模式,优化了程序的代码及结构,提高了程序的运行效率。实例在.NET环境中进行开发,该环境提供了大量可供选择的对象,可以很方便地建立与数据库之间的连接,并在此链接的基础上,利用各种常用数据组件对数据库进行操作。 在本系统中,采用OleDbConnection对象与后台数据库创建连接,所有针对数据库的操作都需要利用这个对象作为数据库连接对像。2.2 系统功能模块划分根据本文开始部分描述的系统功能可以得到如图2-1所示的系统功能图。学生选课系统用户登录修改密码重置退出登录修改员工删除员工个人信息选课列表选课结果选课要求添加收入浏览收入修改收入删除收入学生用户教务员浏览员工个人信息教师用户图2-1 系统功能图三 数据库设计3.1 数据库需求分析 在设计数据库结构时,应该尽可能满足用户提出的各项要求,同时避免冗余数据的产生。由于在学生选课系统中需要采集大量的信息,包括课程信息、学生信息、教师信息、教务员信息等,如果不能有效合理的组织数据表的结构以及每张表所包含的字段,那么在后期进行数据整理及汇总时,将增加开发人员的工作难度和工作量,根据学生和课程的基本信息及相关特点,可以总结出一下规律:· 一个学生可以选择多门课程· 一个教师只能教一门课· 每个· 每个员工都有自己对应的月收入· 一个角色对应一个或多个用户3.2 数据库概念结构设计 根据数据库需求分析的结果,就可以确定程序中所包含的实体与实体之间的关系,作为数据库逻辑结构设计的基础与指导。根据本系统的需要,可以归纳出一下实体:工种信息实体、部门信息实体、员工信息实体、员工月收入实体。为了更好地理解各个实体及其含义,用E-R图(Entity Relationship Diagram),即实体关系图对实体进行描述。 用户实体如图3-1所示; 课程实体如图3-2所示; 用户年龄密码性别角色电话 用户名图3-1 工种息实体图课程地点起止时间任课教师课程号课程名学分 图3-2 课程实体图3.3 数据库逻辑结构设计系统数据库名称为db_Person,数据库中包括: 登录表; course表; student表; xuanke表。 下面列出各个表的数据结构,如表1-表4所示。表1 登录表的数据结构字段名类型说明用户名文本主键密码文本性别文本"男"or "女"年龄文本角色文本表2 course表的数据结构字段名类型说明CID文本主键CName文本CWeekStart文本CWeekEnd文本CTName文本CAddress文本CTime文本表3 xuanke表的数据结构字段名类型说明SIDchar一起设为主键CIDchar表4 student表的数据结构字段名类型说明SID文本设为主键SAge文本SSex文本SKey文本SPhone文本四 模块分析及设计4.1.登录界面实现4.1.1 登录界面(含密码修改)设计 登录界面的作用就是让不同的用户能够凭密码进入相应界面。在登录界面中,包括三个控件,分别是textBox控件、label控件,comboBox、Button控件。图4-1 主界面设计图4-2 密码修改4.1.2 登录界面代码即密码修改代码登录界面的全部代码如下所示。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.OleDb;/这个头文件不能少,不然无法调用Access数据库namespace WindowsApplication1 public partial class Form1 : Form public static string name = "" /定义全局变量为后续窗口调用登录用户名做铺垫 public Form1() InitializeComponent(); private void button1_Click(object sender, EventArgs e) OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=D:学生选课.mdb");/连接到数据库(学生选课.mdb) conn.Open(); /打开连接 OleDbCommand comm = new OleDbCommand();/创建OleDbCommand对象 comm.Connection = conn;/以上代码连接并打开数据库 comm.CommandText = "select * from 登录where 用户名='" + textBox1.Text + "'"/根据登录界面输入的信息去查询数据库内容 OleDbDataReader dr; dr = comm.ExecuteReader(); /执行链接 if (dr.Read() = true) if (dr"密码".ToString() = textBox2.Text && dr"角色".ToString() = comboBox1.Text)/登录角色以及密码正确进入以下判断 name = textBox1.Text; /将登录用户名暂赋全局变量name if (dr"角色".ToString() = "学生用户") / 学生用户跳转 this.Hide(); Form2 aa = new Form2(); aa.Show(); else if (dr"角色".ToString() = "教师用户")/教师用户跳转 this.Hide(); Form3 aa = new Form3(); aa.Show(); else / 教务员跳转 this.Hide(); Form4 aa = new Form4(); aa.Show(); else /登录角色或密码错误,报错 MessageBox.Show("登录角色错误或密码错误!"); else /无法从数据库中调到用户资料,说明无此用户,报错 MessageBox.Show("无此用户!"); conn.Close(); /关闭连接 private void button2_Click(object sender, EventArgs e) /重置各textBox的内容 textBox1.Text = "" textBox2.Text = "" comboBox1.Text = "学生用户"/角色对应内容重置为"学生用户" private void button3_Click(object sender, EventArgs e)/跳到修改密码界面 this.Hide(); Form5 aa = new Form5(); aa.Show(); 密码修改界面代码: private void button2_Click(object sender, EventArgs e) this.Hide(); Form1 aa = new Form1(); aa.Show(); private void button1_Click(object sender, EventArgs e) string n = Form1.name; OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=D:学生选课.mdb"); conn.Open(); OleDbCommand comm = new OleDbCommand(); comm.Connection = conn;/以上代码连接并打开数据库 comm.CommandText = "select * from 登录where 用户名='" + textBox4.Text + "'"/根据登录界面输入的信息去查询数据库内容 OleDbDataReader dr; dr = comm.ExecuteReader(); if (textBox5.Text = "王锦明") if (dr.Read() = true) if (dr"密码".ToString() = textBox1.Text && textBox1.Text = textBox2.Text && textBox3.Text != "") MessageBox.Show("恭喜你,密码修改成功!"); else if (textBox1.Text != textBox2.Text) MessageBox.Show("两次输入密码不相同!"); else if (textBox3.Text = "") MessageBox.Show("修改密码不能为空!"); else MessageBox.Show("恭喜,出错啦!"); else MessageBox.Show("答案不正确哦!"); conn.Close(); 4.2 学生界面4.2.1 学生登录主界面4.2.1学生界面主界面 图4-1 学生界面界面设计学生界面应用到的控件有MenuStrip。主界面的全部代码如下所示。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1 public partial class Form2 : Form public Form2() InitializeComponent(); private void Form2_Load(object sender, EventArgs e) string n = Form1.name; textBox1.Text= n ; /将登录用户调入以显示某某用户进入本系统 textBox1.ReadOnly = true; /该 textBox1为只读 textBox2.Text = "朱振华" /将制作者即本人留名 textBox2.ReadOnly = true; /该 textBox2为只读 private void 退出登录ToolStripMenuItem_Click(object sender, EventArgs e)/退出登录返回到登陆界面 if (MessageBox.Show("确定退出登录吗?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Exclamation) = DialogResult.OK) /再次确定是否要退出系统 this.Hide(); Form1 aa = new Form1(); /跳到登录界面 aa.Show(); private void 个人信息ToolStripMenuItem_Click(object sender, EventArgs e)/跳到个人信息页面,显示个人信息 this.Hide(); Form7 aa = new Form7(); aa.Show(); private void 选课列表 ToolStripMenuItem_Click(object sender, EventArgs e)/跳到选课列表 this.Hide(); Form9 aa = new Form9(); aa.Show(); private void 选课要求ToolStripMenuItem_Click(object sender, EventArgs e)/调到选课要求 this.Hide(); Form8 aa = new Form8(); aa.Show(); private void 本次选课结果ToolStripMenuItem_Click(object sender, EventArgs e)/调到本次选课结果 this.Hide(); Form10 aa = new Form10(); aa.Show(); 4.2.2选课列表及本次选课结果界面选课界面应用控件有:Button、GroupBox(容器控件)、label、listBox。图4-2 学生选课列表图4-3 学生选课进行中图4-4 选课结果查询选课列表代码(示意):1、选课 private void button1_Click(object sender, EventArgs e)/选课示意 string g = Form1.name; string mystr,mysql; OleDbConnection myconn = new OleDbConnection(); OleDbCommand mycmd = new OleDbCommand(); mystr = "Provider = Microsoft.Jet.OLEDB.4.0;" + "Data Source =D:学生选课.mdb" myconn.ConnectionString = mystr; myconn.Open();/打开连接 mysql = "INSERT INTO xuanke VALUES(g,'1')"/将课程号为1的课添加到表选课中 mycmd.Parameters.Add("a", OleDbType.VarChar, 10).Value =n; mycmd.CommandText = mysql; mycmd.Connection = myconn; mycmd.ExecuteNonQuery(); /执行连接 myconn.Close();/关闭连接 MessageBox.Show("恭喜你,选课成功!");/若选课成功,则提示 2、删除选课private void button11_Click(object sender, EventArgs e) string g = Form1.name; string mystr,mysql; OleDbConnection myconn = new OleDbConnection(); OleDbCommand mycmd = new OleDbCommand(); mystr = "Provider = Microsoft.Jet.OLEDB.4.0;" + "Data Source =D:学生选课.mdb" myconn.ConnectionString = mystr; myconn.Open(); mysql = "DELETE FROM xuanke WHERE CId='1'"/删除已选课程号为1的课程 mycmd.CommandText = mysql; mycmd.Connection = myconn; mycmd.ExecuteNonQuery(); myconn.Close(); MessageBox.Show("恭喜你,删除成功!"); 3、 返回查看结果 this.Hide(); Form10 aa = new Form10(); aa.Show();4、 本次选课结果 private void button1_Click(object sender, EventArgs e)/返回主界面(学生主页) this.Hide(); Form2 aa = new Form2(); aa.Show(); private void button2_Click(object sender, EventArgs e)/显示该生所选课程 string g = Form1.name; string mystr, mysql; OleDbConnection myconn = new OleDbConnection(); OleDbCommand mycmd = new OleDbCommand(); mystr = "provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=D:学生选课.mdb" myconn.ConnectionString = mystr; myconn.Open(); mysql = "SELECT * FROM course WHERE CId =g"/从course表中选出该同学已经选了的课 mycmd.CommandText = mysql; mycmd.Connection = myconn; OleDbDataReader myreader = mycmd.ExecuteReader(); listBox1.Items.Add("="); /遍历显示 while (myreader.Read() listBox1.Items.Add(String.Format("0t1t2t3t4", myreader0.ToString(), myreader1.ToString(), myreader2.ToString(), myreader3.ToString(), myreader4.ToString() ) ); myconn.Close(); myreader.Close(); InitializeComponent(); 4.2.3 个人信息及选课要求界面图4-5 学生选课要求图4-6 学生个人信息1、 个人信息代码private void Form7_Load(object sender, EventArgs e)/从学生选课数据库中调取相应信息显示 string n = Form1.name; OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=D:学生选课.mdb");/创建连接 conn.Open();/打开连接 OleDbCommand comm = new OleDbCommand();/创建OleDb

    注意事项

    本文(学生选课系统C#(完美终结版)(共41页).doc)为本站会员(飞****2)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开