打字比赛系统的设计与实现_第1页
打字比赛系统的设计与实现_第2页
打字比赛系统的设计与实现_第3页
打字比赛系统的设计与实现_第4页
打字比赛系统的设计与实现_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、本科毕业论文(设计)(2010届本科毕业生)题目: 打字比赛系统的设计与实现 学生姓名: 杨秀凤 学生学号: 06029065 学院名称: 物理科学与技术学院 专业名称: 电子信息工程 指导教师: 李柳 2010年 05 月 26 日沈阳师范大学物理科学与技术学院本科生毕业论文开题报告学生姓名杨秀凤专业电子信息工程学号06029065开题时间2010年3月10日指导教师李柳论文题目打字比赛系统的设计与实现选题依据、意义、研究内容及目标文章主要分析了考试系统的系统设计理念和系统实现的过程。简单介绍了考试系统的发展前景及开发意义和打字比赛系统开发时所需工具与相关技术visual basic和acc

2、ess数据库;重点介绍了开发打字比赛系统的设计与实现过程.通过调试,该系统运行正常,达到了预期的效果, 对于提高教学质量和教师的工作效率起到了重要意义.研究方法、研究方案及进度研究方法及方案:查阅相关领域的资料进行了解;软件系统的开发和设计程序编制与系统调试;撰写论文进度: 资料查阅、选题 (12月20日 至12月30日) 调研、翻译外文资料 (12月31日 至 3月9日) 撰写开题报告(写作提纲) ( 3月10日 至4月1日) 实验研究及论文初稿 ( 4月2日 至 4月20日) 论文修改稿 ( 4月21日 至 5月5日) 论文定稿 ( 5月6日 至 5月26日)研究特色及预期成果 打字比赛系

3、统具有以下特点:1考试环境公平、公正。2无纸化办公的实现 3易于操作,深受教师欢迎。4系统的设计,工作量小,维护方便,容易改造。在visual basic6.0环境下采用管理端access数据库来实现的中英文打字比赛系统,经过调试,系统运行正常,达到了预期目标。主要参考文献1. 龚沛曾,陆慰民 . micorsoft visual basic 6.0 程序设计教程m.北京:高等教育出版社,1992, 26(2):71-78.2. 刘韬.visual basic 中文版程序指南m .西安:电子出版社,1993,8(3):106-124.3. 萨师煊,王珊.数据库系统概论j.北京:高等教育出版社,

4、2001,7(2):85-97. 4. 刘刚.visual basic 程序设计与案例j.北京:高等教育出版社. 2003,23(4): 235-256.5. 李源.microsoft visual basic 6.0控件参考手册m.北京:希望电脑公司出版社,2000,25(3):18-20.6. 赵荫平.visual basic 6.0数据库编程指南m.北京:希望电脑公司出版社,2001,9(2):56-64.指导教师意见开题委员会意见备注目 录中文摘要 abstract 引 言 1第一章 系统开发工具与相关技术3第1节 visual basic 可视化编程语言3第2节 数据库概述 4第3节

5、 access简介 5第二章 比赛系统的设计6第1节 总体设计 6第2节 数据库建立 7第3节 应用管理模块的设计 9第4节 客户端模块的设计11第三章 打字比赛系统的实现 18第1节 调试18 第2节 测试19第3节 系统的实现19结论 24参考文献 25 引言一、 简述 在世界高速发展的今天,电脑已经成为挂在我们嘴边的一句口头禅,它已经深入到日常工作和生活的各个方面,比如文字处理、信息管理、辅助设计、图形图像处理、教育培训以及游戏娱乐等。自从windows问世以来,其图形用户界面日益深入人心,以往在dos环境下运行的应用程序也越来越多地被升级成windows环境。windows系统的推出使

6、电脑从高雅的学术殿堂走入了寻常百姓家,各行各业的人们无须经过特别的训练就能够使用电脑完成许多复杂的工作。然而,虽然现在世界上已经充满了多如牛毛的各种软件,但它们依然不能满足用户的需求,人们还不得不开发适合自己特殊需求的软件。 目前,许多的专业考试就已经由传统的笔试转变为软件开发的计算机网络考试进行。计算机考试系统与传统的考试系统相比有多方面的优势。首先,可以省去试卷印刷的过程。其二,可以充分发挥计算机在信息处理方面的优势。例如:建立海量的题库供将来使用,对计算机处理考试结果,管理考生信息等提供有价值的信息。这都有赖于计算机网络的高速发展带来的功能强大的信息处理平台,是创建一套集信息采集、信息加

7、工、信息传输与信息存储自动化、共享化的信息管理系统成为可能。二、开发本系统的意义众所周知,我国是世界上人口最多的国家,我国学生的数量也是惊人的。在我国,目前学校与社会上的各种考试大都采用传统的考试方式,在此方式下,组织一次考试至少需要五个步骤,即人工出题、考生考试、人工阅卷、成绩评估和试卷分析。对于学校的教师来说,最头疼、繁重的工作莫过于出题了。显然,随着考试类型的不断增加及考试要求的不断提高,教师的工作量将会越来越大,并且其工作将是一件十分烦琐和非常容易出错的事情。每学期各种大小考试浩如烟海,常常会有这样的事情发生:因为出题教师笔误出错试题,不得不要到每个考场去更正;而市场上出售的试题,却经

8、常因为其内容与实际教学情况不相符合而不能全部采用。可以说传统的考试方式已经不能适应现代考试的要求。随着计算机应用的迅猛发展,网络应用不断扩大,并且正逐渐深入到千家万户。人们迫切要求利用这些技术来完成一套考试系统,以减轻教师的工作负担及提高工作效率,于此同时也提高了考试的质量从而使考试更趋于公证、客观,更加激发学生的学习兴趣。一个完备的考试系统可以使用户在网上学习过后及时检验自己的学习效果,已发现自己的不足,使得学习效率得到很大的提高。考试系统中题目的生成、试卷的提交、成绩的批阅等都可以在系统中自动完成。只要形成一套成熟的题库,就可以实现考试的自动化。这样一来,教师所要做的只是精心设计题库,维护

9、题库,而不是组织考试,从而大大的减轻了教师的负担。这表明其经济性是相当可观的。利用考试系统完成考试的前提是要有一定的打字速度,这样才能在一定的时间里答完试卷。为了提高每个人的打字速度,进行打字比赛考试是一个很有效的方法。三、论文研究的主要内容本文介绍了在visual basic6.0环境下采用管理端access数据库来实现的中英文打字比赛系统,文章主要分析了考试系统的系统设计理念和系统的组成部分。首先,简单介绍了考试系统的发展前景及开发意义;其次介绍了打字比赛系统开发时所需工具与相关技术visual basic和access数据库;重点分析打字比赛系统的设计与实现过程,给出了系统的总体设计框图

10、和关键技术流程图,通过调试,该系统运行正常,给出了运行界面。最后得出结论,该系统的开发具有一定的实际意义,对于提高学生计算机应用能力十分有益,也对该系统存在的不足提出了建议。 第一章 系统开发工具与相关技术 第1节 visual basic可视化编程语言一、visual basic 介绍visual basic是microsoft公司推出的最成功的可视化编程工具msdn之一,是目前世界上使用最广泛的程序开发工具,拥有数以百万计的用户。自从1991年microsoft 公司推出visual basic以后,人们逐渐以可视化工具进行界面设计,以结构化basic语言为基础,以事件驱动为机制,是近年来

11、被广泛使用的一种高级语言。1998年visual basic6.0版继承了basic语言简单易学的优点,又增加了许多新的功能,它逐渐成为功能强大的编程工具,也是目前世界上使用最广泛的程序开发工具,拥有数以百万计的用户。自从1991年visual basic语言诞生后,前最新的程序设计思想:面向对象与事件驱动,使编程变得更加方便、快捷。visual basic从一个小语种发展成了一个集成的开发环境,既可以开发个人或小组使用的小型工具,又可以开发多媒体软件、数据库应用程序、网络应用程序等大型软件。visual basic是一种通用的程序设计语言,在许多领域得到了广泛的应用,而在数据库方面的应用尤其

12、受到人们的重视。数据库应用是计算机应用中极其重要的一个方面,他在信息处理领域中起着中心环节的作用。由于网络技术的发展,数据库已成为计算机技术应用的重要环节。microsoft的市场调查表明,百分之七十以上的visual basic应用程序都设计到数据库,而visual basic本身完全可以满足数据库应用程序的设计要求。二、visual basic 的特点visual basic是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,可用于开发windows环境下的各类应用程序,目前较为流行的应用软件平台。visual basic使我们摆脱了所有的低层消息处理。许多消息由visua

13、l basic自动处理了,其它的作为事件过程由编程者自行处理。这样可以快速创建强大的应用程序而毋须处理不必要的细节。在传统程序设计语言来设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。visual basic通过对事件的响应完成具体操作。visual basic程序设计针对不同的对象,可由用户操作引发某个事件来驱动完成某种特定功能,又可以由来自操作系统或其他应用程序的消息触发,甚至有应用程序本身的消息触发。这些事件的顺序决定了代码执行的顺序,因此应用程序每次运行时所经过的代码的路径都是不同的。因为事件的顺序是无法预测的,所以在代

14、码中必须对执行的“各种状态”作一定的假设。第2节 数据库概述数据库技术子产生以来,发展到今日已形成了坚实的理论基础和独特的数据处理技术,并获得了广泛的应用。几乎所有的应用程序都需要存放大量的数据,并将其组织成易于读取的格式。这种要求通常可以通过数据库管理系统(dbms)来实现。数据库管理系统提供了数据在数据库内存方式的管理能力,使编程人员不必像使用文件那样需要考虑数据的具体操作或数据连接关系的维护。数据库可以被定义为一个基于某种数据模型存贮起来的,为某个特定组织的多种应用服务,并具有尽可能小的冗余度的相互关联的数据集合。随着计算机技术的发展,数据库越来越显示出其强大的数据存储和数据管理功能。最

15、近几年来关系模型已经成为数据库设计事实上的标准。据库模型是对客观事物及其联系的数据描述,即实体不管表在数据库模型的数据化。数据模型中把描述实体的数据称为记录,把描述属性的数据称为项。不管表在数据库文件中的物理存储方式如何,都可以把它看作一组行和列。在关系数据库中,行被称为记录,而列则被称为字段,表是有关信息的逻辑组。数据库可以由多个表组成,表与表之间可以用不同的方式关联。第3节 access简介如果想访问一个已经存在的数据库,或者想自己创建一个数据库,access提供了非常方便的操作和强大的功能。如果要开发中小型数据库系统,用access数据库比较合适用,本系统就是采用access建库。acc

16、ess实际上是一种多媒体数据库,它可以存取包括多媒体数据在内的多种类型的数据。创建数据库的两种方法:一种是使用“数据库向导”,用户可以在系统提供的数据类型中作出选择。另一种是创建一个空的数据库,由用户根据自己的需要添加相应的内容。用access创建表有三种方式 : 使用向导创建表:用户根据向导提供的字段可以直接选择。 使用设计器创建表:用户可以定义一个或多个字段作为主键 使用输入数据创建表:可以直接输入数据创建一个新表第二章 比赛系统的设计 第1节 总体设计打字比赛系统首先进入的程序是考场选择,这一程序是为打字比赛做服务的,开启这一系统程序后,就开始打字比赛系统的登入。登入这一部分需要校园卡号

17、的验证,如果卡号正确,进行确定后,就进行答题了;如果卡号不正确,则继续登入正确的卡号。在打字比赛结束后,有一答题完成了吗的程序设定,在确定后提交试卷,接着系统就会自动进行成绩分析。图2.1所画的就是打字比赛程序的程序流程图。 图2.1 程序流程图本打字比赛系统共设计了三个部分,分别为数据库、应用管理与客户端。这三个部分之间是互相通讯的,这样的设计可以确保本系统的连贯性。下图2.2为总体框图。 图2.2总体框图数据库中包括考试试题、考生名单和考生成绩三个表。应用管理部分的功能是学生注册、考成选择与试题管理,学生注册和试题的管理都是以文本文件形式保存,在数据库中体现,分别于考生名单和考试试题相对应

18、。在选择考场时则通过系统服务器与数据库连接调用其中的考生名单的表,在这一表中考生已分配好考场。客户端分为考试和评分两部分,在考试中又有登录、抽题和计时三部分,这些在下文中详细介绍。第2节 数据库建立在数据库中有三个表,一个表是考试试题的表,内容是打字比赛的中英文试题,存在表名为matchcfg中;一个表为考试成绩,表名为matchdate;此表是打字结束出成绩后生成;另一个是表名为users考生名单表,存放的内容是参赛选手信息及考场安排。首先,在表matchcfg里有五个字段:第一个字段名为matchid,这一字段下是编号为1和2的序号;下一个字段名为matchwords,其内容是打字比赛时的

19、考试原文,在序号1一栏中对应的是一篇散文,对应序号2的一栏中前一部分是英文,后半部分为一篇关于思想品德方面的文章;第三个字段的段名是matchstatus,其下的内容是0和1两个序号;第四个是存放打字时间的字段,字段名是matchtime,打字时间分别是15和30分钟;最后一个字段名是matchnote,内容是将在登录界面上显示出来的五条注意事项。图2.3是表matchcfg里的部分内容。 图2.3数据库表matchcfg其次,在表matchdate中有六个字段,字段名分别为cardid、loginip、logintime、logouttime、typenumber和rightnumber。各

20、个字段里存储的内容分别是参加比赛生的校园卡号、考生所用计算机的ip地址、比赛开始时间、比赛结束时间、比赛时输入的中英文字数以及正确的字数。表matchdate如图2.4所示:图2.4 数据库表matchdate最后一个表users中有四个字段,字段名分别是cardid、usernamer、userunit和usergroup。其相对应的内容是校园卡号、参赛选手姓名、选手所在学院和每个选手所在的场次。数据库表users里的部分内容如图2.5所示。 图2.5 数据库表 第3节 应用管理模块的设计 本打字比赛系统中应用管理模块包含了三个功能,分别为学生注册、考场选择和试题管理。在这一模块中着重设计了

21、考场选择部分,设置的窗体标题为打字比赛管理软件,而试题管理和学生注册两部分并没有通过窗体来体现。应用管理模块建立在visual basic6.0环境下的一个工程名为tmm的工程里。一、考场选择的设计考场选择的功能是进行考场场次选择的,这是打字比赛首先需要完成的。共有三个考试场次供选择,场次1里有121个比赛选手,场次2有99个比赛选手,场次3有88个选手参加比赛。在打字比赛管理软件窗体中有两个框架,框架里分别添加一个文本框。框架标题分别为“用户列表”和“比赛状态”,在用户列表的的文本框中显示的是所选场次里的比赛选手的校园卡号、姓名和院系;比赛状态里显示的是正在参加考试的考生所使用的计算机的ip

22、地址。具体分布情况如图2.6所示。图2.6 打字比赛管理窗体上图中的用户列表中显示的是场次2里的所有比赛选手的名单,在选定此场次后,在比赛登录时输入的校园卡号就必须为场次2里的学生校园卡号,否则将出现校园卡号错误的信息。选择场次1和场次3时所输入的校园卡号与场次2的情况是相同的,必须与对应的场次里的校园卡号相一致。二、试题管理和考生注册的设计在本打字比赛系统中试题管理部分是比较简单的,没有具体的窗体对其试题进行修改、增加和删除等功能,只有一篇英文短文和两篇中文文章,都是以文本文件的形式保存,在数据库的考试试题的表中直接输入这三篇文章的内容,也就是试题内容直接在数据库表中直接修改、增加和删除就可

23、以完成试题的管理了。学生注册这一部分在文本文件中存储是场次2和场次3的考生信息,有对应的校园卡号、姓名和所在学院,场次1的考生信息直接添加在数据库中场次2与场次3的后面,与场次2和3不同的是用1到121个数字序号代替校园卡号、姓名和学院。第4节 客户端模块的设计客户端模块有考试和评分两部分功能,其中的考试部分又分登录、抽题与计时三步。客户端这一模块建立在工程名为typematch的工程中,设计了四个窗体,分别为:考试比赛开始窗体frmflasl、比赛登录窗体frmlagoin、答题窗体frmmain、阅卷评分窗体frmmsg。在客户端模块的程序流程中,答题与评分两部分是整个打字比赛系统中重要的

24、环节,下图2.7为答题和评分的流程图。图2.7 答题与评分流程图二、考试模块的设计(1)考试开始窗体考试模块中首先出现的窗体是比赛开始窗体,这一窗体的主要作用是为打字比赛开始做准备,在此界面出现后点击窗体上的任意点或按键盘上的任意键将进入考试登录界面。考试比赛开始窗体如图2.8所示。 图2.8 比赛开始界面比赛开始界面需要的程序设计很少,用到的也是在visual basic环境中最基础的知识。(2)登录窗体登录是考试环节的第一步,设计的界面为比赛登录界面,窗体图如2.9所示。 图2.9 比赛登入窗体 由图可以看到在比赛登录界面中,有一个标题为注意事项的框架,框架中有五条信息用以提醒考生考试时一

25、些注意事项,其内容是由数据库的matchcfgb表中调用的,它在表中的位置是第五个字段matchnote中。 在输入校园卡号后面的文本框里输入校园卡号,再输入卡号之前需要先打开打字比赛管理软件窗体,选择好才能考试,然后才能在比赛登入窗体上输入与已选择考场里对应的校园卡号。如果没有事先开启打字比赛管理软件窗体,启动后台服务器与数据库连接,那么在进入比赛登入窗体后,窗体中无法显示注意事项,也无法输入校园卡号,停顿一会后,就会出现如图2.10所示的对话框,点击确定按钮后,程序就会停止运行。 图2.10 查找失败对话框 if status = timeout then msgbox 查找管理机失败 如

26、果输入校园卡号后出现卡号错误的对话框,说明输入的这个校园卡号是之前已经使用并确认的,也就是说这个校园卡号的考生已经答完题了,不能进行第二次考试。这时就需要输入一个没有进行过考试的校园卡号,输入完校园卡号后会出现一个确认考号是否正确的对话框,核对完卡号正确后点击“是”按钮。只有输入正确的和之前没有使用过的校园卡号,才可以顺利的进入到打字比赛答题系统。如图2.11中(a)和(b)分别是输入的校园卡号错误和校园卡号正确时的对话框。 (a) (b) 图2.11 卡号错误与确认msgbox 校园卡号输入错误, vbcriticaltxtcardid.setfocus sendkeys home+end

27、显示输入的校园卡号错误的语句cfm = msgbox(s & chr(13) & chr(10) & chr(13) & chr(10) & 是否正确?, vbyesno + vbdefaultbutton2, 请确认)if cfm = vbyes then 如果校园卡号正确则显示 strusername = split(s, chr(13) & chr(10)(0) 考生姓名strunit = split(s, chr(13) & chr(10)(1) 考生学院(3)抽题窗体抽题窗体亦是答题窗体,答题是打字比赛系统里的主体部分,在这里进行中英文打字比赛考试。试题的前一部分是英文,后一部分是中

28、文。在这一界面上的最前面一行显示的是校园卡号、姓名、院系和需要打入多少字数,这些字数占有多少页以及目前打字进行到第几页,在下一行就是所比赛的内容。这一部分是有若干个文本框组成,在窗体的最后一行所显示的是打字的速度和正确率,还有就是比赛所剩余的时间,最后是打字完成的确认按钮。这样的设计可以使监考老师清楚地了解考生信息和考生自身的考试水平和剩余时间。详细的内容如图2.12所示的窗体图。 图2.12 答题窗体图在考试开始时,所需要的考试内容是从access数据库管理服务器中调用出来的,在access数据库里存储的有考生名单和考试内容。typestring=strwords%55 showtext t

29、ypestring 调用打字比赛管理软件在这一管理软件中有语句与系统后台服务器相连调用数据库表中的内容,case getusers wskconn(index).senddata getnamebyid(mid(s, 9) & chr(13) & chr(10) & getunitbyid(mid(s, 9) 调用三个数据表中相关内容case getwords wskconn(index).senddata strwords case getcount wskconn(index).senddata cstr(len(strwords) 考试试题中试题case gettimes wskconn

30、(index).senddata cstr(strmatchtime) 考试时间case getnotes wskconn(index).senddata cstr(strmatchnote) 答题记录考试时,为了文字清晰,方便产赛选手的比对,中英文使用的都是同一的宽度。 for i = 1 to 100 with lblinput(i - 1) if i 1 then .left = lblinput(i - 2).left + lblinput(i - 2).width .top = lblinput(i - 2).top end if开始打字时光标停在文章的第一个字母上,使用键盘上的方向

31、键可以移动光标。当文章文字显示为绿色时是当前光标的所在位置,用语句if i = (txtinput.selstart mod 100) + 1 then lbltext(i - 1).forecolor = vbgreen来实现。考试时输入的文字如果是正确的,那么输出的文字显示成蓝色,相关语句是if .caption = lbltext(i - 1).caption then .forecolor = vbblue如果输出的文字为红色,这说明输入的文字与原文不一致,即输入错误,语句如下所示: lbltext(i - 1).forecolor = vbred语句if istest then ms

32、gbox 成绩: & 打字速度- & lblwpm.caption & , & 正确率- & lblright.caption 是在答题时输出的答题速度和正确率。(4)计时计时是与答题同时完成的,在整个考试过程中有15分钟的答题时间,并且是以倒计时的形式出现的。当登录成功进入打字界面后,打字时间就会自动倒计时。lblrtime.caption = 剩余时间: & rtime 60 & 分 & rtime mod 60 & 秒 if rtime = 2 then doevents如果在15分钟之内答题结束,则按完成按钮,此时会有打字是否完成的提示,如果打字没有完成,就点击“否”,这样就会回到打字

33、比赛界面,继续为完成的打字;如果确定打字结束,就点击“是”。cfm = msgbox(是否结束打字?, vbquestion + vbyesno + vbdefaultbutton2, 确认) if cfm = vbyes then cancel = 1 typeok else cancel = 1 end if图2.13是提示打字是否结束的对话框。 图2.13 确认对话框如果时间就到了而答题还未完成,就无法再进行答题,而是直接提交成绩。lblwait.zorder 0lblwait.caption = 正在提交成绩,稍候.lblwait.visible = true 试卷依然存在timer1

34、.enabled = false 计时器不再计时txtinput.locked = true 输入存在imgok.enabled = falsefrmlogin.winsock1.senddata senddata & strcardid & , & cstr(matchtime - rtime) & , & cstr(rightnumber) & , & len(txtinput.text)二、评分模块的设计打字结束提交完试卷后,又设计了显示比赛成绩的窗体,在这一窗体的下方有一个确定按钮,在窗体的上方显示的是比赛结束、输入正确的字数、正确率和速度。看完成绩后点击确定按钮,次比赛打字系统运行结

35、束。窗体图如2.14。 图2.14 比赛结束窗体if len(temp1) 0 then lblright.caption = 正确率: & int(rn * 100 / len(temp1) & % lblright.caption = int(rn * 100 / len(temp1) end if 正确率换算公式 if rtime matchtime then lblwpm.caption = 速度: & int(rn) * 60 / (matchtime - rtime) & (wpm) 速度换算公式lblwpm.caption = int(rn) * 60 / (matchtime

36、- rtime) 输入正确字数的算法end if 比赛结束后的成绩以及参加比赛的考生信息,比赛开始时间、比赛结束时间等相关信息都保存在数据库表matchdate中。第三章 打字比赛系统的实现 第1节 调试系统调试的目的是发现程序和系统中的错误并及时加以纠正。在一个系统中调试应该包括程序调试、功能调试(分调)、总调,在库存管理系统中用的调试方法也包括这些:一、程序调试程序编写完毕后,调试程序是一个必不可少的阶段。一个较大的程序,或多或少总有一些错误存在,应用程序的代码越长,出现错误的概率也越高。通过调试,可以尽可能多地查出并纠正错误;此外,程序本身也具有一定的容错能力,称为程序的健壮性,如果程序

37、在运行过程中有错误发生,或有不合法的数据输入,程序就会有适当的信息提示,但不至中断运行。(1)语法错误语法错误由不正确的代码引起,如多写、漏写、拼错关键字的字母,多写、少写关键字,漏写、误用一些符号等。例如使用了块状的ifthen语,句却没有end if,有do while没有loop,将for i = 1 to 10与next 配对,使用msgbox时各参数间的逗号误用中文的全角逗号,将一个字符串赋给一个整型变量等等。语法错误将导致程序运行的中断,系统会给出相应的错误提示,因此语法错误易于发现和纠正,在程序调试时先予清除。(2)运行错误程序在运行期间产生了非法操作会导致运行错误。例如代码中要

38、打开的某个文件或需加载的某个图片在指定的路径下并不存在,或者在语句average = sun/n中,由于没有给n赋值,造成除数为0的错误。运行错误具有隐蔽性,如果带有运行错误的语句因条件表达式不满足而在程序运行时未被执行到,则该错误就难以被发现到。(3)逻辑错误 逻辑错误的责任在于程序员,由于程序员使用了不正确的算法,例如将加法误为减法,求阶乘时将保存阶乘值的变量误初始化成0,导致所有阶乘值均为0等。这类错误由于语法正确,且运行期间不涉及非法操作,故系统不会报告出错信息,而且还能给出运行结果,当然这个结果是错误的。如果一个程序的运行结果有错,则程序中必定隐藏着逻辑错误,因此程序编写完毕应使用一

39、些数据对程序作测试以期发现其中的错误。二、分调即将一个功能内所有程序按次序串联起来调试。 三、总调将主控制调度程序和功能模块联结起来调试。第2节 测试测试是系统开发周期中一个十分重要的阶段,其重要性体现在它是保证系统质量与可靠性的最后关口,是对整个系统开发过程的最终审查,如果错误不能在测试阶段被发现并纠正,造成的后果是不堪设想的。测试是以找错误为目的,不是要证明程序无错,而是要精心选取那些容易发生错误的测试数据,以十分挑剔的态度,证明程序有错。测试主要分为功能测试和强度测试及性能测试(1)功能测试:测试是否满足开发要求,是否能够提供设计所描述的功能,是否用户的需求都得到满足。功能测试是系统测试

40、中最常用和必须的测试,通常还会以正式的软件说明书为测试标准。(2)强度测试及性能测试:测试系统的能力最高实际限度,即软件在一些超负荷的情况,功能实现情况,如要求软件某一行为的大量重复、输入大量的数据、对数据库大量复杂性的查询等。测试软件的运行性能。这种测试常常与强度测试结合进行,需要事先对被测试软件提出性能指标,如传输连接的最长时限、传输的错误率、计算的精度 、记录的精度、响应的时限和恢复时限等。第3节 系统的实现首先打开以保存的打字比赛系统里的文件夹mrg,开启visual basic6.0环境后,点击运行按钮,出现打字比赛管理软件窗体,例如:选择场次3,在下面的文本框中出现88个比赛选手。

41、如下图3.1所示图3.1 管理界面然后再打开typematch文件夹里的visual basic6.0环境,再点击运行按钮,出现考试开始界面图3.2。 图3.2 初始界面点击此界面内的任意一点,则进入比赛登入界面,如图3.3。 图3.3 登入界面再输入校园卡号的位置输入校园卡号“08010060”,点击登录按钮,显示校园卡号错误,如图3.4所示。 图 3.4 卡号错误说明这个校园卡号,之前已经输入过一次,所以我又重新输入校园卡号“08010010”,这回出现了请确认的对话框,如图3.5所示。 图 3.5 请确认对话框在对话框里显示的是比赛选手的姓名及所在学院,如果是比赛选手的姓名和学院,点击“

42、是”按钮。然后就进入打字界面,开始计时打字。图3.6所示。图3.6 打字界面图4.4的界面是考试时间15分钟结束后所在的打字位置,考试时间一到,就会自动提交成绩。如果时间没到,也可以点击“完成”按钮,这时会出现一个对话框提醒选手是否结束打字,如图3.7所示。 图 3.7 确认对话框如果打字完成了,就点击按钮“是”,否则点击“否”,则回到打字界面接着之前光标的位置继续打字,直到打字完成为止。成绩提交后打字成绩很快就出来了,此次打字的成绩输入正确的字数为:612;正确率:95%;速度:40。比赛结束窗体如下图3.8所示。图3.8 结束界面此窗体出现后,点击确定按钮,中英问打字比赛结束,程序运行结束

43、。以上是以具体事例来实现的中英文打字比赛系统。结 论本打字比赛系统的设计采用了目前较新的关系模型数据库,以微软公司推出的可视化编程工具visual basic为程序设计平台,模块化的设计和面向对象与事件驱动机制的使用,使本系统的编程变得更加方便、快捷。经测试系统在 windows98/2000/nt/xp等多种操作环境下正常运行,具有很强的适应性和可移植性。系统的视窗图形用户界面,方便了用户的使用和操作,数据库中存有的众多c语言模拟试题的实用性大大增强。通过对本系统的设计和编码,使我更加全面了掌握了visual basic程序设计语言在面向对象编程上的功能,进一步了解了软件设计的各个方面。从本系统的设计和实现等工作,对我的大学学习是一个全方位的考察和总结。本系统通过自己的努力,经过试用证明,系统基本满足教师对题库操作方面的需要。实现了人员信息维护、题库维护、成绩表生成等功能,给教师带来很多方便,在界面上立求做到美观、在操作方面尽量做到满足用户使用习惯。但由于自己水平有限,加上时间有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论