课程设计(大作业)报告课程名称:C#语言程序设计设计题目:学生成绩管理系统院系:信息技术学院班级:计算机科学与技术3班设计者:严亮学号:201211010324指导教师:朱军设计时间:2014.12.29-2015.1.2信息技术学院目录课程设计(大作业)报告...............................................................................................................1昆明学院课程设计(大作业)任务书...........................................................................................1课程设计题目:.......................................................................................................................1课程设计要求:.......................................................................................................................1工作计划及安排:...................................................................................................................1课程设计(大作业)成绩...............................................................................................................2课程设计题目:.......................................................................................................................2总结:.......................................................................................................................................2指导教师评语:.......................................................................................................................2成绩:.......................................................................................................................................2设计报告..........................................................................................................................................3一、需求分析...................................................................................................................3二、总体设计...................................................................................................................3三、详细设计...................................................................................................................4四、编码...........................................................................................................................7五、测试的步骤和内容.................................................................................................23六、课程设计总结.........................................................................................................24七、参考资料.................................................................................................................241/24昆明学院课程设计(大作业)任务书姓名:严亮院(系):信息技术学院专业:计算机科学与技术学号:201211010324任务起止日期:2014.12.29-2015.1.2课程设计题目:《学生成绩管理系统》课程设计要求:设计一程序,使之能提供以下功能:1.要求利用C#语言面向过程的编程思想来完成系统的设计。2.突出C#语言的面向对象特征,以多个类现每一个子功能。3.画出功能模块图。4.写出程序,并调试程序,要给出测试数据和实验结果。5.进行简单界面设计,能够实现友好的交互。6.具有清晰的程序流程图和数据结构的详细定义。7.熟练掌握C#语言对数据库访问的各种操作。8.实验环境要求:VisualStuudio2010或VisualStuudio2005。工作计划及安排:课程设计时间为一周或两周,分五个阶段完成:1.分析设计:明确设计要求,找出实现方法,完成需求分析和总体设计。2.详细设计:编写各模块对应函数和主函数,编写C#代码。3.编码调试阶段:测试运行程序、调试代码,找出不足和错误,修改并改善。4.总结报告阶段。总结设计工作,写出课程设计说明书。5.考核阶段。指导教师签字2014年12月31日2/24课程设计(大作业)成绩学号:201211010324姓名:严亮指导教师:朱军课程设计题目:《学生成绩管理系统》总结:1.了解了项目开放的流程。2.知道了一些C#常见的错误。3.了解了查找资料和调试的思想。4.加固了对而外知识的了解(如SQL语句,软件配置文档)。5.团队合作的重要性指导教师评语:成绩:填表时间:指导教师签名:3/24设计报告源码和文档下载:提取码92d5一、需求分析通过C#实现对学生成绩的管理和学生信息的管理二、总体设计(一)登录窗口(用例图)(二)注册实现(三)同学模块1.看成绩2.查课程表3.改密码4.改个人信息5.文本方式保存信息(四)老师模块1.显示所有学生信息2.改个人密码3.改学生信息4.改学生成绩5.添加学生6.删除学生7.学生登录错误次数清零(五)数据库结构设计4/24(六)系统层次图三、详细设计(一)功能设计:(1)登录窗口①实现用户名光标移出时就能检测用户名是否存在②实现登录错误次数只能三次5/24③可是实现学生和教师登录的切换(2)注册窗口①用户名的检测,如果已有此用户,提示不能注册②对两次密码是否相同做检测(3)学生模块①主窗体1.现实学生的个人信息(如:学号、出生日期、姓名、性别、专业和国籍等)②保存个人信息1.通过文本的方式保存个人信息③保存成绩1.通过文本的方式保存个人成绩④刷新初始化页面1.通过在不同的条件下对一些数据的修改之后页面没有更新而实现刷新2.可以通过按键F5在主页面上刷新⑤密码修改1.修改密码对两次密码的检测⑥个人信息的修改1.在点击的时候就把初始化数据显示在窗口上⑦成绩的现实⑧课程表的实现1.窗口加载前就对班级进行确定,并且显示本班的课程表⑨关于界面(4)教师模块①主窗体1.显示学生信息2.对班级的选择和智能的排序能做到嵌套筛选后排序3.能对学生所有字段的内容做智能的检索②保存当前页面1.可以把本窗口中的信息保存成文本格式(把筛选信息也要加到文本提示中)③刷新④修改登录密码(和学生一样)⑤修改学生信息1.通过输入学号检索学生信息并且现实2.对修改后的属性有初始化功能⑥修改或者上传课程表1.通过工具栏对课程表班级的切换2.班级直接具备初始化的内容的过程⑦修改或者上传同学成绩6/241.通过学学号检索成绩⑧删除同学1.删除同学时有警告操作⑨添加学生⑩错误次数的清零1.实现所有同学错误次数为3的进行清零,以便可以登录(二)数据库设计(1)学生表(T_Student)字段类型约束IdintPrimarykey,自增Numnvarchar(50)nullPasswordnvarchar(20NotnullNamenvarchar(10)nullBirthdaydatetimenullSexnvarchar(1)nullXueyuannvarchar(20)nullZhuanyenvarchar(20)nullPhonenvarchar(20)nullZhenzhinvarchar(10)nullClassnvarchar(20)外键(班级表的主键),notnullMathintnullChineseintnullEnglishintnullC#intnullJavaintnullSqlintnullErrortimesintnullAddressnvarchar(50)null(2)班级表(T_Class)字段类型约束Classnvarchar(20)Primarykey(3)教师表(T_Teacher)字段类型约束IdintPrimarykey,自增Numnvarchar(50)nullPasswordnvarchar(20)nullNamenvarchar(10)nullErrortimesintnull(4)课程表(T_Kb)7/24字段类型约束IdintPrimarykey,自增Classnvarchar(20)外键(班级表的主键),notnullXq1_1nvarchar(30)NullXq1_2nvarchar(30)null………(5)省表(Province)字段类型约束ProvinceIDintPrimarykeyNamenvarchar(50)Notnull(6)市表(City)字段类型约束CityIDintPrimarykeyProvinceIDint外键,省表(ProvinceID)Namenvarchar(50)Notnull四、编码(一)登录窗体①点击登录privatevoidbtlngin_Click(objectsender,RoutedEventArgse)1.判断选择的是否是学生(是跳转2,否跳转9)2.通过文本框中值到学生表中查找是否有本用户名(有跳转3,无跳转8)3.判断错误次数是否大于3(是跳转4,否跳转5)4.提示登录次数过多5.判断密码框中的数据库中本用户名密码是否相同(相同跳转6,不相同跳转7)6.在数据库中吧错误次数清零,把学号传到学生窗口的num字段,把登录窗口关闭的同时打开学生窗口7.提示剩余登录次数,并且把数