C学生成绩管理系统课程设计报告

上传人:无*** 文档编号:97065380 上传时间:2022-05-26 格式:DOC 页数:24 大小:658.50KB
返回 下载 相关 举报
C学生成绩管理系统课程设计报告_第1页
第1页 / 共24页
C学生成绩管理系统课程设计报告_第2页
第2页 / 共24页
C学生成绩管理系统课程设计报告_第3页
第3页 / 共24页
点击查看更多>>
资源描述
XXXXX学院c#课程考查项目题目: 学生成绩信息管理系统专业班级:学生姓名:XX年XX月XX日目录摘 要 1第一章绪论 21.1设计目的 21.2开发工具选择 21.3开发环境 21.4本报告的主要内容 2第二章需求分析 32.1系统需求简介 32.1.1 系统目标 3功能需求分析 3性能需求分析 3第三章总体设计 43.1设计概述 43.2系统总体结构及功能模块划分 4学生信息查询模块 4学生信息管理模块 53.3系统数据库概念结构设计 53.3.1 系统 E-R 图 5系统数据库的设计 63.4安全保密设计 7用户登录安全性 7第四章详细设计 84.1概述 84.2系统程序流程图 84.3系统主要功能模块简介 94.3.1 系统登录 9学生信息查询模块 9学生信息管理模块 10音乐播放器 12第五章主要功能模块代码 155.1公共类代码设计 155.2登录界面代码设计 165.3查询模块代码设计 175.4添加模块代码设计 185.5更新模块代码设计 195.6删除模块代码设计 195.7图片显示代码设计 195.8播放器打开代码设计 20第六章课程设计心得 22C#学生成绩管理系统摘 要本文描述的是基于 Windows环境的学生信息管理系统,主要功能模块包括: 学生信查询,学生信息管理,学生成绩录入,主要工具Microsoft Visual Studio 2010设计窗体,SQL server2008建立数据库,实现学校信息管理的各个功能。本篇报告介绍一个学生信息管理系统的从分析到设计最后到开发的全过程 为,给出了学生信息管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。涉及到学生信息管理的基本功能在本报告中都有相应的描 述。第一章 绪论1.1设计目的本课程设计的目的是使学生能熟练掌握简单的简单Win dows窗体应用程序的设计和ADO.net的应用,希望通过本次课程设计锻炼学生使用C#语言解决实际问题的能力。1.2开发工具选择本系统后台数据库采用Microsoft SQL Server数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2010作为主要开发工具,可与SQL Server 2008 数据库无缝链接。1.3开发环境系统开发平台: Microsoft Visual Studio2010系统开发语言:C#数据库管理软件:SQL Server 20081.4本报告的主要内容本报告详细的介绍了学生信息管理系统的开发过程,主要涉及到的工作如 下:系统的需求分析、系统的总体设计、系统的概念设计、系统各模块的详细设 计、系统运行与测试。第二章需求分析2.1系统需求简介系统目标(1)根据查询条件实现学生信息的查询(2)学生选课信息查询、成绩信息的查询(3)学生信息、课程信息、成绩信息的增加、删除、修改(4)对基本信息完成增加、删除、修改时,需注意表与表之间的关联功能需求分析本系统的功能需求分析如下:(1)学生信息查询:学生可以根据学号、姓名、专业进行查询(2)学生信息管理:主要是用于学生信息更新、插入、删除;(3)学生成绩录入:用于学生成绩管理,录入学生成绩,也可以更新;性能需求分析(1)登录、用户界面需求:简洁、易懂、易用、友好的用户界面。(2)安全保密性需求:只有凭借用户名和密码登陆系统,才能进行信息的管 理等。第三章总体设计3.1设计概述根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。把这些模块结合起来组成一个整体。逐一实现各个功能;3.2系统总体结构及功能模块划分经过对系统的需求分析,学生信息管理系统主要划分为三个部分:学生信息查询,学生信息管理,学生成绩录入三个功能模块。如图系统的总体结学生信息管理系统学生信息查询学 生 成 绩 录学 生 信 息 管 理图系统的总体结构学生信息查询模块学生信息查询:学生可以根据姓名、性别进行查询。如图学生信息查询模块结构。学生信息查询性姓别名查查询询图学生信息管理模块结构322学生信息管理模块学生信息管理: 理模块结构。主要是用于学生信息更新、插入、删除,如图3.2.3学生管学生信息管理绩更新基本信息更新成绩录入基本信息录入图 3.2.3学生信息管理模块结构3.3系统数据库概念结构设计根据对数据项与数据结构的分析,设计出能够满足系统需求的各种实体,及 它们之间的关系,为后面的逻辑结构设计打下基础。系统E-R图系统E-R图可以将各个实体之间的关系显示出来,将各个实体间的属性依赖 表示明白。如图系统E-R图结构。图331系统E-R图结构332系统数据库的设计综合以上分析,要实现上面的所有功能模块,主要设计表如下:表 用户表(usedata)列名数据类型弁许Nul值理id5 ntBusernamevarchar50)團userpswvarchar50)El表学生表(S)列名敎据类型允许NuN值昨idhtBNamemvarchar(5O)ElSexrru-archar(5O)Englishmt圈ChinesemtMathintImgvarbinaryfMAX)ElAn3.4安全保密设计用户登录安全性只有当用户输入系统设计了登录界面,每个合法用户有用户名及一个密码,正确的用户名及密码组合后才能够对学生信息进行操作。第四章详细设计4.1概述详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统, 也就是 说,经过这个阶段的设计工作,应该得出目标系统的精确描述, 从而在编码阶段 可以把这个描述直接翻译成用某种程序设计语言书写的程序。4.2系统程序流程图程序流程图又称为程序框图,它是历史悠久使用最广泛的描述软件设计的方法。它可将整个程序的总体流程清楚明白的显示出来。如图系统总流程图 结构图系统总体流程图4.3系统主要功能模块简介系统登录用户界面用户凭借用户名及密码登录,成功登录后可对学生信息进行操作如图用户登录界面所示回用户容:密码:图4.3.1用户登录界面学生信息查询模块学生信息查询:在程序主界面(如图 432 程序主界面)学生可以根据学 号、姓名进行查询。学生也可以只用一种条件进行信息查询,也可以多个条件查 询。单击记录任一单元格可显示学生的更详细信息 (如图433详细信息窗口)日文件 尺褊辑 vxm曲帮助 纶退出就绪 当前用户:Ewi KziWfa:制作人:Ewi and隹理请选捽一个操押图432程序主界面湄号姓名性别英语语文数学19090902卑B999993吴淸男88888814235577TT15弓丘卑99888TIT傻蛋男17aa66律大奔男88毎772199887723女aa997725秀吉女88999928aa里666666图433详细信息窗口433学生信息管理模块学生信息管理:通过右击程序主界面的相应记录弹出的上下文菜单(如图434上下文菜单)可对当前选定学生信息进行详细信息查询(如图 详细信息窗口)、 修改信息(如图435修改信息窗口)、删除信息(如图436 删除信息提示)。更新 时如果输入的学号不存在,可选择是否添加学生信息。通过程序主界面的新建信 息记录可添加学生信息(如图 添加信息窗口)、条件筛选(如图438),可 按性别查询和学生姓名查询 。C文件F编辑TTM曲帮助张退出增加删除修改mAx l&l编号123141517图上下文菜单图435修改信息窗口图436删除信息提示IS回姓名:F图片:性别: 男 衣打开.确定取消图437添加信息窗口图438查询音乐播放器音乐播放:当用户登录成功,进入主窗口之后,会很明显的看到一个播放器,如图439所示,在播放器的下面有三个按钮,可以实现打开(图4310),播放/暂停,和默认音乐图439图 4310歌词流动显示:进入主界面后可以看到右边有一块区域(图4311),这里便是显示歌词的当打开的音乐搜索不到歌词的话,会显示(图4312)让用户自己去下载歌词.presen 家门科 打ther .mi rie for us 包耀 rfrom t 卸向我 吧d myyoung for you为你年轻)Sundays coming i jwann 周末,我想开箸丽豕 to your apartment w i 带着礼物如流星礙衣到 forecaster sa i d the 预报员说今天会有暴毎 but j know the sun w 但是我知遒阳光将为義 oh lazy seagulI :fM 殴*海鸥从黄昏巴 r dress my jeans 3 我穿有我的牛仔裤超 + L i; + t% Imi r fiWironkey banana铤 JIz h J- I : ridChI图 图 4312第五章主要功能模块代码5.1公共类代码设计n amespace MyHelper class SqlHelperpublic staticread only stri ng conn str =Con figurati onMan ager.Conn ecti on Stri ngsdbconnstr .ConnectionString;public static int ExecuteNonQuery( string cmdText, params SqlParameter parameters)using ( SqlConnection conn = new SqlConnection (connstr) conn. Ope n();using ( SqlCommancfcmd = conn.CreateCommand()cmd.Comma ndText = cmdText;retur n cmd.ExecuteN on Query();public static object ExecuteScalar( string cmdText, params SqlParameter parameters)using ( SqlConnection conn = new SqlConnection (connstr) conn. Ope n();using ( SqlCommancfcmd = conn.CreateCommand()cmd.Comma ndText = cmdText;retur n cmd.ExecuteScalar();public static DataTable ExecuteDataTable( string cmdText,params SqIParameter parameters)using ( SqlConnection conn = new SqlConnection (connstr)conn. Ope n();using ( SqlCommancfcmd = conn.CreateCommand()cmd.Comma ndText = cmdText;using ( SqlDataAdapter adapter = new SqlDataAdapter (cmd) DataTable dt = new DataTable ();adapter.Fill(dt);return dt;public static SqlDataReader ExecuteDataReader( string cmdText, params SqlParameter parameters)SqlConnection conn = new SqlConnection (connstr);conn. Ope n();using ( SqlCommancbmd = conn.CreateCommand()cmd.Comma ndText = cmdText;return cmd.ExecuteReader( CommandBehavio.CloseConnection);5.2登录界面代码设计private void logi n_Click(object sen der, Even tArgs e) /用户名及密码组合判断if(username.Text.ToStri ng().Trim()password.Text.ToStri ng().Trim() !=)!=Illi&if (txtUserName.Text = Ewi | txtUserName.Text =强强”)if (txtPsw.Text =111)MessageBoxShow(”登录成功!,”提示?,MessageBoxButtons .OK, MessageBoxIcon.lnformation);DialogResult =DialogResult .OK;elseMessageBoxShow(密码错误,您还有” + i +次机会.);i-;elseMessageBoxShow(”亲,没有此用户名”);5.3查询模块代码设计QueryFrm query = new QueryFrm();if (query.ShowDialog() = DialogResult .OK)DataTable dt = SqlHelper .ExecuteDataTable( select id as 编 号,Name as 姓名,Sex as 性别,English as 英语,Chinese as 语文,Math as 数学from T_Student where name = name , new SqlParameter (name query.Name);dataGridView1.DataSource = dt;elseMessageBoxShow(”没有找到您所查询的结果, 请重新查询,”提示,MessageBoxButtons .OK, MessageBoxIcon.lnformation); 5.4添加模块代码设计if (txtName.Text.Trim()= txtChi.Text.Trim()= txtE ng.Text.Trim()= txtMath.Text.Trim()=Illi|IlliIlliIlli|)MessageBoxShow(请将信息填写完整,警告?,MessageBoxButtons .OK, MessageBoxIcon.lnformation); return ;elseif (rbMale.Checked)SqlHelper .ExecuteNonQuery( insert intoT_Stude nt( name,sex,e nglish,math,chi nese)values( name,sex,E ng,Math,Chi)new SqlParameter (name txtName.Text),new SqlParameter (Eng:Con vert .Tol nt32(txtE ng.Text),new SqlParameter (sex,:男 D),new SqlParameter (Chi,Con vert .Tol nt32(txtChi.Text),new SqlParameter (Math,Con vert .Tol nt32(txtMath.Text);elseSqlHelper .ExecuteNonQuery( insert intoT_Stude nt( name,sex,e nglish,math,chi nese)values( name,sex,E ng,Math,Chi)new SqlParameter (name txtName.Text),new SqlParameter (Eng:txtE ng.Text),new SqlParameter (sex,女?),new SqlParameter (Chi, txtChi.Text),new SqIParameter (Math,txtMath.Text);MessageBoxShow(”添加成功?);DialogResult =DialogResuIt .OK;this .Close();5.5更新模块代码设计void LoadDataGradView()DataTable dt = SqlHelper .ExecuteDataTable( select id as 编号 ,Name as 姓名,Sex as 性别,English as 英语,Chinese as 语文,Math as 数学from T_Student);dataGridViewl.DataSource = dt;dataGridViewl.Selectio nM ode =DataGridViewSelectio nM ode .FullRowSelect;5.6删除模块代码设计DialogResult drCurr = MessageBoxShow(确定删除?,提示?. MessageBoxButtons .OKCancel, MessageBoxIcon.Question);if ( DialogResult .OK = drCurr)SqlHelper .ExecuteNonQuery( delete T_Student where id = id new SqlParameter (id ,selectId);LoadDataGradView();5.7图片显示代码设计void Get_Img( int id)byte imagebytes =null ;SqlDataReader dr = SqlHelper .ExecuteDataReader( select * from T_Stude nt where id= +id);while (dr.Read() try imagebytes = (byte )dr.GetValue(6);MemoryStream ms = new MemoryStream(imagebytes); Bitmap bmpt = new Bitmap (ms);catch ( Exception )stri ng strImgFile =Applicati on .StartupPath;strImgFile = strImgFile.Substri ng(0,strlmgFile.LastlndexOf();strImgFile = strImgFile.Substri ng(0, strImgFile.LastIndexOf();strImgFile = strImgFile +default.jpg ;/MessageBox.Show(strlmgFile);5.8播放器打开代码设计private void btnOpen_Click( object sender,EventArgs e)OpenFileDialog ofd = new OpenFileDialog (); ofd.Filter =*.mp3|*.mp3|*.wma|*.wma;if (ofd.ShowDialog() = DialogResult .OK).wma)timer2.Stop(); elseMessageBoxShow(本版本暂不支持此格式 ?);第六章课程设计心得为期一周的课程设计结束了,在老师和同学的帮助下,我基本完成系统的 设计。我按照系统工程软件设计的要求,从需求分析,概念设计,总体设计, 详细设计,系统测试等各个步骤,分步完成系统的各项任务,实现了系统中的 学生信息查询,学生信息更新,学生信息添加等模块的功能。在这短短的五天里我收获如下:1、巩固和加深了对C#的理解,提高综合运用本课程所学知识的能力。2、培养了我选用参考书,查阅手册及文献资料的能力。培养独立思考,深 入研究,分析问题、解决问题的能力。3、通过实际编译系统的分析设计、编程调试,掌握应用软件的分析方法和 工程设计方法。根据我在课程设计中遇到的问题,我将在以后的学习当中注意以下几点:1、认真上好专业实验课,多在实践中锻炼自己。2、写程序的过程中要考虑周到,严密。3、在做设计的时候要有信心,有耐心,切勿浮躁。4、认真的学习课本知识,掌握课本中的知识点,并在此基础上学会灵活运 用。5、在课余时间里多写程序,熟练掌握在调试程序的过程中所遇到的常见错 误,以便能节省调试程序的时间。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 压缩资料 > 基础医学


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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