OOP课程设计报告书.doc

上传人:yyf 文档编号:5015403 上传时间:2020-01-28 格式:DOC 页数:38 大小:613.50KB
返回 下载 相关 举报
OOP课程设计报告书.doc_第1页
第1页 / 共38页
OOP课程设计报告书.doc_第2页
第2页 / 共38页
OOP课程设计报告书.doc_第3页
第3页 / 共38页
OOP课程设计报告书.doc_第4页
第4页 / 共38页
OOP课程设计报告书.doc_第5页
第5页 / 共38页
点击查看更多>>
资源描述

《OOP课程设计报告书.doc》由会员分享,可在线阅读,更多相关《OOP课程设计报告书.doc(38页珍藏版)》请在三一文库上搜索。

1、西安郵電學院西安郵電學院 OOP 课程设计报告书 院部名称院部名称:管理工程学院管理工程学院 学生姓名学生姓名:闫锡闫锡 专业名称专业名称:信息管理与信息系统信息管理与信息系统 班班 级级:信管信管 10021002 时间时间: 2011 年年 12 月月 05 日日 至至 2011 年年 12 月月 17 日日 OOP 课程设计实验指导书 一、一、OOP 课程设计的目的:课程设计的目的: OOP 课程设计作为独立的教学环节,是信息管理与信息系统专业集中实践性环节系列 之一,是学习完高级程序设计 II课程后进行的一次全面的综合软件设计的练习。其目 的在于加深对面向对象基础理论和基本知识的理解,

2、掌握使用 Visual Basic 可视化程序设 计工具进行 Windows 程序设计的基本方法,提高解决实际管理问题、开发软件的实践能力。 同时课程设计应充分体现“教师指导下的以学生为中心”的教学模式,以学生为认知主体, 充分调动学生的积极性和能动性,重视学生自学能力的培养。 二、二、OOPOOP 课程设计时间与地点安排:课程设计时间与地点安排: 时间:第二学年第一学期,共计两周 地点:管理工程学院实验室(图书馆 4 楼) 三、三、OOPOOP 课程设计任务与要求:课程设计任务与要求: 1 1、设计任务、设计任务 学习使用 VB 界面控件,能够熟练使用控件的各种属性、事件和方法进行编程,构建

3、 规范的 Windows 界面,并能够熟练使用部分第三方 ActiveX 控件进行编程,学习使用菜单 设计器。加深 VB 语言的实际应用能力;要求使用菜单系统、多窗口、多文档界面等。 学习使用文件系统,要求能够对顺序文件进行读写编程;熟练使用与文件操作有关的 控件(文件控件或公用对话框控件) 。 *了解 VB 与数据库接口编程的基本原理与操作;学习使用 VB 的数据控件。 2 2、基本要求:基本要求: 符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理; 要求界面友好美观,操作方便易行; 注意程序的实用性、安全性; 随时记录设计情况(备查,也为编写设计说明书作好准备) ;

4、 设计成果: 设计说明书一份(附录:设计说明书格式及要求) ,写出基本程序设计思想,设计方法 及设计技术,并画出程序功能模块图; 源程序(能编译成可执行文件并能正常运行) 。编写完整的程序并编译运行通过;要求 有良好的交互界面及较好的容错能力;在上述要求基础上可以扩充设计内容,范围不限 四、四、OOPOOP 课程设计内容与步骤:课程设计内容与步骤: 1 1、设计内容、设计内容 设计内容:设计内容: 成绩数据的统计分析成绩数据的统计分析 1)使用自定义数据类型,定义一个学生学生类型结构,包括学号、姓名、性别,成绩 1、成 绩 2、总成绩,等数据。 2)实现成绩数据的输入/输出界面设计。包括从文本

5、框和文本文件两种方式输入数据, 并能保存输入数据和计算结果。 3)实现对录入数据的编辑,查找、修改、删除、新增。 4)实现对输入数据的统计(排序、最大、最小、平均、等) 。 5)数据结果要求存入一个随机数据文件中。 2 2、基本步骤、基本步骤 1)对问题分析,进行功能划分,确定使用的编程技术; 2)按功能进行模块划分,进行算法设计; 3)按照功能划分和模块划分进行界面设计; 4)按照算法进行程序编码、调试和装配(测试) ; 5)报告的书写。 五、纪律与注意事项:五、纪律与注意事项: 1 按时上机,不定期进行点名,计入平时成绩;不得上网聊天、玩游戏,发现后扣除 平时成绩,严重者取消本次设计资格。

6、 2 个人完成自己的工作;不得拷贝!但允许互相交流、讨论。 3 设计结束后,要检查程序,并提交报告的打印稿和电子版。 六、成绩考核:六、成绩考核:. . 1考勤 20不定时点名。 2文档 20按附录的格式书写的完整的报告。 3程序 60能够正常运行、演示。 (为了检查独立完成情况,酌情对每人的工作 提问,要能正确回答) 附录:设计说明书格式及要求 一、封面; 二、目录; 三、设计任务书; 四、程序功能简介; 五、程序流程设计 1设计说明(窗体、模块,全局变量等) ; 2主程序流程图; 3各主要模块程序流程图; 4操作方法(流程)。 六、设计总结 西安邮电学院管理工程学院 2011 年 12 月

7、 目录目录 1 引言引言1 2 系统程序功能简介系统程序功能简介.1 2.1 系统功能简介 .1 2.2 系统使用环境.1 2.3 系统开发环境.2 3 程序流程设计程序流程设计 2 3.1 设计说明.2 3.2 主程序流程图.3 3.3 各主要模块界面及源代码.3 3.3.1 frmlogin 界面及源代码3 3.3.2 frmstudent 界面及源代码 6 3.3.3 frmteacher 界面及源代码.8 3.3.4 frmadd 界面及代码.20 3.3.5 frmcheck 界面及源代码24 3.4 主界面操作方法30 3.4.1 frmlogin 界面操作方法30 3.4.2 f

8、rmstudent 界面操作方法 .30 3.4.3 frmteacher 界面操作方法30 3.4.4 frmadd 界面操作方法30 3.4.5 frmcheck 界面操作方法.30 4 设计总结设计总结31 4.1 存在不足.31 4.2 心得体会.31 1 1 引言引言 通过这次课程设计实习加深了我对面向对象基础理论和基本知识的理解, 掌握使用 Visual Basic 可视化程序设计工具进行 Windows 程序设计的基本方法, 提高解决实际管理问题、开发软件的实践能力。 更加系统的了解和掌握了 VB 的基本概念和基本操作方法。能根据老师要求运用 VB 相应知识编写代码,设 计相应的

9、系统。 这次实习设计主要考察了我们对随机文件的读写操作、对数组的定义与操 作、For 循环的运用与掌握、VB 控件的使用及其各个属性的熟悉掌握。这次课 程设计的完成使我对 VB 有了更进一步的认识。 通过这次课程设计提高了我分析问题的能力,使我分析问题的思维更清晰, 逻辑更严密。解决问题的能力更强,进一步加深、巩固了所学知识。增加了我 对 VB 这门课程的兴趣,为我更好的学习 VB 这门课程打下了坚实的基础。同 时在实习期间我更加系统的掌握了 VB 的语言编写,以及程序的调试方法。 2 系统程序功能简介系统程序功能简介 2.1 系统功能简介系统功能简介 本系统是一个小型的、简单的学生成绩信息管

10、理系统。该系统包括学生的 基本信息(学号、姓名、性别)和成绩信息(语文、数学等) 。该系统分为学生 登录和教师登录两类:学生登录(使用学号登录,密码和学号相同)只可以查 看到自己的成绩信息且不可进行修改、删除等操作,注重学生个人隐私,不能 查看其他人的成绩信息;教师登录可以查看全体学生的成绩信息并且可以进行 学生成绩信息的管理操作,主要是对学生的成绩信息的管理操作,操作主要包 括成绩的添加、修改、删除、查找(按不同条件如:按学号、姓名、性别) 、以 及排序(按总分) 。 2.2 系统使用环境系统使用环境 操作系统:windows 2000 、windows xp 及其他更好的 windows

11、环境 系统支持:visual basic 6.0 及上版本 数据形式:随机文件 2 2.3 系统开发环境系统开发环境 系统开发环境: visual basic 6.0 3 程序流程设计程序流程设计 3.1 设计说明设计说明 全局变量:stu 主要窗体:frmlogin(登录界面) 、frmstudent(学生登录界面) 、 frmteacher(教师登录界面 可对学生成绩进行操作) 、frmadd(添加界面) 、 frmcheck(查找界面) 标准模块定义:Type student no As String * 8 name As String * 8 sex As String * 1 yu

12、wen As Single shuxue As Single yingyu As Single sum As Single average As Single End Type Public stu As student 3 3.2 主程序流程图主程序流程图 登录界面 教师登录界 面 学生登录界 面 排序添加修改删除查找 显示该学号 同学的成绩 信息 3.3 各主要模块界面及源代码各主要模块界面及源代码 3.3.1 frmlogin 界面及源代码界面及源代码 4 两个 textbox、两个 option、两个 command 相同的界面,分为不同的角色登录 源代码: Private Sub c

13、mdCancel_Click() End End Sub Private Sub cmdOK_Click() Dim i%, flag As Boolean Dim record_no% If txtUserName.Text = “ Or txtPassword.Text = “ Then MsgBox “用户名或密码不能为空!“, vbOKOnly, “错误“ ElseIf Option1.Value = True Then 判断是否选择教师按钮 If txtUserName.Text = “344682197“ And txtPassword.Text = “123456“ Then U

14、nload Me frmteacher.Show Else MsgBox “用户名或密码错误!“, vbOKOnly, “错误“ txtPassword.SetFocus Exit Sub 5 End If ElseIf Option2.Value = True Then 判断是否选择学生登录 Open “student.dat“ For Random As #1 Len = Len(stu) record_no = LOF(1) / Len(stu) For i = 1 To record_no Get #1, i, stu If (txtUserName = stu.no) And (tx

15、tPassword = stu.no) Then Close #1 MsgBox “欢迎登录成绩查询系统“, vbOKOnly, “欢迎“ frmstudent.Show Unload Me flag = False Exit For Else flag = True End If Next If flag = True Then MsgBox “非法用户,限制登录“, vbOKOnly + vbExclamation, “警告“ txtUserName.SetFocus End If End If End Sub Private Sub Form_Load() Option1.Value =

16、 True End Sub Private Sub Option1_Click() 6 txtUserName.Text = “344682197“ txtPassword.Text = “123456“ End Sub Private Sub Option2_Click() txtUserName = “ txtPassword = “ txtUserName.SetFocus End Sub 3.3.2 frmstudent 界面及源代码界面及源代码 一个 textbox、一个 command 源代码: Dim i% Private Sub Command1_Click() End End

17、 Sub Private Sub Form_Load() Open “student.dat“ For Random As #1 Len = Len(stu) 7 record_no = LOF(1) / Len(stu) For i = 1 To record_no Get #1, i, stu If Trim(frmLogin.txtUserName.Text) = Trim(stu.no) Then stu.sum = stu.yuwen + stu.shuxue + stu.yingyu stu.average = stu.sum / 3 If stu.sex = “1“ Then s

18、tu.sex = “男“ Else stu.sex = “女“ End If Text1.Text = Text1.Text stu.no Picture1.Print “ Picture1.Print “姓 名:“; “ “; stu.name Picture1.Print “ Picture1.Print “性 别:“; “ “; stu.sex Picture1.Print “ Picture1.Print “语 文:“; stu.yuwen Picture1.Print “ Picture1.Print “数 学:“; stu.shuxue Picture1.Print “ Pictu

19、re1.Print “英 语:“; stu.yingyu Picture1.Print “ Picture1.Print “总成绩:“; stu.sum Picture1.Print “ Picture1.Print “平均分:“; stu.average Close #1 24 Else Text1 = “ Text2 = “ Text3 = “ Text4 = “ Text5 = “ Option1.Value = False Option2.Value = False End If End Sub 3.3.5 frmcheck 界面及源代码界面及源代码 25 26 源代码: Privat

20、e Sub Command1_Click() 查找 Text1.Text = “ If Option1.Value = False And Option2.Value = False And Option3.Value = False Then MsgBox “请先选择查找条件!“, , “提示“ End If If Option1.Value = True Then 按学 号 Open “student.dat“ For Random As #1 Len = Len(stu) record_no = LOF(1) / Len(stu) For i = 1 To record_no Get #

21、1, i, stu If Trim(Text2.Text) = Trim(stu.no) Then 27 stu.sum = stu.yuwen + stu.shuxue + stu.yingyu stu.average = stu.sum / 3 Text1.Text = Text1.Text & stu.no Text1.Text = Text1.Text & “ “ & stu.name If stu.sex = “1“ Then stu.sex = “男“ Else stu.sex = “女“ End If Text1.Text = Text1.Text & “ “ & stu.sex

22、 Text1.Text = Text1.Text & “ “ & stu.yuwen Text1.Text = Text1.Text & “ “ & stu.shuxue Text1.Text = Text1.Text & “ “ & stu.yingyu Text1.Text = Text1.Text & “ “ & stu.sum Text1.Text = Text1.Text & “ “ & stu.average & vbCrLf Exit For End If Next If Trim(Text2.Text) Trim(stu.no) Then MsgBox “查无此人,请输入正确信

23、息!“, vbOKOnly, “提示“ End If Close #1 Exit Sub End If If Option2.Value = True Then 按姓名 Open “student.dat“ For Random As #1 Len = Len(stu) 28 record_no = LOF(1) / Len(stu) For i = 1 To record_no Get #1, i, stu If Trim(Text3.Text) = Trim(Left(stu.name, 4) Then stu.sum = stu.yuwen + stu.shuxue + stu.ying

24、yu stu.average = stu.sum / 3 Text1.Text = Text1.Text & stu.no Text1.Text = Text1.Text & “ “ & stu.name If stu.sex = “1“ Then stu.sex = “男“ Else stu.sex = “女“ End If Text1.Text = Text1.Text & “ “ & stu.sex Text1.Text = Text1.Text & “ “ & stu.yuwen Text1.Text = Text1.Text & “ “ & stu.shuxue Text1.Text

25、 = Text1.Text & “ “ & stu.yingyu Text1.Text = Text1.Text & “ “ & stu.sum Text1.Text = Text1.Text & “ “ & stu.average & vbCrLf Exit For End If Next Close #1 Exit Sub End If If Option3.Value = True Then 按性 别 29 Open “student.dat“ For Random As #1 Len = Len(stu) record_no = LOF(1) / Len(stu) For i = 1

26、To record_no Get #1, i, stu If stu.sex = “1“ Then stu.sex = “男“ Else stu.sex = “女“ End If If Trim(Combo1.Text) = “ Then MsgBox “请选择性别!“, vbOKOnly, “提示“ Exit Sub End If If Trim(Combo1.Text) = Trim(stu.sex) Then stu.sum = stu.yuwen + stu.shuxue + stu.yingyu stu.average = stu.sum / 3 Text1.Text = Text1

27、.Text & stu.no Text1.Text = Text1.Text & “ “ & stu.name Text1.Text = Text1.Text & “ “ & stu.sex Text1.Text = Text1.Text & “ “ & stu.yuwen Text1.Text = Text1.Text & “ “ & stu.shuxue Text1.Text = Text1.Text & “ “ & stu.yingyu Text1.Text = Text1.Text & “ “ & stu.sum Text1.Text = Text1.Text & “ “ & stu.

28、average & vbCrLf End If Next Close #1 Exit Sub 30 End If End Sub 3.43.4 主界面操作方法主界面操作方法 3.4.1 frmlogin 界面操作方法界面操作方法 教师使用教师用户名和密码进行登录,进入教师界面。学生使用学号登录, 密码也是学号(前提是该学号在随机文件数据内,否则提示非法用户) 。 3.4.2 frmstudent 界面操作方法界面操作方法 学生使用学号登录后的界面,学生不授予操作权利,且学生登录只能显示 该学号的成绩信息,无法查看其他学生的成绩信息、基本信息。 3.4.3 frmteacher 界面操作方法界面

29、操作方法 教师使用固定帐号、密码登录后的界面,教师可以进行成绩的管理操作, 包括浏览所有学生成绩、添加、修改、删除、按不同条件的查找、以及按总分 的排序操作。排序前必须先读取学生成绩,否则排序按钮不可用。修改和删除 功能是在这个界面配合 text8 的 mouseup 事件,就可以实现的。鼠标选中所需 操作学生学号后会在左边相应 textbox 中显示相关学生信息,若需修改,直接在 相应信息的 textbox 中修改,后点击修改按钮即可(注:学号是不可修改的) ; 若需删除,直接点击删除按钮即可。 3.4.4 frmadd 界面操作方法界面操作方法 教师可以在该界面添加输入新的学生成绩、基本信

30、息。在该界面下相应 textbox 中输入相应的学生成绩等信息后点击确定即可,同时在右边的 picturebox 中显示刚才添加的学生信息。 3.4.5 frmcheck 界面操作方法界面操作方法 教师在该界面下可以按不同的条件进行学生成绩等信息的查找。先选中并 输入查找条件后点击查找即可在上面的 textbox 中输出文件中所有符合条件的记 录项。 31 4 设计总结设计总结 4.1 存在不足存在不足 该程序虽然可以运行,能够实现要求的各项功能但,仍存在不足之处: (1) 该系统没有设计教师注册模块亦无密码修改模块,使得教师只能通过这 一个固定帐号、密码进入该系统。 (2) 该系统没有设计的

31、不够完善在某些需要限制的地方(如:学号只能为 8 位数字)没有做限制。在很多地方没有消息提示(输入不合法时) 。 (3) 修改时对学号无法操作,不能修改。 (4) 设计界面不够美观。 (5) 代码重复使用的地方较多,繁琐。 (注:还有很多没有实现的功能,就不说了,后面我会继续学习的。 ) 4.2 心得体会心得体会 两周的 VB 课程设计实习对我来说收获还是很大的,由于课堂听的不是很 好,刚开始的两天里基本上可以说是什么都不会,但是在泡泡的指导帮助下, 以及的同学们的讨论合作下,我还是完成了这次的程序设计,也是我的第一个 程序。在这个过程中我学会了很多以前不懂的东西,也使我喜欢上了 VB 。让

32、我认识到一个道理:书到用时方恨少。 通过本次程序设计我学会了很多,在操作过程中加强了我写代码的能力, 对问题的分析的能力也有了提高。学会了如何通过学习相互交流帮助来做自己 东西,在遇到自己不懂的就要虚心求教,多向老师同学学习。还使我学会了自 己通过调试找到程序中的一些问题并将其解决。程序的运行逻辑性很强,因此 设计程序可以锻炼人的逻辑思维能力。 在这两周的实习过程中,上机操作让我认识到动手做的过程很重要。不动 手去试你永远只会停留在理论上,理论和实践不一定都能达到一样的目的。理 论行不行的通,只有实践了才会知道。可以说这次上机实习给了我提供了一个 很好认识学习 VB 的机会。虽然这次设计的程序

33、不是那么好,但每当我的想法 通过自己努力得以实现使还是很开心,很有成就感的。学习是个快乐的过程。 32 西安邮电学院西安邮电学院管理工程学院 OOP 课程设计过程考核过程考核 表表 学生姓名闫锡班级/学号 信管 1002 班、 02105071 承担任务实验室(单位) 管工院实验室所在部门管工院 实施时间 2010年12月5日 2010年 12 月 17 日 第一周 1.第一周的周一(1 天):查阅资料、进行需求分析, (图书 馆) 2.第一周的周二到周三(2 天):进行应用软件的系统分析 及初步设计(机房) 3.第一周周四(1 天):进行系统详细设计(机房) 4.第一周周五到第二周的周一(2

34、 天)完成系统的界面设计 (机房)具体内容 第二周 1.第二周的周二到周三(2 天)完成系统的编码、调试、测 试(机房) 2.第二周的周四(1 天):编写开发报告。 (机房) 3.第二周的周五:(1 天):检查作业,提交报告及软件, 分组答辩。 (机房) 指导教师(师傅)姓名 毋建宏 魏笑笑 职务或职称 副教授 讲师 学习态度 认真 一般 不认真 学习纪律 全勤 偶尔缺勤 经常缺勤 指导教师(师傅) 对学生的评价 实践能力 很强 一般 较差 33 指导教师(师傅)对学 生专业知识或社会实践 能力等情况的意见指导教师(师傅)签字 年 月 日 西安邮电学院西安邮电学院管工院院 OOP 课程设计成绩鉴定表成绩鉴定表 学生姓名闫锡班级/学号信管 1002 班、02105071 进行时间 2012年年12月月05日日 2012年年 12 月月 17 日日 过程考核与考勤(20 分) 软件设计质量(40 分) 设计报告书写鉴定(40 分) 成绩鉴定 总分(100 分) 评阅教师姓 名 毋建宏 魏笑笑 职称 副教授 讲师 成 绩 评语 评阅教师签字 年 月 日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 研究报告 > 商业贸易


经营许可证编号:宁ICP备18001539号-1