学生成绩管理系统实验报告
VFP实验--学生成绩管理系统

实验一建立项目管理器、建立数据库和表、输入部分数据一、实验目的1.熟悉V isual Foxpro 项目管理器的使用;2.熟悉数据库的概念和V isual Foxpro 数据表的概念;3.掌握数据表的建立方法,数据直接输入的方法;4.熟练掌握表文件的打开、浏览、关闭。
二、实验内容;1.建立项目管理器“学生成绩管理系统”2.建立数据库“成绩库”,并创建4个与学生成绩管理系统工作密切相关的数据表“班级号名”、“学生”、“学生选课”、“课程”;3.直接为“班级号名”、“课程”两个数据表输入数据。
三、实验步骤(一)Visual Foxpro 基本操作1. Visual Foxpro 的启动开始→程序→ Visual Foxpro 6.0,或:双击桌面V isual Foxpro 6.0 快捷方式图标。
2. Visual Foxpro 的退出在V isual Foxpro 的命令窗口中键入q uit 或选V isual Foxpro 菜单中文件→退出。
13.工作目录及表单区域的设置·在机房的学生数据盘(例如D:盘)上建一目录,命名为“成绩管理”。
·进入V isual Foxpro,选菜单中的工具→选项→“文件位置”选项卡,找到“默认目录”,如图1-1。
图1-1 选择默认目录·点击“修改”按钮,进入图1-2,再单击按钮,按图1-2 设置后,单击“确定”按钮。
·单击“表单”选项卡,将“最大设计区”选为 1024×768。
·单击“设置为默认值”按钮,再单击“确定”按钮。
注意:如果学生机房安装了还原卡,则每次上机或重新启动后都要重新进行以上第3步“工作目录及表单区域的设置。
”(二)项目管理器和数据库的建立21.项目管理器(1)什么是项目管理器项目管理器是V isual Foxpro 开发应用系统的综合性平台,在这里可以建立数据库、表单、菜单、程序、编译等。
C语言程序设计学生成绩管理系统实验报告

移通学院C语言程序设计报告书设计名称:学生成绩管理系统专业:指导老师:班级:姓名:学号:座号:时间一、实验目的1.在编辑应用程序过程中,逐步加深对C语言编程的理解;2.加强实践的能力,动手能力,同时进一步对所学的知识进行巩固;3.培养初步编程的能力,为以后的学习奠定基础;二、实验内容运用所学的C语言知识编辑一个应用程序:学习成绩管理系统三.系统软件环境:本程序主要运行在: Visual C++ 6.0Turbo C/C++ 3.0四.课程设计题目:学生成绩管理系统程序说明:有N个学生,每个学生的数据包含学号不重复、姓名、三门课的成绩及平均成绩,试设计一学生成绩管理系统,使之能提供以下功能:1主菜单2各菜单项功能①成绩录入:输入学生的学号、姓名及三门课的成绩;②成绩查询:按学号查询学生记录;③成绩统计:计算学生的平均分;根据学生的平均分高低,对学生的数据进行排序后输出;④退出系统:退出整个系统即主菜单;五.数据结构设计描述:↓int num; /定义学号,变量为整型/char name; /定义姓名,变量为字符型/int score; /定义课程的成绩,变量为整型/float average; /定义平均分,变量为浮点型/七.系统各函数的功能,、相互调用关系1.函数实现功能说明:1menu函数是定义一个菜单函数,其功能在于输出菜单界面供使用者选择;2input函数是定义用于输入学生信息;3select 函数是定义用于查询学生信息;包括学号、姓名及各科成绩;4statistics 函数计算学生的平均分;根据学生的平均分高低,对学生的数据进行排序输出;2.相互调用关系:Main函数调用menu函数;Menu 函数可以调用input 函数、select函数和statistics 函数八.心得体会C语言是一种较为基础和普遍的编程语言,应用相当广泛,这次课程设计的要求与C语言的广泛应用相比较还有很大的差距;我们对于C语言的理解和使用还处在一个初级的阶段,我们要想掌握它,要学习的还很多,同时要懂得创新,许多的编程方法都是人们一步一步总结出来的,我想我们也要努力拓展自己的思维,努力去寻求新的方法,以创造出更为完善的应用程序; 九.程序:include <stdio.h>include <stdlib.h>include <conio.h>define N 3 /学生人数/define M 3 /课程门数/struct student{int num; /学号/char name20; /姓名/int score3; /三门课成绩/float average;}stuN; /学生数/void input; /查询/void select; /统计/void menu;void input{int i,j;printf"\t\t①成绩录入\n\n";fori=0;i<N;i++{printf"请输入学号:";scanf"%d",&stui.num;printf"请输入姓名:";scanf"%s",&;forj=0;j<M;j++{printf"第%d门成绩的分数:",j+1;scanf"%d",&stui.scorej;}printf"\n\n";}printf"\n\n";printf"输入完毕按任意键返回主菜单";}/2.查询/void selectint no{int i;printf"学生%d号: \n",no; printf"学号: %d\n",stuno-1.num; printf"姓名: %s\n",;for i=0;i<M;i++{printf"第%d门课程的成绩为: ",i+1; printf"%d\n",stuno-1.scorei;}printf"\n按任意键返回主菜单";getch;}/3.统计/void statistics{float temp=0;int i=0;/学生成绩平均分/temp=0;printf"\t\t③成绩统计\n\n";forj=0;j<N;j++{fori=0;i<M;i++{temp=temp+stuj.scorei;}stuj.average=temp/N;printf"\n学生%s的成绩平均成绩为:",;printf"%0.2f分",stuj.average;temp=0;}/排序/for j=0;j<N;j++fori=0;i<N-j-1;i++ifstui.average<stui+1.average{ temp=stui.average;stui.average=stui+1.average;stui+1.average=temp;}printf"\n\n学生平均成绩前三名:";fori=0;i<3;i++{printf"\n第%d名:%0.2f分",i+1,stui.average;}printf"\n\n按任意键返回主菜单";getch;}void menu{ int num=0;int n=0;printf"\n\t\t\t学生成绩管理系统\n\n";printf"\n\t\t\t①成绩录入\n\t\t\t②成绩查询\n\t\t\t③成绩统计\n\t\t\t④退出系统\n";printf"\t\t\tchoose:";scanf"%d",#switchnum{case 1:system"cls";input;break;case 2:system"cls";printf"\t\t②成绩查询\n\n"; printf"请输入要查询的学生号1~3:";scanf"%d",&n;selectn;break;case 3:system"cls";statistics;break;case 4:exit0;default:;}}void main{while1{system"cls"; /清屏/menu;}}。
成绩管理系统实验报告

成绩管理系统实验报告成绩管理系统实验报告一、引言近年来,随着教育信息化的发展,成绩管理系统逐渐成为学校管理和教育教学的重要工具。
本实验旨在设计和实现一套成绩管理系统,以提高学校成绩管理的效率和准确性。
二、系统设计与实现1.需求分析在进行系统设计之前,我们首先进行了对学校成绩管理的需求分析。
通过与学校管理人员和教师的沟通,我们了解到他们对成绩管理系统的期望主要包括:成绩录入、查询、统计、分析等功能。
2.系统架构基于需求分析的结果,我们设计了一个分层架构的成绩管理系统。
系统包括三个主要模块:学生信息管理模块、成绩录入与查询模块、成绩统计与分析模块。
每个模块都有相应的功能和界面。
3.数据库设计为了存储和管理学生的成绩信息,我们设计了一个关系型数据库。
数据库中包含学生信息表、课程信息表、成绩信息表等。
通过合理的表结构和关联,实现了学生信息与成绩信息的关联和查询。
4.界面设计为了提高用户的使用体验,我们注重界面的友好性和简洁性。
通过使用合适的颜色、布局和图标,使得用户能够方便地进行成绩录入、查询和统计等操作。
5.系统实现我们使用了Java语言和MySQL数据库来实现成绩管理系统。
通过使用Java的面向对象特性和MySQL的数据库操作,我们成功地实现了系统的各个功能模块。
三、系统功能介绍1.学生信息管理模块该模块主要用于管理学生的基本信息,包括学号、姓名、性别、年龄等。
教师可以通过该模块进行学生信息的录入、修改和删除等操作。
2.成绩录入与查询模块该模块用于录入和查询学生的成绩信息。
教师可以通过该模块录入每个学生的课程成绩,并可以根据学号或姓名进行成绩的查询和修改。
3.成绩统计与分析模块该模块用于对学生的成绩进行统计和分析。
教师可以通过该模块查看某门课程的平均分、最高分、最低分等统计结果,并可以生成相应的报表。
四、实验结果与分析通过对成绩管理系统的实际使用和测试,我们得出了以下实验结果和分析:1.系统的功能完善性经过实验,我们发现成绩管理系统的各个功能模块都能够正常运行,并且能够满足学校管理人员和教师的需求。
VB学生成绩查询统计系统实验报告

学生成绩查询系统一、实习任务 (2)二、系统分析 (3)三、系统设计 (4)四、调试、排错、测试、试运行过程 (7)五、源程序完整或主要代码 (10)六、总结与体会 (17)七、参考文献 (18)一、实习任务1实习任务介绍:熟悉软件工程学的基本思想进行软件开发的原则和方法;结构化分析方法和步骤;结构化编程方法;面向对象的思想和程序设计方法。
按照软件开发的一般方法和步骤动手设计一个《学生成绩查询统计系统》。
2基本要求:①登录界面:密码最多尝试3次,连续3次均输入错误系统自动退出。
②具有录入成绩、添加记录、删除记录、修改记录功能。
③具有成绩查询功能,可以按照学号、课程号、课程名、分数段进行查询。
为便于查询,所有的学号和课程号可考虑以下拉列表的形式给出。
④具有全部成绩浏览功能,且能与数据库表最新数据同步。
⑤具有统计功能,能以直方图、饼图、折线图、散点图、立体直方图直观表示各成绩段的分布情况。
⑥具有打印学生成绩报表的功能。
⑦具有菜单和工具条的双重操作功能。
3 实习目的:掌握常用控件的使用,学会使用通用对话框控件进行编程,掌握创建多重窗体程序的有关技术,了解鼠标和键盘事件及事件过程的编写,综合应用了所学知识,加深对VB的理解。
4 选题的背景及意义:VB是Visual Basic的简称,是由美国微软公司于1991年开发的一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发 Windows 环境下的各类应用程序。
它简单易学、效率高,且功能强大可以与 Windows 专业开发工具SDK相媲美。
在Visual Basic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的广泛应用程序接口(API)函数,动态链接库(DLL)、对象的链接与嵌入(OLE)、开放式数据连接(ODBC)等技术,可以高效、快速地开发Windows环境下功能强大、图形界面丰富的应用软件系统。
学生信息管理系统实验报告

一、实验目的1. 熟悉学生信息管理系统的基本功能和操作流程。
2. 掌握数据库设计的基本方法,能够根据需求设计合理的数据库结构。
3. 熟悉编程语言和开发工具,能够编写简单的数据库应用程序。
4. 提高团队合作能力和沟通能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 数据库:MySQL 5.74. 编程语言:C#三、实验内容1. 需求分析学生信息管理系统主要用于对学生信息进行管理,包括学生基本信息、成绩、课程、班级等。
系统应具备以下功能:(1)学生信息管理:增加、删除、修改、查询学生信息。
(2)成绩管理:录入、修改、查询学生成绩。
(3)课程管理:增加、删除、修改、查询课程信息。
(4)班级管理:增加、删除、修改、查询班级信息。
(5)统计分析:对学生成绩、课程等进行统计分析。
2. 数据库设计根据需求分析,设计如下数据库表:(1)学生信息表(student)字段名 | 数据类型 | 说明--- | --- | ---id | int | 学生编号(主键)name | varchar(50) | 学生姓名gender | varchar(10) | 性别age | int | 年龄class_id | int | 班级编号(外键)(2)成绩表(score)字段名 | 数据类型 | 说明--- | --- | ---id | int | 成绩编号(主键)student_id | int | 学生编号(外键)course_id | int | 课程编号(外键)score | float | 成绩(3)课程表(course)字段名 | 数据类型 | 说明--- | --- | ---id | int | 课程编号(主键)name | varchar(50) | 课程名称credit | int | 学分(4)班级表(class)字段名 | 数据类型 | 说明--- | --- | ---id | int | 班级编号(主键)name | varchar(50) | 班级名称3. 系统设计(1)界面设计采用Windows窗体应用程序,界面包括以下部分:- 主界面:展示系统功能菜单。
学校管理系统实验报告(3篇)

第1篇一、实验目的本次实验旨在通过设计和实现一个学校管理系统,提高学校管理工作的效率和质量。
通过本实验,学生能够掌握数据库的基本操作、编程语言的使用以及系统设计的流程,从而培养学生的实际操作能力和综合应用能力。
二、实验内容1. 需求分析- 确定系统功能:包括学生信息管理、教师信息管理、课程信息管理、成绩管理、教务管理等。
- 确定系统用户:包括学生、教师、教务管理员等。
2. 系统设计- 数据库设计:设计学生表、教师表、课程表、成绩表等。
- 界面设计:设计用户登录界面、学生信息管理界面、教师信息管理界面等。
3. 系统实现- 数据库实现:使用MySQL数据库创建数据库和表。
- 编程实现:使用Java或Python等编程语言编写系统代码。
- 界面实现:使用Swing或Tkinter等图形界面库设计用户界面。
4. 系统测试- 功能测试:测试各个功能的正确性和稳定性。
- 性能测试:测试系统在高并发情况下的性能表现。
- 安全测试:测试系统的安全性,防止非法用户访问。
三、实验步骤1. 需求分析阶段- 通过查阅相关资料,了解学校管理的基本流程和需求。
- 与学校管理人员沟通,确定系统需要实现的功能。
2. 系统设计阶段- 使用E-R图或数据库设计工具设计数据库结构。
- 设计系统界面原型,确定用户界面布局。
3. 系统实现阶段- 使用数据库设计工具创建数据库和表。
- 使用编程语言编写系统代码,实现各个功能模块。
- 使用图形界面库设计用户界面。
4. 系统测试阶段- 编写测试用例,对系统进行功能测试、性能测试和安全测试。
- 根据测试结果,对系统进行修改和完善。
四、实验结果1. 系统功能实现- 学生信息管理:包括学生信息的增删改查、成绩查询、班级管理等。
- 教师信息管理:包括教师信息的增删改查、课程安排等。
- 课程信息管理:包括课程信息的增删改查、选课管理等。
- 成绩管理:包括成绩的录入、查询、统计等。
- 教务管理:包括教务工作的安排、通知发布等。
学生成绩管理系统数据库设计实验报告

学生成绩管理系统数据库课题: 雇员信息管理系统姓名:学号:同组姓名:专业班级:指导教师:设计时间:2012年6月4号----2012年6月10日一、需求分析阶段1.信息需求对学校而言,学生成绩管理系统是所有工作的首要之选,但是高校学生的成绩管理工作量大、繁杂,人工处理非常困难。
因此,借助于强大计算机的处理能力,能够把人从繁重的成绩管理工作中解脱出来,并且更加准确、安全、清晰的管理环境。
2.功能需求能够进行数据库的数据定义、数据操纵、数据控制等处理功能。
具体功能应包括:系统应该提供课程安排数据的添加、插入、删除、更新、查询;成绩的添加、修改、删除、查询,学生及教职工基本信息查询的功能。
3. 安全性与完整性要求对于学生成绩管理系统数据库来讲,由于其主要数据是学生成绩,只能由本人以及所教老师及教务处知道,因此做好数据安全性是重中之重。
另外,要求所有在校学生的信息都要录入其中,并且要设计好个别情况。
二、概念结构设计阶段概念结构设计阶段是整个数据库设计的关键,它通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。
设计成绩管理数据库包括学生、成绩、课程、教师四个关系。
E-R图如下三、详细设计阶段详细结构是独立于任何一种数据模型的信息结构。
详细结构的任务是把概念结构设计阶段设计好的基本E-R图转化为宜选用的DBMS所支持的数据模型相符合的逻辑结构,并对其进行优化。
E-R图向关系模型转化要解决的问题是如何将实体型和实体间的联系转化为关系模式,如何确定这些关系模式的属性和码。
设计学生成绩管理数据库,包括课程、学生、教师、成绩四个关系, 其关系模式中对每个实体定义的属性如下:课程信息表Class:(课程号,课程名,教师号,学分,学时)学生信息表Student1:(学号,姓名,性别,年龄,专业,系别)成绩表Score:(学号号,课程名,成绩)教师表Teacher1:(教师号,教师名,教师性别,教师系别)2、学生信息表(student1)四、数据库实现数据库实施是指建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。
软件工程 学生管理系统 实验报告

软件工程学生管理系统实验报告1. 引言学生管理系统是一种常见的软件应用程序,用于在学校或教育机构中管理学生的信息和相关任务。
本实验旨在设计和开发一个简单的学生管理系统,并使用软件工程的方法进行需求分析、设计、编码和测试。
2. 需求分析在进行系统设计之前,我们首先对需求进行分析。
学生管理系统应具备以下功能: - 学生信息维护:包括学生的基本信息(姓名、学号、性别等)以及其他详细信息(联系方式、家庭住址等); - 成绩管理:记录学生的考试成绩,并提供成绩统计功能; - 课程管理:管理学生的选课和退课操作; - 学生出勤记录:记录学生的课堂出勤情况。
3. 设计基于需求分析,我们设计了以下系统结构: - 用户界面(UI):提供用户与系统进行交互的界面,包括菜单、表单等;- 控制层(Controller):处理用户请求,调用逻辑层进行相应的处理; - 逻辑层(Service):实现系统的业务逻辑,包括学生信息管理、成绩管理、课程管理和出勤记录管理等; - 数据访问层(DAO):负责与数据库进行交互,对数据进行增删改查操作。
4. 编码在实际开发过程中,我们使用Java编程语言进行开发,并采用了Spring Boot框架、MyBatis框架和MySQL数据库。
具体的编码过程包括以下几个步骤: 1. 创建项目:使用Spring Initializr创建一个新的Spring Boot项目; 2. 定义实体类:定义学生、成绩、课程和出勤记录等实体类,并使用注解标注属性和关联关系; 3. 实现控制层:编写Controller类,处理用户请求,并调用逻辑层进行相应的处理; 4. 实现逻辑层:编写Service类,实现系统的业务逻辑; 5. 实现数据访问层:编写DAO类,使用MyBatis框架对数据库进行操作; 6. 配置数据库连接:在application.properties文件中配置数据库连接信息; 7. 测试和调试:使用JUnit等工具进行单元测试,并调试程序,保证系统的正常运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
洛阳理工学院课程设计报告课程名称数据库课程设计设计题目学生成绩查询系统专业计算机科学与技术班级 B100506 学号姓名孙帅杰完成日期2013年1月6号课程设计任务书设计题目:学生成绩管理系统设计内容与要求:设计内容:教务员可以输入学生、教师、班级、课程信息,一个班级只属于一个专业,一个学生只属于一个班级。
教务员负责输入每个专业、每个班级需要学习哪些课程,指定课程的任课教师。
一个教师可以教授多个班的多门课程。
教师可以查看学习该课程的学生名单。
课程结束后,教师可以录入课程成绩。
课程分两类,必修课和选修课。
学生可以选修课程,每学期几门。
学生可以查看自己各门课程的成绩。
学生还可以进行评教,给老师打分。
系统管理员可以输入教室信息,并结合班级、课程、教室信息实现自动排课。
设计要求:要求完成需求分析,写出功能需求和数据需求描述;在需求分析的基础上完成数据库的概念结构设计、逻辑结构设计、物理结构设计;用C#语言,完成管理系统的部分程序模块的界面设计。
指导教师:陶荣2012年12月28日课程设计评语成绩:指导教师:年月日目录1.绪论 (1)1.1 设计目的 (1)1.2 开发工具选择 (1)1.3 开发环境 (1)1.4 本报告的主要内容 (1)2.需求分析 (1)2.1 需求分析的任务 (2)2.2 功能需求 (2)2.3 数据需求 (3)3.总体设计 (3)3.1设计概述 (3)3.2系统总体结构及功能模块划分 (3)3.3系统数据库概念结构设计 (4)3.4 逻辑结构设计 (5)4.主程序设计 (7)4.1 登录模块 (7)4.2 学生信息查询、保存、及修改 (8)4.3 用户管理 (10)5.设计总结 (11)6.心得体会 (12)参考文献 (12)1.绪论1.1 设计目的随着学生的数量的日益增多,学校对学生成绩管理的要求也越来越高,因此学校对学生信息的管理也更系统化,数字化,为了提高学生的实际应用数据库的能力,使学生锻炼简单的数据库开发能力,因此决定设计一个简单的学生成绩管理系统,包括学生信息,课程信息,以及成绩信息和任课教师信息,能够存储相应学生评教信息,和课程安排提供的学生成绩管理各种功能分为面向学生,教师和教务员三部分,其中教务员可以录入学生,教师,班级,课程信息,每个专业、每个班级需要学习哪些课程,指定课程的任课教师,给每个班的每门课程安排指定的认课老师。
教师可以查看学习该课程的学生名单。
课程结束后,教师可以录入课程成绩。
课程分两类,必修课和选修课。
学生可以选修课程,每学期几门。
学生可以查看自己各门课程的成绩,进行评教,给老师打分。
该学生成绩管理系统类似于简单的学校教务系统,能对学校日常事务进行简单的管理。
本课程设计的目的是使学生能熟练掌握简单的简单Windows窗体应用程序的设计和的应用,希望通过本次课程设计锻炼学生使用C#语言解决实际问题的能力。
1.2 开发工具选择本系统后台数据库采用Microsoft SQL Server 数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大,效率高;前台采用Microsoft 公司的Visual Studio 2010作为主要开发工具,可与SQL Server 2008数据库无缝链接。
1.3 开发环境系统开发平台:Microsoft Visual Studio2010系统开发语言:C#数据库管理软件:SQL Server 20081.4 本报告的主要内容本报告详细的介绍了学生成绩管理系统的开发过程,主要涉及到的工作如下:系统的需求分析、系统的总体设计、系统的概念设计、系统部分模块的详细设计。
2.需求分析进行数据库设计首先必须准确了解与分析用户需求(包括数据与处理)。
求分析是整个设计过程的基础,作为“地基”的需求分析是否做得充分与准确,决定了在其上构建数据库大厦的速度与质量。
需求分析做的不好,甚至会导致整个数据库返工重做,因此对用户需求进行正确,合理的分析是至关重要的。
2.1 需求分析的任务需求分析是在于弄清用户对数据库应用系统的确切需求。
明确有哪些用户,主要实体之间的联系和信息;需要保存哪些信息,即是创建表的内容,在此基础上明确登录用户能实现哪些功能操作。
学生成绩管理系统有三类登录用户:教务员、教师、学生。
需要实现的功能和操作如下:(1)教务员可以录入学生、教师、班级和课程信息,可以安排每个专业每个班级需要学习那些课程,可以为每门课程安排任课教师,可以结合每个班的必修课的开课情况,以及教授相应课程的任课教师情况对各个班级各门课程指定相应的任课教师,并且对所有的这些信息拥有查看和录入权限。
(2)教师可以查看自己所教授的必修课的班级及学生信息,并且可以查看选修自己所教授的选修课的学生名单。
课程结束后,教师可与录入学生成绩,包括学生的必修课成绩和选修课成绩。
(3)学生可以查看本学期所开设的所有选修课的详细情况,并可以查看相应的选修课的任课教师,然后结合自己想选修的课程,及想选修哪个老师开的这门课的情况选定课程。
登录系统后学生还可以查看自己各门课程的成绩。
包括选修课成绩及必修课成绩。
最后学生可以对教自己课程的所有认可教师进行评教。
2.2 功能需求我们的系统需要实现的功能主要包括以下几个方面:(1)设计不同用户的操作权限和登录方法。
(2)教务员可以录入班级、课程、学生和任课教师的信息;安排专业必修课,给任课教师安排课程;给每个班级每门课制定任课教师。
(3)教师可以查询所授课程的学生信息,可以录入所授课程的学生的成绩。
(4)学生有评教和查询个人成绩信息的权利。
(5)用户界面的直观性和成绩查询结果的可视化。
满足上述要求的系统应该包括以下几个模块:基本数据维护功能;数据库管理功能;基本业务功能。
基本数据维护功能如下:(1)录入学生的信息。
(2)录入学生的成绩信息。
(3)录入课程信息。
(4)录入任课教师信息。
(5)录入班级详细信息。
(6)查询结果的可视化管理。
数据库管理功能如下:(1)成绩信息管理。
(2)帐户信息管理。
基本业务功能(1)查看成绩信息。
(2)录入成绩信息。
2.3 数据需求通过调查,总结出用户对数据的需求如下:(1)学生信息包括:学号、学生姓名、性别、年龄、登录密码,班级。
(2)课程信息包括:课程号、课程名、学分、课程性质(必修或选修)。
(3)专业信息包括:专业号、系别、专业类别(理科、工科或文科)。
(4)教师信息包括:教师工号、姓名、年龄、性别、登录密码。
3.总体设计3.1设计概述根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。
把这些模块结合起来组成一个整体。
逐一实现各个功能。
3.2系统总体结构及功能模块划分经过对系统的需求分析,学生信息管理系统主要划分为三个部分:学生信息查询,学生信息管理,学生成绩录入三个功能模块。
系统的总体结构如图3-1所示。
(1如图3-2(2)3-3所示。
图3-3 3.3系统E-R 图系统白。
(13-4所示(2(3)3-6所示(4) 3-7所示(5)课程实体包括课程号、课程名、学分、课程性质即分类等属性,实体图如图3-8所示整体E-R3.4(1)将式。
课程(课程号,课程名,学分,分类)此为课程实体对应的关系模式。
排课(课程号,工号)此为联系“排课”对应的关系模式。
选修(学号,课程号,工号)此为联系“选修”对应的关系模式。
必修(专业号,课程号)此为联系“必修”对应的关系模式。
评教(学号,工号,课程号,评分)此为联系“评教”对应的关系模式。
考试(学号,课程号,成绩)此为联系“考试”对应的关系模式。
担任(班号,工号,课程号)此为联系“担任”对应的关系模式。
(2)物理模型设计学生信息表具体有学号,姓名,性别,系名,专业,出生日期,如表3-1所示表3-1学生信息表教师信息具体有教师号,姓名,性别,院系,专业,联系电话,如表3-2所示表3-2教师信息表管理员信息具体有用户名、密码、用户级别,如表3-3所示表3-3管理员信息表课程表信息具体有课程号,课程名,学分,教师,如表3-4所示表3-4课程表信息成绩表具体有学号,课程号,成绩,如表3-5所示表3-5成绩表4.主程序设计4.1登录模块根据不同的用户身份进入系统,查询相关信息,图4-1为用户登录界面。
图4-1用户登录界面源代码:private void btnOK_Click(object sender, EventArgs e){if""){belInfo.Text = "请输入您的用户名!";}else if""){belInfo.Text = "请输入您的密码!";}else{Command com = new Command();string str = @"select * from UserInfo where userId = '""'";DataTable table = com.GetDataSet(str);if{belInfo.Text = "用户名不存在!";txtBoxUser.Text = "";txtBoxPsw.Text = "";return;}str = @"select * from UserInfo where userId = '""' and passWard = '""'";DataTable tableUser = com.GetDataSet(str);if{_currentUser = txtBoxUser.Text;_currentPsw = txtBoxPsw.Text;IsLogin = true;this.Close();}else{belInfo.Text = "密码错误!";txtBoxPsw.Text = "";}}}4.2学生信息查询、保存、及修改对学生成绩等信息的查询,图4-2为查看学生信息界面,图4-3为学生信息显示界面。
图4-2 查看学生信息界面图4-3 学生信息显示界面源代码:protected virtual void frmViewInfo_Load(object sender, EventArgs e){thisthisDataGridViewColumn col = null;col = new DataGridViewTextBoxColumn(); = "stuNum";col.HeaderText = "学号";thiscol = new DataGridViewTextBoxColumn(); = "name";col.HeaderText = "姓名";thisDataGridViewComboBoxColumn col0 = new DataGridViewComboBoxColumn();col0.FlatStyle = FlatStyle.Flat;col0.HeaderText = "性别"; = "sex";"男");"女");thiscol = new DataGridViewTextBoxColumn(); = "birthday";col.HeaderText = "出生年月";thiscol = new DataGridViewTextBoxColumn(); = "nation";col.HeaderText = "民族";thiscol = new DataGridViewTextBoxColumn(); = "address";col.HeaderText = "籍贯";thiscol = new DataGridViewTextBoxColumn(); = "phone";col.HeaderText = "联系电话";thiscol = new DataGridViewTextBoxColumn(); = "classid";col.HeaderText = "班级";thiscol = new DataGridViewTextBoxColumn(); = "intoSchoolDate";col.HeaderText = "入学时间";thiscol = new DataGridViewTextBoxColumn(); = "Sdept";col.HeaderText = "系别";this}public virtual void SetFromText(){if (OperTypeOfBill == TypeOfOperationForBill.nView){this.Text = "查看学生信息";}else{this.Text = "编辑学生信息";}}if (com.ExecuteCommand(sql) > 0){SelectStudentInfo();MessageBox.Show("数据修改成功!");}4.3用户管理用户可以根据自己的需求来实现密码修改等功能。