




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
模拟成绩管理系统VB程序设计模拟成绩管理系统学院:汽车学院专业:(交通运输)汽车运用工程班级:姓名学号:2016 VB程序设计作业要求1. 做一个成绩管理系统。2. 系统中包括部分学生个人信息,如学号,姓名,性别,出生年月日,班级,籍贯,家庭住址,家庭电话,备注等,及若干(不少于8门)课程成绩和课程学分;输入不少于10条记录;3. 需计算总评成绩(即学分加权平均成绩),并计算排名,且反映在字段中;4. 程序需具备的功能:记录浏览,添加,修改,删除,查询(按姓名或学号查询)5. 建议不要用ADO控件6. 作业的提交:(1) 电子版。a. 该版本应该是在你的或老师的电脑上都能运行的,与数据库的路径无关的,提交以前请在其他同学电脑上运行一下,确保程序的运行和电脑无关;b. 把所有文件放在同一个文件夹中,压缩文件名:VB-班级-学号-姓名,如:VB-汽运1班-xxxxxxxx-张三.zip;c. 提交邮箱随后公布;(2) 纸质版。纸质版应包括:a. 封面,作业要求;b. 主要界面;c. 主要代码,附程序功能注释及主要语句注释。d. 附必要的说明。系统运行界面查询功能检索框内输入学号或姓名,点击查询,即可在右方显示基本信息,并显示总评成绩。点击清空按钮后,可继续输入。例如:输入学号“09”后,显示界面如下图如果没有找到纪录,则发出警告,如下图 将记录指针指向第一个纪录未找到匹配的纪录,则显示提示查找显示输入学号时使加权成绩小数点后最多显示两位主要代码:查询按钮: Private Sub Command1_Click() Me.Data1.Recordset.Movefirst If Me.Combo1.Text Then Me.Data1.Recordset.FindFirst name= & Combo1.Text & If Me.Data1.Recordset.NoMatch Then MsgBox 请重新输入!, 48, 注意 Combo1.Clear Combo2.Clear Else Me.Data1.Recordset.FindFirst name= & Combo1.Text & Combo2.Text = Data1.Recordset(number) End If End If If Me.Combo2.Text Then Me.Data1.Recordset.FindFirst number= & Combo2.Text & If Me.Data1.Recordset.NoMatch Then MsgBox 请重新输入!, 48, 注意 Combo1.Clear Combo2.Clear Else Me.Data1.Recordset.FindFirst number= & Combo2.Text & Combo1.Text = Data1.Recordset(name) End IfEnd IfPrivate grade As String * 5 grade = (Val(Text8.Text) * Val(Me.Text17.Text) + Val(Text9.Text) * 计算加权成绩显示窗口二4Val(Me.Text18.Text) + Val(Text10.Text) * Val(Me.Text20.Text) + Val(Text11.Text) * Val(Me.Text21.Text) + Val(Text12.Text) * Val(Me.Text22.Text) + Val(Text13.Text) * Val(Me.Text23.Text) + Val(Text14.Text) * Val(Me.Text24.Text) + Val(Text15.Text) * Val(Me.Text25.Text) + Val(Text16.Text) * Val(Me.Text26.Text) / (Val(Me.Text17.Text) + Val(Me.Text18.Text) + Val(Me.Text20.Text) + Val(Me.Text21.Text) + Val(Me.Text22.Text) + Val(Me.Text23.Text) + Val(Me.Text24.Text) + Val(Me.Text25.Text) + Val(Me.Text26.Text) Me.Text19.Text = gradeEnd Sub添加功能点击“添加”按钮后,弹出新窗口,输入完整信息后,点击更新,如果信息不完整,系统会提示“请输入完整数据!”。输入完成后,点击更新,数据便录入数据表中,并返回初始界面,可继续输入。点击“取消”按钮后,退出窗口2,返回窗口一,继续进行其他操作。主要代码:添加按钮Private Sub Command3_Click() inNum = 1 Form2.Show 1 End Sub窗口二代码Private Sub Command1_Click() If Text1.Text = Or Text2.Text = Or Text3.Text = Or Text4.Text = Or Text5.Text = Or Text6.Text = Or Text7.Text = Or Text8.Text = Or Text9.Text = 提示输入完整数据将数据写入data1Or Text10.Text = Or Text11.Text = Or Text12.Text = Or Text13.Text = Or Text14.Text = Or Text15.Text = Or Text16.Text = Or Text17.Text = Or Text18.Text = Or Text20.Text = Or Text21.Text = Or Text22.Text = Or Text23.Text = Or Text24.Text = Or Text25.Text = Or Text26.Text = Then b = MsgBox(请输入完整数据!, 4 + 48, 注意) Text1.SetFocus Exit Sub End If With Data1 .Recordset.AddNew .Recordset(number) = Text1.Text .Recordset(name) = Text2.Text .Recordset(sex) = Text3.Text .Recordset(birthday(year) = Text4.Text .Recordset.Update End With Text1.Text = : Text2.Text = : Text3.Text = : Text4.Text = : Text5.Text = : Text6.Text = : Text7.Text = : Text8.Text = : Text9.Text = : Text10.Text = : Text11.Text = : Text12.Text = : Text13.Text = : Text14.Text = : Text15.Text = : Text16.Text = : Text17.Text = : Text18.Text = : Text20.Text = : Text21.Text = : Text22.Text = : Text23.Text = : Text24.Text = : Text25.Text = : Text26.Text = : Text1.SetFocus点击取消按钮时窗口二与data1数据表连接End SubPrivate Sub Command2_Click() Unload Me Form1.Show End SubPrivate Sub Form_Load() Me.Data1.DatabaseName = App.Path + 201322020301-吕天翔.mdb Me.Data1.RecordSource = grade management End Sub修改功能点击“修改”按钮后,按钮消失,保存按钮出现,同时课程学分部分显现,可一并修改,修改完成后,点击保存,显示警告“当前记录将被修改,确定修改?”点击确定,完成修改,并回到初始界面。调整 课程学分部分 可见性调整按钮可见性6主要代码:点击修改按钮Private Sub Command4_Click() Me.Text17.Visible = True Me.Text18.Visible = True Me.Text20.Visible = True Me.Text21.Visible = True Me.Text22.Visible = True Me.Text23.Visible = True Me.Text24.Visible = True Me.Text25.Visible = True Me.Text26.Visible = True Label8(2).Visible = True Me.Command3.Visible = False Me.Command4.Visible = False Me.Command5.Visible = False显示提示选择“否”时选择退出否则进入 写入 状态依次写入 Me.Command6.Visible = False Me.Command10.Visible = TrueEnd Sub点击保存按钮Private Sub Command10_Click() a = MsgBox(当前记录将被修改,确定修改?, 4 + 48, 警告 ) If a = vbNo Then Exit Sub Me.Data1.Recordset.Edit With Data1 .Recordset(number) = Text1 .Recordset(name) = Text2 .Recordset(sex) = Text3 .Recordset(transportation-xuefen) = Me.Text24 .Recordset(automobile-xuefen) = Me.Text25 .Recordset(engine-xuefen) = Me.Text26 End With Data1.Refresh Combo1.Clear Combo2.Clear End Sub删除功能点击“删除”按钮后将弹出“当前记录将被删除,确认删除?”对话框,点击“是”按钮后,将当前记录从data1中删除,并更新data1;若点击“否”,则退出,返回初始界面。显示提示进行删除操作更新data1主要代码:Private Sub Command5_Click() a = MsgBox(当前记录将被删除,确定删除?, 4 + 48, 警告 ) If a = vbNo Then Exit Sub Me.Data1.Recordset.Delete Me.Data1.Refresh Combo1.Clear Combo2.ClearEnd Sub总评成绩计算算法介绍用课程学分部分数据与考试成绩计算总评成绩,课程学分部分通常隐藏在窗体中。情况一 浏览时即显示总评成绩点击data控件按钮浏览数据的同时,该数据的总评成绩也同时显示。主要代码:Private Sub Data1_Validate(Action As Integer, Save As Integer)如果当前界面没有显示数据为防止浏览时出错总评成绩的计算8 If Me.Data1.Recordset.EOF = True Then Me.Data1.Recordset.Movefirst Else grade = (Val(Text8.Text) * Val(Me.Text17.Text) + Val(Text9.Text) * Val(Me.Text18.Text) + Val(Text10.Text) * Val(Me.Text20.Text) + Val(Text11.Text) * Val(Me.Text21.Text) + Val(Text12.Text) * Val(Me.Text22.Text) + Val(Text13.Text) * Val(Me.Text23.Text) + Val(Text14.Text) * Val(Me.Text24.Text) + Val(Text15.Text) * Val(Me.Text25.Text) + Val(Text16.Text) * Val(Me.Text26.Text) / (Val(Me.Text17.Text) + Val(Me.Text18.Text) + Val(Me.Text20.Text) + Val(Me.Text21.Text) + Val(Me.Text22.Text) + Val(Me.Text23.Text) + Val(Me.Text24.Text) + Val(Me.Text25.Text) + Val(Me.Text26.Text) Me.Text19.Text = grade End IfEnd Sub情况二:查询时即显示其总评成绩计算方法相同,此处不再赘述。排名功能点击“排名”按钮后,根据总评成绩大小,在list控件中显示当前数据的排名情况,可以同时显示“名次”“姓名”“总评成绩”;同时在删除或添加部分数据后,能重新计算排名,此处通过动态数组实现显示个数随数据个数同时变化。算法介绍:添加一个text控件,用来存放当前窗口的总评成绩。使用data1控件的movefirst,movenext,eof 等属性完成数据库“数据个数计算”“所有数据姓名与成绩的提取与匹配”,使用动态数组完成数据存放;利用循环完成赋值及大小比较,最后通过list显示出来。用h存放数据库数据个数主要代码:Private Sub Command8_Click() Do Until Me.Data1.Recordset.EOF = True Me.Data1.Recordset.Movenext h = h + 1 Loop Me.Data1.Recordset.Movefirst定义与数据个数相同行数的二位动态数组Text27中存放当前数据的成绩把姓名和成绩赋值给数组对数组中的成绩进行比较并重新排序输出排序10 Dim t As String Dim w As StringReDim a(h, 2) As String * 5 Do Until Me.Data1.Recordset.EOF = True Me.Text27.Text = (Val(Text8.Text) * Val(Me.Text17.Text) + Val(Text9.Text) * Val(Me.Text18.Text) + Val(Text10.Text) * Val(Me.Text20.Text) + Val(Text11.Text) * Val(Me.Text21.Text) + Val(Text12.Text) * Val(Me.Text22.Text) + Val(Text13.Text) * Val(Me.Text23.Text) + Val(Text14.Text) * Val(Me.Text24.Text) + Val(Text15.Text) * Val(Me.Text25.Text) + Val(Text16.Text) * Val(Me.Text26.Te
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 心理剧本题目大全及答案
- 青春启示录550字(14篇)
- 我爱读书作文400字(9篇)
- 会议纪要及行动计划编写指南
- 企业组织结构优化设计方案
- 演讲稿母亲节450字10篇范文
- 领略古代小说魅力:大二语文古代小说欣赏教学教案
- 企业信息管理系统集成方案工具集
- 市场调研报告及保密协议签署书
- 小学生关于五一见闻作文300字13篇
- 市民政局安全知识培训课件
- 2025年陕西西安工程大学专职辅导员招聘考试笔试试题(含答案)
- 共享员工模式创新创业项目商业计划书
- (2025年标准)正规劳动协议书
- 2025年部编版道德与法治新教材二年级上册全册教案设计(共4个单元含教学计划)
- 2024年福建投资集团招聘真题
- 2025年乡村方面的面试题及答案
- 2025年26道医院财务科岗位面试真题及答案
- 农业机械无人驾驶协同系统接口设计与数据交换规范
- 2025年“才聚齐鲁成就未来”山东黄金集团井下技能工人招笔试高频考点题库考试试题【含答案】
- 研发样品管理办法
评论
0/150
提交评论