c#学生课程管理系统

c#学生课程管理系统
c#学生课程管理系统

《面向对象程序设计》综合作业报告

专业班级:类19-7班姓名:刘一一学号: 190702140509

时间: 2020.06.20 一、作业题目要求:

基于面向对象的程序开发思想,结合C#窗体应用程序开发步骤,采用https://www.360docs.net/doc/dc2841280.html,访问数据库相应组件,构建完成一套学生成绩系统。学生成绩系统是学校教务系统中不可缺少的一个子系统,它涉及到学生、课程等信息的结合。本套学生成绩系统主要包括以下四个功能模块,具体功能要求如下:

1、登录模块

登录模块提供用户登录界面,用户输入正确的用户名和密码后,则可进入系统主窗口(即导航页面),从而可以选择进入相应的子系统。

2、学生信息模块

学生信息模块主要用户管理学生的基本信息,包括学号、姓名、性别、年龄和所在系,能对学生信息进行添加、删除和修改等操作。

3、课程信息模块

课程信息模块主要用于管理课程信息,包括课程号、课程名、学分和学时,能对课程信息进行添加、删除和修改等操作。

4、成绩信息模块

成绩信息模块主要用于管理学生成绩的录入及查询。

二、数据库设计:

本节根据前面对学生成绩系统的分析,介绍创建SqlServer数据库、数据表以及数据表之间的关系的方法和步骤。

2.1数据表结构

基于SQL Server2008数据库管理系统构建数据库,根据作业题目要求共设计实现了四张表,分别是系统用户表、学生信息表、课程信息表以及成绩信息表。首先,我们登录数据库。如图2-1

其次,在数据库中建表,如图2-2

图2-2

1、系统用户表

系统用户表“tbl_User”用于存放系统用户的相关数据。其结构如图2.3所示。

图2-4

2、学生信息表

学生信息表“tbl_Student”结构如图2-4所示。

图2-4

3、课程信息表

课程信息表“tbl_Course”结构如图2-5所示。

图2-5

4、成绩信息表

成绩信息表“tbl_SC”结构如2.4所示。

图2-6

三、公共类设计

考虑到系统的各个模块(登录、学生信息管理、课程信息管理、成绩信息管理)都需要访问数据库,因此最好的方法是编写一些访问数据库的方法,如返回数据集的公共查询方法,执行数据操作的公共方法,并把它们放在一个公共的类(DataBase)中,然后在各模块中调用这些方法来实现对数据库的访问。

同样,在用户登录时,可能需要记录一些关于用户的信息,例如用户名、用户权限等,因此也需要使用到一些公共的静态变量,把这些变量放置在一个名为“ClassShared”的类中。

3.1添加DataBase公共类

首先为系统添加一个名为“DataBase”的公共类,用于存放访问数据库的公共方法。

添加公共类的方法和步骤如下:

(1)选择【项目】->【添加类】菜单项,将弹出【添加新项】对话框,保留默认的选择,在“名称”文本框中输入“DataBase”,如图3-1所示。

图3-1

(2)单击【添加】按钮,则类“DataBase”已经被添加到项目中,并自动切换到该类的代码窗口,

图3-2

(3)从图1-2可以看到,“DataBase”类默认的访问修饰符为空,而该类应该是公共的,因此需要给其添加访问修饰符“Public”,如图1-3所示。

图3-3

3.2 添加LoginUser公共类

类似于添加DataBase公共类那样,为项目添加一个名为“LoginUser”的公共类,用来存放一些公共的静态变量,以在窗体之间传递数据。添加的“LoginUser”公共类代码窗口如图3-4所示。

3.3 编写公共方法

代码如图所示:

四、系统窗体设计及功能代码编写

4.1 主窗体设计

1选择启动项[BOOKUITSXS]单击鼠标右键,[添加]——[添加新项],选择[windows窗体],在[新建项目]对话框的[名称]文本框中,输入项目名称“frmMain”,单击[确定]按钮进行项目文件保存路径的选择,也可以直接输入项目文件保存的路径,如下图4-1所示:

图4-1

2在主窗体中添加Label、GroupBox和Button等控件,并进行修改调整各个控件的大小位置,最终效果如下图4-2所示:

图4-2

4.2 登录窗体设计

1、选择启动项[BOOKUITSXS]单击鼠标右键,[添加]——[添加新项],选择[windows窗体],在[新建项目]对话框的[名称]文本框中,输入项目名称“Login.cs”,单击[确定]按钮进行项目文件保存路径的选择,也可以直接输入项目文件保存的路径,如下图4-3:

图4-3

2、默认选中[为解决方案创建目录]。

3、在frmUserLogin.cs窗体上添加标签、文本框及按钮,并对窗体属性进行修改,最终效果如下图4-4:

图4-4

4.3 学生信息管理窗体设计1、添加Windows窗体:

在BOOKUITSXS类库中添加一个新的Windows窗体frmStudent.cs。

2、设计窗体外观

在窗体添加控件,调整各个控件的大小和位置,设计窗体的属性;设计效果如图4-5

图4-5

4.4 课程信息管理窗体设计

1、添加Windows窗体:

在BOOKUITSXS类库中添加一个新的Windows窗体frmCourse.cs。

2、设计窗体外观

在窗体添加控件,调整各个控件的大小和位置,设计窗体的属性;设计效果如图4-6所示。

图4-6

4.4成绩管理窗体设计

1、添加Windows窗体:所用部分控件

在BOOKUITSXS类库中添加一个新的Windows窗体frmSC.cs。

2、设计窗体外观

在窗体添加控件,调整各个控件的大小和位置,设计窗体的属性;设计效果如图4-7所示

图4-7

4.5代码设计

4.5.1登录代码

namespace学生选课系统

{

public partial class Login : Form

{

public Login()

{

InitializeComponent();

}

private void btnOK_Click(object sender, EventArgs e)

{

try

{

DataSet ds = new DataSet();

DataBase db = new DataBase();

string sqlStr = string.Format("Select userPassword,userPurview from tbl_User where UserName = '{0}'", txtUserName.Text.Trim());

ds = db.GetDataFromDB(sqlStr);

判断输入的账户名密码是否相同

{

frmMain ob_FrmMain = new frmMain();

LoginUser._userName = this.txtUserName.Text.Trim();

LoginUser._userPassword = ds.Tables[0].Rows[0]["userPassword"].ToString();

LoginUser._userPurview = ds.Tables[0].Rows[0]["userPurview"].ToString(); ob_FrmMain.Show();

this.Hide();

}

Else//如果不相同,则提示错误

{

MessageBox.Show("用户名或密码错误,请重新输入!");

txtUserName.Text = "";

txtUserPassword.Text = "";

txtUserName.Focus();

}

}

catch

{

MessageBox.Show("用户名或者密码错误", "错误");

}

}

private void btnClose_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void txtUserPassword_KeyDown(object sender, KeyEventArgs e)

{

if (e.KeyCode == Keys.Enter)

{

btnOK_Click(sender, e);

}

}

}

}

4.5.2主窗体代码

namespace学生选课系统

{

public partial class Login : Form

{

public Login()

{

InitializeComponent();

}

private void btnOK_Click(object sender, EventArgs e)

{

try

{

DataSet ds = new DataSet();

DataBase db = new DataBase();

//string sqlStr = "Select userPassword,userPurview from tbl_User where UserName = '" + txtUserName.Text.Trim() + "'";

string sqlStr = string.Format("Select userPassword,userPurview from tbl_User where UserName = '{0}'", txtUserName.Text.Trim());

ds = db.GetDataFromDB(sqlStr);

if (ds.Tables[0].Rows[0].ItemArray[0].ToString() == txtUserPassword.Text.Trim())

{

frmMain ob_FrmMain = new frmMain();

//https://www.360docs.net/doc/dc2841280.html,erInfo[0] = txtUserName.Text.Trim();

//https://www.360docs.net/doc/dc2841280.html,erInfo[1] = ds.Tables[0].Rows[0].ItemArray[1].ToString();

LoginUser._userName = this.txtUserName.Text.Trim();

LoginUser._userPassword = ds.Tables[0].Rows[0]["userPassword"].ToString();

LoginUser._userPurview = ds.Tables[0].Rows[0]["userPurview"].ToString();

ob_FrmMain.Show();

this.Hide();

}

else

{

MessageBox.Show("用户名或密码错误,请重新输入!");

txtUserName.Text = "";

txtUserPassword.Text = "";

txtUserName.Focus();

}

}

catch

{

MessageBox.Show("用户名或者密码错误", "错误");

}

}

private void btnClose_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void txtUserPassword_KeyDown(object sender, KeyEventArgs e) {

if (e.KeyCode == Keys.Enter)

{

btnOK_Click(sender, e);

}

}

}

}

4.5.3学生信息管理代码

namespace学生选课系统

{

public partial class frmStudent : Form

{

public frmStudent()

{

InitializeComponent();

}

void objOpen()//设置标签为可输入

{

txtNo.Enabled = true;

txtName.Enabled = true;

txtAge.Enabled = true;

cmbSex.Enabled = true;

txtDept.Enabled = true;

txtNo.Focus();

}

void objClose()//设置标签为不可输入

{

txtNo.Enabled = false;

txtName.Enabled = false;

txtAge.Enabled = false;

cmbSex.Enabled = false;

txtDept.Enabled = false;

}

void Clear()//清除标签中输入的内容

{

txtNo.Text = "";

txtName.Text = "";

txtAge.Text = "";

cmbSex.SelectedIndex = -1;

txtDept.Text = "";

}

void RefreshData()

{

DataBase db = new DataBase();

DataSet ds = new DataSet();

comStr = "select * from tbl_Student";

ds = db.GetDataFromDB(comStr);

if (ds == null)

{

MessageBox.Show("没有任何学生记录!");

}

else

{

dgrdvStudent.DataSource = ds.Tables[0];

SetHeaderText();

}

}

void SetHeaderText()//将DataGridView数据控件(dgrdvStudent)中显示的学生信息具有更好的表达效果,将各列的标题改成相应的中文。因此编写SetHeaderText()方法,然后在修改dgrdvStudent控件的DataSource 属性后立即调用此方法,已达到修改列标题的效果

{

dgrdvStudent.Columns[0].HeaderText = "学号";

dgrdvStudent.Columns[1].HeaderText = "姓名";

dgrdvStudent.Columns[2].HeaderText = "性别";

dgrdvStudent.Columns[3].HeaderText = "年龄";

dgrdvStudent.Columns[4].HeaderText = "所在系";

}

private void frmStudent_Load(object sender, EventArgs e)

{

objClose();

RefreshData();

}

private void dgrdvStudent_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e) //选择不同的学生记录时,将学生信息显示在相应的文本框中

{

int n = this.dgrdvStudent.CurrentCell.RowIndex;

txtNo.Text = this.dgrdvStudent[0, n].Value.ToString();

txtName.Text = this.dgrdvStudent[1, n].Value.ToString();

cmbSex.SelectedItem = this.dgrdvStudent[2, n].Value.ToString();

txtAge.Text = this.dgrdvStudent[3, n].Value.ToString();

txtDept.Text = this.dgrdvStudent[4, n].Value.ToString();

}

private void btnAdd_Click(object sender, EventArgs e)//添加学生信息

try

{

if (btnAdd.Text.Trim() == "添加")

{

btnAdd.Text = "确定";

objOpen();

Clear();

btnUpdate.Enabled = false;

btnDelete.Enabled = false;

btnClose.Enabled = false;

dgrdvStudent.Enabled = false;

}

else

{

btnAdd.Text = "添加";

if (txtNo.Text.Trim() != null && txtName.Text.Trim() != null)//向数据库中注入学生信息

{

string sqlStr;

sqlStr = "insert into tbl_Student values ('" + txtNo.Text.Trim() + "','" + txtName.Text.Trim() + "','" + cmbSex.Text.Trim() + "','" + txtAge.Text.Trim() + "','" +

txtDept.Text.Trim() + "')";

DataBase db = new DataBase();

bool b;

b = db.UpdateDB(sqlStr);

if (b == true)

{

if (MessageBox.Show("添加成功!继续添加吗?", "添加", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

{

Clear();

objOpen();

btnAdd.Text = "确定";

}

else

{

objClose();

btnClose.Enabled = true;

btnDelete.Enabled = true;

btnUpdate.Enabled = true;

dgrdvStudent.Enabled = true;

}

}

else

{

}

}

else

{

MessageBox.Show("学号与姓名不能为空!");

txtNo.Focus();

btnAdd.Text = "确定";

}

RefreshData();

txtNo.SelectAll();

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

Clear();

objClose();

dgrdvStudent.Enabled = false;

}

}

private void btnUpdate_Click(object sender, EventArgs e)//修改学生信息 {

try

{

if (btnUpdate.Text.Trim() == "修改")

{

btnUpdate.Text = "确定";

btnAdd.Enabled = false;

btnDelete.Enabled = false;

btnClose.Enabled = false;

txtName.Enabled = true;

txtAge.Enabled = true;

cmbSex.Enabled = true;

txtDept.Enabled = true;

txtName.Focus();

}

else

{

btnUpdate.Text = "修改";

btnAdd.Enabled = true;

btnDelete.Enabled = true;

btnClose.Enabled = true;

objClose();

sqlStr = "Update tbl_Student set Sname='" + txtName.Text.Trim() + "',Ssex='" + cmbSex.Text.Trim() + "',Sage='" + txtAge.Text.Trim() + "',Sdept='" + txtDept.Text.Trim() + "' where Sno='" + txtNo.Text.Trim() + "'";

DataBase db = new DataBase();

db.UpdateDB(sqlStr);

RefreshData();

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

}

private void btnDelete_Click(object sender, EventArgs e)//删除学生信息

{

try

{

if (txtNo.Text.Trim() != "")

{

if (MessageBox.Show("确定要删除学生吗?", "删除", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

{

string sqlStr;

sqlStr = "delete from tbl_Student where Sno='" + txtNo.Text.Trim() + "'";

DataBase db = new DataBase();

db.UpdateDB(sqlStr);

RefreshData();

}

}

else

{

MessageBox.Show("没有可删除的记录!", "提示");

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

}

}

private void btnClose_Click(object sender, EventArgs e)

{

}

}

}

4.5.3课程信息管理代码

void SetHeaderText()//将DataGridView数据控件(dgrdvStudent)中显示的学生信息具有更好的表达效果,将各列的标题改成相应的中文。因此编写SetHeaderText()方法,然后在修改dgrdvStudent控件的DataSource属性后立即调用此方法,已达到修改列标题的效果

{

dgrdvCourse.Columns[0].HeaderText = "课程号";

dgrdvCourse.Columns[1].HeaderText = "课程名";

dgrdvCourse.Columns[2].HeaderText = "学分";

dgrdvCourse.Columns[3].HeaderText = "学期";

dgrdvCourse.Columns[4].HeaderText = "学时";

}

private void frmCourse_Load(object sender, EventArgs e)

{

ObjClose();

RefreshData();

}

private void dgrdvCourse_RowHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)//选择不同的课程记录时,将课程信息显示在相应的文本框中

{

int n = this.dgrdvCourse.CurrentCell.RowIndex;

txtNo.Text = this.dgrdvCourse[0, n].Value.ToString();

txtName.Text = this.dgrdvCourse[1, n].Value.ToString();

txtCredit.Text = this.dgrdvCourse[2, n].Value.ToString();

cmbSemester.SelectedItem = this.dgrdvCourse[3, n].Value.ToString();

txtPeriod.Text = this.dgrdvCourse[4, n].Value.ToString();

}

private void btnAdd_Click(object sender, EventArgs e)//添加课程信息

{

try

{

if (btnAdd.Text.Trim() == "添加")

{

btnAdd.Text = "确定";

ObjOpen();

Clear();

btnDelete.Enabled = false;

btnClose.Enabled = false;

dgrdvCourse.Enabled = false;

}

else

{

btnAdd.Text = "添加";

if (txtNo.Text.Trim() != null && txtName.Text.Trim() != null)

{

string sqlStr;

sqlStr = "insert into tbl_Course values ('" + txtNo.Text.Trim() + "','" + txtName.Text.Trim() + "','" + txtCredit.Text.Trim() + "','" + cmbSemester.Text.Trim() + "','" + txtPeriod.Text.Trim() + "')";

DataBase db = new DataBase();

bool b;

b = db.UpdateDB(sqlStr);

if (b == true)

{

if (MessageBox.Show("添加成功!继续添加吗?", "添加", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)

{

Clear();

ObjOpen();

btnAdd.Text = "确定";

}

else

{

ObjClose();

btnClose.Enabled = true;

btnDelete.Enabled = true;

btnUpdate.Enabled = true;

dgrdvCourse.Enabled = true;

}

}

else

{

return;

}

}

else

{

MessageBox.Show("课程号与课程名不能为空!");

}

RefreshData();

txtNo.SelectAll();

}

}

catch (Exception ex)

{

MessageBox.Show(ex.Message);

Clear();

ObjClose();

dgrdvCourse.Enabled = false;

}

}

private void btnUpdate_Click(object sender, EventArgs e)//修改课程信息

{

try

{

if (btnUpdate.Text.Trim() == "修改")

{

btnUpdate.Text = "确定";

btnAdd.Enabled = false;

btnDelete.Enabled = false;

btnClose.Enabled = false;

txtName.Enabled = true;

txtPeriod.Enabled = true;

cmbSemester.Enabled = true;

txtCredit.Enabled = true;

txtName.Focus();

}

else

{

btnUpdate.Text = "修改";

btnAdd.Enabled = true;

btnDelete.Enabled = true;

btnClose.Enabled = true;

ObjClose();

string sqlStr;

sqlStr = "Update tbl_Course set Cname='" + txtName.Text.Trim()+ "',Credit='"+txtCredit.Text.Trim() + "',Csemester='"+cmbSemester.Text.Trim() + "',Cperiod='"+txtPeriod.Text.Trim() + "'";

DataBase db = new DataBase();

选课系统的设计与实现

防灾科技学院 实习报告书 防灾科技学院灾害信息工程系 2015年制

实习所用软件简介: 系统的搭建平台选用的操作系统是Windows XP:Microsoft Windows XP是微软公司推出供个人电脑使用的操作系统,包括商用及家用的台式电脑等。2011年9月底前,Windows XP是世界上使用人数最多的操作系统,它的全球市场占有率达42%。2012年8月份,统治操作系统市场长达11年之久的Windows XP最终被Windows 7超越。 基于数据库的选课系统的数据管理所选得软件是SQL Server2008:SQL Server 2008 在Microsoft的数据平台上发布,可以组织管理任何数据。可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。可以对数据进行查询、搜索、同步、报告和分析之类的操作。SQL Server 2008 允许使用Microsoft .NET 和Visual Studio开发的自定义应用程序中使用数据,在面向服务的架构(SOA)和通过 Microsoft BizTalk Server 进行的业务流程中使用数据。信息工作人员可以通过日常使用的工具直接访问数据。 基于https://www.360docs.net/doc/dc2841280.html,的选课系统开发所选的开发工具 Visual Studio 2010:Microsoft Visual Studio 2010 是微软的一个综合性的应用程序生命周期管理工具套件,可供团队用于确保从设计到部署的整个过程都能取得较高质量的结果。无论是创建新的解决方案,还是改进现有的应用程序,都能针对不断增加的平台和技术(包括云和并行计算)将梦想变成现实。 基于系统的建模选择的画图软件viso:Office Visio 2007 是一款便于IT 和商务专业人员就复杂信息、系统和流程进行可视化处理、分析和交流的软件。使用具有专业外观的 Office Visio 2007 图表,可以促进对系统和流程的了解,深入了解复杂信息并利用这些知识做出更好的业务决策。Visio帮助创建具有专业外观的图表,以便理解、记录和分析信息、数据、系统和过程。使用 Visio 时,以可视方式传递重要信息就像打开模板、将形状拖放到绘图中以及对即将完成的工作应用主题一样轻松。

C语言课程设计-学生成绩管理系统-完整版

#include<> #include<> #include<> #include<> /* strcmp函数原型包含*/ #define N 100 /*定义最大学生人数为100*/ struct student /*学生结构体定义*/ { char no[11]; /*学号,10位*/ char name[10];/*姓名,3个汉字*/ char grade[10];/*班级*/ char pro[20];/*专业*/ float score[5];/*储存5门功课的成绩*/ float ave;/*储存平均分*/ int year;/*入学年*/ }stu[N]; int num; void panduani(int); /*通过i的值,判断信息要查找的信息是否存在*/ void output(); /*输出学生成绩函数(公共函数)*/ void init(); /*系统初始化函数*/ void newfile(); /*建立新的数据文件*/ void read1(); /*从数据文件中读取数据*/ void weihu(); /*维护界面函数*/ void new1(); /*新增一个学生成绩函数*/ void xiugai(); /*修改学生成绩*/ void xgcj(int); /*修改成绩*/

void delete1(); /*删除学生信息函数*/ void tongji(); /*统计界面函数*/ void tongji1(); /*计算每个学生平均分*/ void tongji2(); /*计算每门课程的平均分*/ void paixu1(); /*排序函数*/ void paino(); /*按学号排序*/ void paiave(); /*按平均分排序*/ void paidkcj(); /*按单科成绩排序*/ void change(int,int); /*交换结构体数组中的两个记录*/ void outputx(int); /*选择输出单科成绩*/ void find1(); /*查找界面函数*/ int find(char sno[]); /*按学号查找*/ int findname(char cname[]);/*按姓名查找*/ void findyear(int cyear); /*按入学年查找*/ void save(); /*保存文件*/ void stop(); /*停顿函数*/ void stop() /*停顿函数(公共函数)*/ { printf("Press Any Key To Continue...\n"); getchar(); } void output() /*输出学生成绩函数(公共函数)*/ { int i,j;

学生选修课信息管理系统软件工程导论课程设计

湖南人文科技学院计算机系 课程设计说明书 课程名称: 软件工程导论 课程代码: 题目: 学生选修课信息管理系统年级/专业/班: 09级计科2班 学生姓名: 赵浩胡碧山文盼聂惠俊杨晨学号: 09408237 ;09408207 ; 09408203; 09408250; 09408214 指导老师: 颜富强 开题时间: 2010年6月5日 完成时间: 2010年6月30日 2010年6月30日

课程设计任务书及成绩评定 课程名称: 软件工程导论 完成者: 赵浩胡碧山文盼聂惠俊杨晨 1、设计的目的与要求 1)加强学生的实践能力; 2)理解小型系统开发的基本步骤; 3)本系统的功能包括:选修课信息查询模块、注册模块、选修课信息管理模块(包括基本的添加、修改、删除功能)。 2、设计进度及完成情况 3、成绩评定 设计成绩:(教师填写) 指导老师:(签字) 2011 年月日

目录 第一章项目开发计划书 (1) 1.1引言 (1) 1.1.1编写目的 (1) 1.1.2背景 (1) 1.2项目概述 (1) 1.2.1工作内容 (1) 1.2.2主要参加人员 (2) 1.2.3产品 (2) 1.2.4服务 (2) 1.2.5验收标准 (2) 1.2.6本计划的批准者和批准日期 (2) 1.3实施计划 (2) 1.3.1工作任务的分配与人员分工 (2) 1.3.2进度 (3) 1.4支持条件 (3) 1.4.1计算机系统支持 (3) 第二章可行性分析 (4) 2.1可行性研究前提 (4) 2.2 对现有系统的分析 (4) 2.3 建议新系统 (4) 2.3.1 新系统说明 (4) 2.3.2 新系统的流程图 (5) 2.4经济上可行性 (5) 2.5技术可行性 (6) 2.6开发工具的选择 (6) 2.7 新系统的影响 (6) 2.8 结论 (6) 第三章需求分析 (7) 3.1市场需求分析 (7) 3.2系统功能性需求分析 (7) 3.2.1 功能划分 (7) 3.2.2 功能描述 (8) 3.2.2.1 学生注册信息模块 (8) 3.2.2.2 课程信息模块 (8) 3.2.2.3学生登录功能模块 (8) 3.2.2.5选课功能模块 (9) 3.2.2.4选修课查询模块 (9) 3.3 系统非功能性需求 (9) 3.3.1 可用性 (9) 3.3.2 可靠性 (9) 3.4数据字典 (9)

C++实现:简单的学生信息管理系统

<< endl << endl; cout << "按下1:进入学生信息管理系统." << endl; cout << "按下0:退出." << endl; cout << "-----------------------------------------------------" << endl<> flagOperateInformation; (); cout << endl; if (flagOperateInformation) EditMenu(); } } << endl; cout << "按下2:修改学生信息." << endl; cout << "按下3:删除学生信息." << endl; cout << "按下4:显示学生信息." << endl; cout << "按下5:按学号升序排序" << endl; cout << "按下6:读入已有信息(暂时没实现)" << endl; cout << "按下7:将信息输出(暂时没实现)" << endl; cout << "按下8:显示系统内所有学生的信息" << endl; cout << "按下0:返回上一级." << endl; cout << "--------------------------------------------" << endl << endl; cin >> flagContinueOperation; (); cout << endl; switch (flagContinueOperation) { case 1:AddStudentPersonalInformation(1); break; case 2:ModifyStudentInformation(); break; case 3:DeleteStudentInformation(); break; case 4:DisplayStudentInformation(); break; case 5:RankByID(); break; case 6:cout << "功能暂未实现" << endl; break; case 7:cout << "功能暂未实现" << endl; break; case 8:DisplayAllStudentInformation(); break; case 0:break; } } } tudent_WritePersonalInformation(iD,name,address,phone); cout << "基本信息输入成功!" << endl << "------------------------------" << endl; } tudent_WriteMaPhEgGrade(mathGrade, physicsGrade, englishGrade); cout << "学习成绩输入成功!" << endl

毕业设计论文学生成绩管理系统(数据结构)

大连科技学院 数据结构毕业设计 题目单链表的基本操作- 建立和遍历 学生成绩管理系统- 排列排序问题- 选择排序, 直接插入排序 学生姓名李易霖专业班级计算机10-1 指导教师宋丽芳职称副教授所在单位信息科学系软件教研室系主任王立娟 完成日期2012 年1 月6 日

大连科技学院 数据结构毕业设计成绩考核表 计算机 学生姓名李易霖专业班级学号1001020112 10-1 单链表的基本操作,学生成绩管理系统,排序问题 题目 注:总评标准采用优良制:优秀( 90 分以上)、良好( 80-90 )、中等( 70-80 )、及格( 60-70 )、不 及格( 60 分以下) 指导教师签字:

毕业设计任务书 一、任务及要求 1. 设计(研究)内容和要求研究内容:单链表的基本操作,学生成绩管理系统,二叉树的 运算任务和要求: (1)学习数据结构基础知识,掌握数据结构典型的算法的使用。 (2)对指导教师下达的题目进行任务分析。 (3)根据分析结果完成设计。 (4)编程:在计算机上实现题目的代码实现。 (5)完成对程序的测试和调试。 (6)提交毕业设计报告(约二十页),含程序代码及运行结果。 2. 原始依据 结合数据结构毕业中的基本理论和基本算法,正确分析出数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 二、工作量 2 周( 10 个工作日)时间。 三、计划安排 第 1 个工作日-第 2 个工作日:查找相关资料、书籍,阅读示例文档,选择题目。 第 3 个工作日:题目分析,设计算法。 第 4 个工作日 -5 个工作日 : 功能模块的划分和设计。 第 6 个工作日:实现具体数据结构和模块。 第 7 个工作日-第 8 个工作日:程序设计与调试,编写毕业设计报告。 第 9 个工作日:上交毕业设计报告。 第 10 个工作日:软件验收、答辩,成绩评定。 指导教师签字: 2011 年12月26日

学生选修课程系统设计说明书

(此文档为word格式,下载后您可任意编辑修改!) 课程设计说明书 课程名称:计算机科学与技术程序设计语言-课程设计 题目: 学生选修课程系统设计 年级/专业/班: 学生姓名: 学号: 开始时间:2010 年 06 月18日 完成时间:2010 年 07月 02 日 课程设计成绩: 指导教师签名:年月日 目录 1 引言 (1) 1.1设计背景 (1) 1.2任务与分析 (1) 2 程序的主要功能 (2) 2.1管理员功能 (2)

2.2学生功能 (2) 2.3浏览功能 (2) 2.4查询功能 (2) 2.5添加功能 (2) 2.6删除功能 (2) 3 程序运行平台 (3) 4 总体设计 (4) 4.1系统功能结构图 (4) 4.2数据结构 (5) 5 模块分析 (5) 5.1结构体声明,创建链表及主函数模块 (5) 5.2管理员模块 (7) 5.3学生模块 (9) 5.4浏览模块 (10) 5.5查询模块 (11) 5.6插入链表模块 (11) 5.7添加模块 (11) 5.8 删除模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 5.9 选修课程模块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 6 系统测试 (16) 7 结论 (21) 参考文献 (21) s

摘要 大学期间总会有很多公共选修课,以往的选课方法是随堂报名。这种方法虽然直接,但是造成选课的盲目性,有些课堂选课时人满为患,有些课堂无人选课。原因是传统的选课方法没有预见性,大家没有事先协调好。使用了网上选课系统以后,可以在开课前就在网上选课,每个学生的课程在开课前就确定好,不用浪费体力去选课,还可以使教学资源合理平均地分配。 全校性选修课的目的在于扩大学生的知识面,加强学生素质教育,培养复合型高级人才,具有不可替代的重要性!随着教育改革的不断深入和素质教育的加强完全学分制的实施,选修课在一个学生的培养计划中站的比重越来越大! 关键词:选修课;素质教育; 开拓知识面……

UML_课程设计_学生成绩管理系统_【精】

学生成绩管理系统UML建模 姓名: 学号: 班级: 指导教师:

一.设计目的 UML统一建模课程是一门面向对象开发方法的设计语言。UML统一建模课程设计实验课,着重加强面向对象建模技术。使用UML统一建模语言,用需求模型简化业务领域;用分析模型验证用例的正确性,一致性,完备性,可行性;用设计模型标识解决方案。通过模型实现了从业务领域到软件领域的映射。通过建模,使问题可视化,形式化。通过以序列的建模和迭代活动,对于提高学生综合素质十分必要。 UML统一建模课程是本科类计算机专业的一门骨干课程,技术复杂,应用范围广。本课程设计实验主要内容:构建系统的分析模型、设计模型。主要目标如下: 1. 掌握面向对象的分析技术、设计技术; 2. 构建“学生成绩管理系统”的需求分析模型和设计模型; 二.设计内容 1.可行性分析 随着网络通信技术的迅速发展和信息技术的广泛应用,计算机的应用已普及到经济和社 会生活的各个领域。教育领域也不例外,现今已经出现了各种远程网络在线教育系统、图书馆管理系统、学籍管理系统……其中学生成绩管理是任何院校都不可缺少的部分,它的内容对于学校的决策者和教学管理者来说都至关重要,而传统的人工管理方式效率较低,为数据的查询、更新和维护代来了极大的不便。所以学生学籍管理信息系统的开发和应用是必要的,它能够为管理人员提供充足的信息和快捷的查询手段,提高学校学籍管理的效率。 系统的可行性分析 (1)系统实施运行的可行性: 各教师,学生都已熟练掌握计算机的基本实用方法和操作技能,对新系统的开发,表现出极大的热情。提出了很多好的建议和要求。 (2)技术可行性: 校园网已正常运行;开发人员已熟练掌握开发工具。技术上实现系统是可行的。 (3)经济可行性: 校园内部局域网络已经建成;硬件投入不需要很大。 2.需求分析

学生选修课管理系统C++课程设计

#include #include #include #include #include //using namespace std; const int count =3; class situaction; class student { public: int sno; char sname[20]; char sex[3]; int age; char depart[20]; char classno[20]; char lianx[40]; //public: friend void sselect(); friend void supdate(); friend void sdelet(); friend void saccount(); friend void sdisplay(); friend istream & operator >> (istream & in,student &stu) { in>>stu.sno>>stu.sname>>stu.sex>>stu.age>>stu.depart>>stu.classno>>stu.lianx; return in; } friend ostream & operator<< ( ostream & out,student &stu) { out<

简单学生信息管理系统设计

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组容。 2.设计实现一个简单的信息管理系统。 实验容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有、学号、math、os、java用来存放 对应的成绩,在构造方法中进行、学号、课程成绩的赋值。 Override有Object继承来的tostring方法已便友好格式显 示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 (判断是否相等使用string类的equalsIgnoreCase方 法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的容,注意要考虑以前未保存容的情况, 可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找 3 按查找 4 按学号删除 5 保存 6 读入7 退出 请输入数字(1-7): 程序代码

学生成绩管理系统设计毕业论文

学生成绩管理系统设 计毕业论文 目录 一、系统功能简介------------------------------------------------------------------2 二、小组成员完成的工作--------------------------------------------------------3 三、系统设计分析------------------------------------------------------------------3 四、系统的调试过程---------------------------------------------------------------6

五、工程总结-------------------------------------------------------------------------12 六、附录(源程序代码)--------------------------------------------------------13 共22页 一、系统功能简介 1、进入主界面按系统提示选择相应的功能。 2、输入功能:将学生的、学号、性别、联系方式以及本学期各 门课的成绩都输入进系统。

3、排序功能:所有学生的本学期成绩进行比较,然后按照分数 从高到低进行排序。 4、查询功能:可以分为按学号和按两种方式进行查询出学生本 学期的成绩以及其他有关的信息。 5、修改功能:可以根据学生学号查找到需要修改的学生的所有 信息,然后可以对学生的信息做一个重置。 6、删除功能:通过学号定位,然后删除该学生的所有信息。 7、成绩保存:将学生的成绩信息以文件的形式保存下来。 8、成绩统计:统计每门课的最高、最低成绩以及不及格人数。 二、工作 三、系统设计分析 1、系统功能模块结构图: 本系统是由成绩输入、成绩排序、成绩查询、信息修改、信息删除、成绩保存、成绩统计以及退出程序这8个功能模块组成,其总体结构图如下: 学生成绩管理系统

程序设计学生选修课程系统设计与实现

通达学院 程序设计 (2017/2018学年第1学期) 题目:学生选修课程系统设计与实现 专业计算机科学于技术(嵌入式) 学生姓名 班级学号 指导教师徐小龙

指导单位计算机学院·计算机科学与技术系日期 2017年10月27日 南京邮电大学通达学院 程序设计 指导教师成绩评定表

一、课题内容和要求 学生选修课程系统设计与实现 假定有n门课程,每门课程有课程编号,课程名称,课程性质,总学时,授课学时,实验或上机学时,学分,开课学期等信息,学生可按要求(如总学分不得少于60)自由选课。试设计一选修课程系统,使之能提供以下功能:(1)系统以菜单方式工作 (2)课程信息录入功能(课程信息用文件保存)--输入

(3)课程信息浏览功能--输出 (4)查询功能:按学分查询、按课程性质查询 (5)学生可以选修课程 二、需求分析 本系统的功能模块如图所示

1.使系统以菜单方式工作:输出个菜单,用于显示以从文件中加载的 课程信息和若干个可选的功能选项。根据客户输入的选项来运行不同的功能,运行不同的函数。 2.录入课程信息:使用户可以将课程信息输入文件 3.浏览课程信息:使用户可以按照学分或者课程性质浏览文件中的课程信 息 4.进入选课操作:输入学号,姓名进行选课 5.统计选课情况:从选课文件中统计信息 三、概要设计 (1)主函数的设计 在主函数中按照提示输入相对应数字进入相应的操作,同时,在输入序号数字错误时,会自动提示“输入错误,请重新输入”,然后,重新输入一个数字,继续进行相应的操作。 (注:输入的数字要在0~5之内) 算法设计如下: S1: 从键盘上输入一个0~5的数字,进入相应的操作 S2: 如果选择序号1,则进入课程信息录入操作 S3: 如果选择序号2,则进入浏览课程信息操作

学生课程成绩管理系统规划报告12

学生课程成绩管理系统规划报告 制作人:吕帮超 一、背景介绍 随着经济全球化、管理现代化的到来,信息化建设已提到议事日程。国家机关、高等学校、参与国家竞争的大中型企业等单位,为了提高现代化管理水平、为了在激烈的市场竞争中获胜,纷纷不同程度的加强信息化建设,如组建自己的局域网、实施适用本单位或本部门的企业级MIS(管理信息系统)项目或ERP(企业资源计划)项目。因此管理系统是十分重要的。 在我国的各类学校,尤其是高等院校,近些年由于扩招生员,大大增加了学校的管理体制的负担,因此,对于一个学校来说,学生成绩管理系统是必不可少的,它大大方便了学校的各项管理,减轻了学校在管理上的负担,使之运用起来更方便,学生成绩管理系统是时代发展的必然产物,能否使一个学校有良好的管理制度,十分完备的管理层次,是一个学校能够办学成功的关键所在。 二、系统目标 本系统是将现代化的计算机技术和传统的教学、教务工作相结合,按照学院的工作流程设计完成的。为了使系统在学院的管理中发挥更大的作用,实现工作过程的计算机化,提高工作效率和工作质量,现提出如下的系统开发目标: 1.系统应具有实用性、可靠性和适用性,同时注意到先进性。 2.对各个数据库进行动态管理,防止混乱。 3.能够按照用户选择的不同的条件进行简单查询和复合查询。 4.能够对查询结果进行分类汇总,实现报表打印。 5.注意数据的安全性,具有数据备份和恢复的功能。 6.方便用户的操作,尽量减少用户的操作 三、系统功能 本系统的主要功能分别通过主菜单中的以下来实现: 通过系统维护菜单实现数据表记录的维护,数据表结构的修改,系统口令的更改,表单的修改; 通过浏览菜单实现对学生表,课程表和成绩表的总浏览和相关统计信息的浏览; 通过查询菜单实现对学生和成绩的各种查询; 通过报表菜单实现学生,课程和成绩的打印输出; 通过退出菜单退出本系统 四、子系统划分及功能 子系统包括成绩查询系统,信息修改和维护系统,成绩统计系统,报表打印系统以及退出系统。 成绩查询系统可以查询学生信息,课程信息,学生成绩。信息修改与维护系统可实现学生信息的修改与维护,包括姓名,学号的添加与修改,也包括课

选修课程管理系统

选修课程管理系统 一、实验目的 1、使学生掌握DBMS的基本工作原理; 2、培养学生基本掌数据库应用系统设计的基本思路和方法; 3、培养学生分析、解决问题的能力; 二、实验简述 针对给定的系统进行需求分析,设计系统结构图和系统功能模块图;针对需求分析,画出E-R图表示的概念模型,并将其转换为至少满足3NF的关系模式,设计较为合理的数据库模式;系统中应能体现对数据库的保护(数据恢复、并发控制、安全性和完整性);系统应该有较为友好的用户界面; 通过本系统软件,能帮助教研人员利用计算机,快速方便的对学生选课进行管理、输入、输出、查找的所需操作,使散乱的档案能够具体化,直观化、合理化。 三、课程设计过程 1、需求分析 2、概念结构设计及系统结构设计 3、系统功能实现 3.1需求分析 学生包含学号等属性,通过登记系统保存学生成绩的信息。学生通过分组程序分出个个选修课的学生名单。课程包含课程号,名称等属性。分组信息分出选修课教师,教师包含名称,教师编号属性。 用户通过SQL SERVER 2000 的查询分析器直接输入各种操作代码,其中包括对系统管理原的的创建,管理员可以创建其他管理员权限,当然,系统管理员可以对所有表进行修改,删除,增加。 3.2 概念结构设计及系统结构设计 1..用E-R图设计信息模型

2.设计相应关系模型,确定数据库结构 设计关系模型如下:下划线为关系的码 学生(学号,姓名,地址,邮编,市,省,性别) 教师(教师编号,姓名,电话,工资) 课程(课程编号,课程名,系名,学分) 分组(分组号,教师编号,课程号,学生数) 登记(课程号,组号,学生号,成绩) 3.设计应用系统的系统结构图,确定系统结构

简单学生信息管理系统

简单学生信息管理系统-标准化文件发布号:(9456-EUATWK-MWUB-WUNN-INNUL-DDQTY-KII

——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: 姓名: 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用 来存放对应的成绩,在构造方法中进行姓名、学号、课 程成绩的赋值。Override有Object继承来的tostring方法 已便友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方 法,在main中写一段测试代码,运行以保证目前所做工 作的正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制 到新数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误 信息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的 情况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如 下: 1显示所有学生信息 2按学号查找 3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7):

基于Web的学生成绩管理系统的设计和实现

论文评定 指导教师意见: 指导教师:___________(签名) 年月日

原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本声明的法律结果由本人承担。 论文作者签名:*** 日期:2009 年10 月30 日

基于Web的学生成绩管理系统的设计和实现 摘要 进入21世纪后,科学技术突飞猛进,信息时代的来临不仅让计算机在科技上得到应用,更让计算机在生活上得到了更广泛的应用,对如今的学校来说,实现电子信息化的办公是必然趋势,学校中的信息量主要体现在学生成绩的管理上面,因此学生成绩管理系统是一个教育单位不可缺少的部分。 本毕业设计所描述的学生成绩管理系统是采用https://www.360docs.net/doc/dc2841280.html,作为网络编程框架,SQL Server 2005作为数据库编写的一个B/S模式的系统。系统主要实现了:用户管理、成绩查询、成绩管理和科目管理等功能。本文详细介绍了学生成绩管理系统的需求分析、功能设计和系统设计,在系统设计中给出数据库的设计和本系统的总体设计方案,在系统实现中具体介绍了各个功能的所能实现的情况和主要代码,同时附有运行界面图。 关键字:成绩管理,成绩录入,成绩查询,.NET , B/S

STUDENTS’ PERFORMANNCE MANAGEMENT SYSTEM ABSTRACT After entering the 21st century, science and technology advance by leaps and bounds, the advent of the information age is not only make the computer is widely used in science and technology, more make the computer in life has been more widely, for now, the school of electronic information office is an inevitable trend, the school of information are mainly embodied in the management of students' grades above, education management system is a indispensable part of the unit. The graduation design of student achievement management system is described using https://www.360docs.net/doc/dc2841280.html, is a network programming framework, SQL Server 2005 as a database of writing a B/s-based mode of the system. System is mainly realized: user management, scores query, performance management and management of subject etc. Function. This paper introduces the student performance management system requirements analysis, functional design and system design, system design in database design and the overall design scheme of the system, in the system are introduced in details of each function can realize the situation and the main operation interface with code. Key words:Grade Management,Achievements recorded scores query,.NET ,B/S

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

辽宁工业大学 数据库原理与应用课程设计(论文)题目:东北大学学生成绩管理系统 院(系):软件学院 专业班级:软件技术083班 学号:081404090 学生姓名:王晓君 指导教师:张莉莉 教师职称:助教 起止时间:2009.11.23至2009.12.4

课程设计(论文)任务及评语院(系):软件学院教研室:软件教研窒

目录 第1章课程设计目的与要求 (1) 1.1 课程设计目的 (1) 1.2 课程设计的实验环境 (1) 1.3 课程设计的预备知识 (1) 1.4 课程设计要求 (1) 第2章课程设计内容 (2) 2.1 系统设计 (2) 2.2 数据库模型 (3) 2.3 设计窗体和报表 (7) 2.4 窗体和报表模块主要代码 (1) 第3章课程设计总结 (1) 3 参考文献 (1) 4

第1章课程设计目的与要求 本课程的课程设计实际是电子商务和计算机信息管理专业学生学习完《数据库原理及应用(ACCESS 2002)》课程后,进行的一次全面的综合训练,其目的在于加深对数据库基础理论和基本知识的理解,掌握运用数据库应用系统开发软件的基本方法。1.1课程设计的实验环境 硬件要求能运行Windows 9.X操作系统的微机系统。数据库应用系统开发软件可以选用Microsoft Access,或其他数据库管理系统。 1.2 课程设计的预备知识 熟悉数据库的基本知识及一种以上数据库系统开发软件。 1.3 课程设计要求 按课程设计指导书提供的课题,应根据下一节给出的基本需求独立完成八个方面的

设计,标有“可选”的部分可根据设计时间的安排及工作量的大小适当选择。选用其他课题或不同的数据库管理系统,可以组成设计小组,分模块进行,共同协作完成一个应用系统的开发任务。要求书写详细的设计说明书,对复杂的代码段和程序段,应画出程序流程图。在界面设计中,画出每个窗口的布局,有多个窗口时,按模块调用的方式画出窗口调用图,用手工画好报表和标签样式,严禁相互抄袭。

选修课程管理系统

课程设计 课程名称大型数据库课程设计 题目名称选修课程管理系统 专业班级10级计算机科学与技术本1学生姓名戴赛跑、汪雨生、杨涛学号510020110 22 37 44指导教师戚晓明(副教授) 二○一二年十二月十二日

目录 摘要 (1) 第一章前言 (2) 1.1题目与要求 (2) 1.2问题的提出 (2) 1.2.1本系统设计的知识点 (2) 1.2.2功能需求 (2) 1.3设计目的 (2) 1.4课程设计的简介 (3) 第二章开发环境 (4) 2.1 系统开发环境 (4) 2.1.1 开发环境的选择 (4) 2.1.2 Visual Studio 2008简介 (4) 2.1.3 SQL server 2008简介 (5) 第三章需求分析 (7) 3.1 设计思想 (7) 3.2 可行性分析 (7) 3.2.1 操作可行性 (7) 3.2.2 技术可行性 (8) 3.2.3 经济可行性 (8) 3.3 功能需求 (8) 3.3.1 基本功能需求 (8) 3.3.2 用户界面需求 (9) 3.4 性能需求 (9) 3.4.1 系统可扩展性 (9) 3.5 系统设计基础 (9) 3.6模块分析及设计 (10)

第四章数据库的设计说明 (11) 4.1数据表 (11) 4.2数据库的完整性和安全性 (11) 4.3选修课数据库的设计 (12) 4.3.1建立一个选修课程数据库: (12) 4.3.2建立一个学生student表 (12) 4.3.3建立一个登录t_login表 (13) 第五章系统功能的实现 (16) 5.1 系统登录窗体 (16) 5.2学生操作主界面 (18) 5.2.1选修课程的选修 (18) 5.2.2退选功能 (19) 5.2.3密码修改 (20) 5.3教师操作主界面 (21) 5.3.1 录入学生选修课程的成绩 (21) 5.3.2 增加选修课程 (22) 5.3.3 删除选修课程信息 (23) 5.3.4 修改选修课程基本信息 (25) 5.4注销和退出 (26) 5.4.1注销 (26) 5.4.2 退出 (27) 总结 (29) 致谢 (32) 参考文献 (33)

简单学生信息管理系统

. ——综合性程序设计 题目:简单学生信息管理系统(序列化版)班级: : 学号:

实验目的: 1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。 2.设计实现一个简单的信息管理系统。 实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可 以进行序列化。该类有姓名、学号、math、os、java用来 存放对应的成绩,在构造方法中进行姓名、学号、课程成 绩的赋值。Override有Object继承来的tostring方法已便 友好格式显示自己的属性; 2.建立一个类,利用数组来存储多个Student,写完一个方法, 在main中写一段测试代码,运行以保证目前所做工作的 正确性,正确后再写其他代码。有以下方法: 1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新 数组 2)dispAll():可以显示所有的学生信息(测试add是否正确) 3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。 4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误信 息。(判断姓名是否相等使用string类的 equalsIgnoreCase方法) 5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。 6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。 7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的情 况,可返回错误信息。 3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息2按学号查找3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7): 程序代码

毕业论文-学生成绩管理系统

一、作品内容介绍 学生成绩管理系统的背景分析: 随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。作为计算机应用的一部分,使用计算机对学生成绩信息进行管理,有着手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。这些优点能够极大地提高学生成绩管理的效率,也是企业的科学化,正规化管理,与世界接轨的重要条件。因此,开发这样的一套成绩管理系统成为很有必要的事情。学生成绩管理系统提供了强大的学生成绩管理管理功能,方便系统管理员对学生成绩等信息的添加、修改,打印等操作,同时一样的方面学生对自己各科成绩查询,学习的交流。 开发一个学生成绩管理系统,采用计算机对学生成绩进行管理,进一步提高了办学效益和现代化水平。为广大51教a师s和p学x生提高工作效率,实现学生成绩信息管理工作流程的系统化,规范化和自动化。现在我国的大中专院校的学生成绩档案管理水平普遍都不是很高,有的还停留在全用纸介质基础上,这种管理方式已不能适应时代的发展,社会的需求,因为它浪费了大量的人力物力,也存在着许多不足的因素。在今天信息时代这种传统的管理方法必然会被计算机为基础的信息管理系统所代替,一个高效的学生成绩管理系统可以存储历届的学生成绩档案,不需要大量的人力,只需要几名专门录入员即可操作系统,节省大量人力,可以迅速查到所需信息、高效、安全、学生在能方便的查看自己的成绩。 二、开发环境 1、页面开发环境:VS2005集成开发环境 2、开发语言:https://www.360docs.net/doc/dc2841280.html, +C# 3、后台数据库:SQL Server2000 4、开发环境运行平台:XP(SP2) 三、系统的结构说明 “学生成绩管理系统”包括三个模块:学生登陆、教师登陆、管理员登陆。这三个模块既相互联系又相互独立。

相关文档
最新文档