当前位置:文档之家› VF课程设计报告学生选课管理系统

VF课程设计报告学生选课管理系统

学生选课管理系统东北大学秦皇岛分校姓名:刘国锋学号:3090908指导教师:朱世敏日期: 2011 年 06 月 19 日一、总体说明总体功能介绍在学生选课信息管理系统中,首先输入用户名和密码等登录信息,进入主界面,有以下模块“数据查询”、“记录修改”、“报表”、“密码安全”。

在“数据查询”中,包含“课程查询”;在“记录修改”中包含“课程和学生选课修改”和“学生选课”;在“报表”中包含以下两项子菜单:“学生选课情况”,“可选课程”;在“密码安全”中有“密码修改”子菜单。

在“可选课程信息”中输入相应的内容,即可显示相应的结果。

原用户还可通过密码修改来不定期修改自己的原始密码,保证了数据的真实性和安全性。

用户还可通过查询课程信息来实现选课功能。

管理员也可通过打印报表来查看学生的选课记录和学生个人信息。

二、功能模块结构图:课程信息查询(按课程名称查询)可进行课程信息修改课程和学生选课修改可进行学生信息修改主界面学生选课(可实现学生的自由选课)密码登陆学生选课情况可选课程密码安全(密码信息修改)三、变量说明(公有、私有、本地变量)1.在登录系统中,有公有变量i,表示输入密码的次数,i的初值设为0,当i>3时系统将自动退出;公有变量uid,用户名。

2.私有变量:pwd:记录登录时的用户密码。

四、数据库、表的设计及描述1.数据库:为最后程序的连编提供数据源。

2.(1)管理员表:为登录系统提供账号和相应的密码(2)学生基本信息表:可以学生基本信息,对其添加、删除;为查询学生基本信息提供数据源。

(3)课程表:对其添加、删除,为查询提供数据源(4)学生成绩表:可以查询学生成绩,对其添加、删除、修改(5)密码表:记录用户的登录密码五、操作说明本系统适合广大用户操作使用,其操作过程简单明了。

该系统拥有“学生基本信息查询”、“学生成绩查询”、“课程查询”、“打印报表”等功能。

操作步骤如下:1、单机登陆界面进入用户名和密码登录界面,输入用户名和密码之后单击“确定”按钮即可进入系统。

若用户名和密码输入错误,则退出本系统。

选择“退出按钮则离开本系统。

本系统的初始密码为“学号”2用户进入系统后,便直接到达此界面。

在此界面中,用户可以选择数据修改、数据查询、选课功能。

单击“退出”按钮,退出该页面。

3在“记录修改”菜单栏下,可以对一些列的表进行添加、删除、编辑操作。

4选择“数据查询”子菜单下的“学生成绩查询”则可对该学生的各科成绩进行查询。

在此,查询中,用户可选择“按学号查询”和“按姓名查询”两种方式输入查询信息。

系统则会快速的调出该学生的成绩。

5选择“数据查询”子菜单下的“课程查询”,则可查询学生的选课信息6选择“报表”子菜单下的“学生选课情况可以对学生选课的信息以报表的形式查询,此外还可以从报表上的个人的选课情况按照学号和系别进行区分;通过可选课程可以查询并打印所有的课程信息;7选择菜单栏上的“密码修改“可以对用户的密码进行修改以维护给人的信息部被别人修改,以确保个人信息的安全和完整性。

六、各模块代码及结果图密码登录:1、确定的click事件uid=alltrim(thisform.text1.value)pwd=alltrim(thisform.text2.value)locate for 用户=uidif not found()messagebox("无此用户",0,"学生选课管理系统") thisform.text1.selstart=0thisform.text1.sellength=len(thisform.text1.text) thisform.text1.setfocusreturnendifif alltrim(密码)==pwdthisform.releasedo form 主程序.scxi=i+1elseif i>=3messagebox("三次密码输入不对,系统将退出") thisform.releaseelsemessagebox("密码不正确,请重新输入") thisform.text1.selstart=0thisform.text1.sellength=len(thisform.text1.text) endifendif3、取消登录的click事件thisform.release()表单11、combol1Rowsource:管理员表.用户名2.、text1passwordchar:*value :a3、确定(command1):click事件i=i+1select 管理员表locate all for 用户名=alltrim(bo1.value)if found () and 密码=alltrim(thisform.text1.value)do form bd1release thisformelseif i<3=messagebox("管理员密码错误!"+chr(13)+"再试一次!",48,"警告")thisform.text1.value="a"thisform.text1.setfocuselse=messagebox("对不起,已经错3次了!"+chr(13)+"非法用户,请退出系统",48,"严重警告") thisform.releaseendifendif4、退出(command2):click事件thisform.release学生成绩查询:1、option1 gotfocus事件bel6.caption="姓名"2 、option2 gotfocus事件bel6.caption="学号"3close alla1=alltrim(thisform.text1.value)if thisform.optiongroup1.option1.value=1do casecase val(left(a1,7))>=3080801 and val(left(a1,7))<=3080827select * from 学生综合成绩表where alltrim(学号)=a1 into cursor w if alltrim(学号)=a1thisform.text4.value=姓名thisform.text5.value=总成绩thisform.text6.value=经济法thisform.text7.value=概率thisform.text8.value=英语thisform.text9.value=参加活动thisform.text10.value=运筹学thisform.text11.value=企业管理thisform.text12.value=平均成绩elsemessagebox("不存在该学生,请核对后再查!")endifcase a1=""messagebox("您还没有输入查询信息!")otherwisemessagebox("本校不存在该学生,请核对后再查!")endcaseclose allelseuse 学生综合成绩表locate for alltrim(姓名)=a1if found()thisform.text4.value=学号thisform.text5.value=总成绩thisform.text6.value=经济法thisform.text7.value=概率thisform.text8.value=英语thisform.text9.value=参加活动thisform.text10.value=运筹学thisform.text11.value=企业管理thisform.text12.value=平均成绩close allelsemessagebox("本校不存在该学生,请核对后再查!") endifendifthisform.refresh以下部分是由我的队友设计的我只弄上了她们的截图:Cd1子菜单:学生基本信息录入奖学金信息录入:学生成绩录入:社会活动录入:各科成绩:各科成绩及社会活动:基本信息查询奖学金查询七、体会(重点是学习中收获和存在的问题)经历了一个多星期的合作,我们终于完成了。

回顾起来,有苦恼,有迷茫,更多的是遇到问题再想办法解决问题后的成就感,以及努力过后得到成长的喜悦。

我负责的模块是主界面、登录界面、学生成绩查询,以及项目连编后细节问题的修正。

其中我们遇到问题主要有:登陆界面:因为老师上课时已经交给我们一中登录方法,我们想要做的更好,想怎样设计出一对一对应的密码与用户名的登录。

平均分的计算:不知道要怎样实现表格横向的数学计算,以前只是实现的纵向的求和计算。

奖学金查询:实现奖学金的评定时显示出现问题。

系统的美观统一:开始自己的方法效率比较低,最后大家探讨出来用简便快捷的方法实现。

我们一起商量、探索、问其他组的同学,上机房请教老师,一一的把问题解决,认识到自己还有一些不足,知识也随之丰富起来,也让我们充分认识到自己的力量是有限的,而1+1+1>3。

我们的作品可能存在不足,希望那个老师给予指正。

郑方圆3080819。

相关主题