《上海建桥学院信息技术系毕业论文.docx》由会员分享,可在线阅读,更多相关《上海建桥学院信息技术系毕业论文.docx(44页珍藏版)》请在三一办公上搜索。
1、本 科 毕 业 设 计(论 文)题目基于个人电脑的无纸化考试软件的设计与实现(高等数学篇) 学生姓名 学 号 指导教师 学院(系)信息技术学院 专 业 计算机科学与技术 交稿日期 2012年5月20日 上海建桥学院毕业设计(论文)学术诚信声明本人郑重声明:所呈交的毕业设计(论文),是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本毕业设计(论文)不含任何其他个人或集体已经发表或撰写过的作品或成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。作者签名: 日期: 2012 年 5 月 20 日上海建桥学院
2、毕业设计(论文)版权使用授权书本毕业设计(论文)作者同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权上海建桥学院可以将本毕业设计(论文)的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本毕业设计(论文)。 保密,在 年解密后适用本授权书。本论文属于 不保密。(请在以上方框内打“”)作者签名: 指导教师签名:日期:2012年 5 月 20 日 日期:2012年 5 月 20 日 本科毕业设计(论文)基于个人电脑的无纸化考试软件的设计与实现(高等数学篇)摘 要 随着计算机的技术日益普及,素质教育不断的推广,计算机作为教学
3、手段开始不断进入我们的生活,这种教育方式给传统的教育模式带来有益的补充,而基于个人电脑的考试软件也因为它的准确性、便捷性、可重复性不断受到人们的青睐,这也使其成为传统教育考试发展的一种趋势。本系统运行于单机模式,采用Visual Studio 2010作为开发平台,以ACCESS 2003作为后台数据库,使用的语言为C#语言。该系统实现了显示考生姓名学号,随机生成题目,判断对错,统计分数。该系统分为练习与考试部分,区别在于练习部分由答案提示。该系统使用方便,操作简单,对于广大学生的高等数学的学习具有帮助作用。文中首先阐述了个人考试系统发展背景与现状,简要介绍了.NET、ACCESS 、C#等相
4、关知识。接着详细介绍了系统的需求分析、可行性分析、技术分析、功能设计、结构设计、数据库设计及系统功能的实现。最后描述了系统的细节制作,并对系统的开发做出了全面的总结。关键词:C#,Access,高等数学,考试练习系统Based On The Personal Computer Paperless Test System Software Design And Implementation ( Higher Mathematics )ABSTRACTWith the spread of computer of computer science and quality education, com
5、puter have been become a teaching tool come into our lives,this teaching means is a goo supplement of traditional teaching,at the same time personal computer test software is popular with human because its accuracy、convenience 、repeatability, this is also become a trend of traditional teaching test.
6、My software use singal computer pattern, Using Visual Studio 2010 as a development platform,in the ACCESS 2003 database as a background,Using the language of C # language.The system realizes the display name student ID, randomly generated questions, to judge right and wrong, statistical scores.The s
7、ystem is divided into training and test, difference is the practice in part by the answer prompt.The system is easy to use, simple operation, for the majority of students in the higher mathematics learning has helped.This article first elaborated the individual test system development background and
8、 current situation, introduced briefly . NET, ACCESS, C # and other related knowledge. Then introduces in detail the system requirements analysis, feasibility analysis, technical analysis, function design, structure design, the database design and the system function realization. Finally, describes
9、the details of the system, and the development of the system to make a comprehensive summaryKey words: C#, Access, higher mathematics, # examination exercise system 目 录前 言11. 系统概述21.1 项目开发的目的和意义21.2 无纸化考试软件的现状与分析31.3 计算机考试系统的发展趋势42. 系统分析52.1 需求分析52.1.1 课题欲解决的问题52.1.2 解决方案62.3 技术可行性分析72.3.1 Visual St
10、udio 201072.3.2 .NET C#程序设计82.3.3 .ADO.NET 数据连接92.3.4 ACCEESS数据库与SQL查询语言103. 系统总体设计133.1 系统功能分析133.2 系统功能模块设计133.3 数据库设计143.3.1 数据库需求分析143.3.2 数据库概念设计143.3.3 数据库逻辑结构设计153.4 环境配置164. 系统实现174.1 登陆界面实现174.2 使用说明界面实现194.3 数据库连接实现204.4 判断题模块的实现214.5 单选题模块的实现244.6 多选题模块的实现264.7 填空题模块的实现284.8 显示分数模块的实现294.
11、9 管理使用者模块的实现315. 测 试335.1 测试环境与测试条件335.2 测试过程335.3 测试结果与分析346. 总 结36参考文献37致 谢38前 言高校扩招后,我国高等教育步入了大众教育。高等教育的受众不再仅仅是绝少数的精英,而是广大更加普通的学生。数学教育的难题在于既要满足数学发展越来越高的要求,又要适应大众化教育的现状。根据调查,大部分高等院校的学生,高等数学的成绩都不较为理想,这是由于最近几年的教育模式只注重了数学发展的要求,而没有注重大众化教育的现状原因1。现行的教学大纲,教学模式基本延续扩招以前的模式,教学时间同时较为下降,这不仅增加了教师教学的困难,也造成了学生们学
12、习的困难,基础较差的学生往往无法接受所学知识,对学习失去信息,以至于旷课、早退、抄袭作业的现象普遍出现,考试及格率也大幅下降,即使考题非常简单,不及格率也较高,而学习差的同学常常不及格,甚至有连续补考不及格的同学。而与此同时,计算机作为越来越普遍的电子设备,在人们日常生活中扮演了越来越重要的角色,人们利用它进行休闲娱乐、办公学习,现在人们的日常生活往往离不开计算机。同样在教育方面,随着素质教育的全面推广,计算机辅助教学是教育发展的趋势,是一种新兴的学习方式。无纸化考试的引用,可以更好的帮助同学们考前训练,也可以帮助老师们更好的教学。除此之外,无纸化考试增强了学生的动手能力,也提高了考试的自动化
13、和科学化。节约了考试的时间与与金钱的花费。现在大部分大学生人均一台计算机,学生们普遍日常生活大量接触计算机,乐于使用计算机。无纸化考试软件的引入,更好的体现了高等数学的教学目的,增强了学生的动手能力,而且大大提高了考试的自动化和科学化。同学们练习或模拟考试的结果均可以得到即实反馈,高效准确,这使得同学们的练习和测试具有更强的针对性。对于高等数学的学习,我相信计算机考试软件可以很大程度上帮助到广大学生。1 系统概述1.1 项目开发的目的和意义对比与传统考试,需要大量时间精力去准备试题,组织学生考试,批改分数,分析试卷,随着计算机技术的不断发展与进步,无纸化考试软件的出现就有了其必然性。计算机考试
14、凭着其操作简单,阅卷准确快捷,成绩分析科学直观的优点,不断受到广大师生的欢迎与喜爱。如何使考试变得更加方便、高效、公正、方便,是现代教育的一个重要课题,计算机考试系统是传统考场的延伸,利用计算机技术可以方便地对学生进行考试,加上数据库技术的利用,大大简化了传统考试的过程。因此计算机考试系统是现代教学不可缺少的一个重要环节。有趋势表明,计算机考试已经成为考试的发展方向,现在国许多考试认证,例如GRE、CISCO,微软认证考试,计算机考试其出题、答卷以及评分都是在计算机上完成的。无纸化的考试形式有着其科学、及时、准确、公平等优点,具有传统考试形式无法替代和比拟的优势。系统结合高等数学内容,为大学生
15、提供可及时反馈的集练习与测验于一体的软件,内容结合教学实际,符合大学生特点。考试系统智能化、自动化,节省了出卷阅卷时间,体现了计算机技术的优越性。学生通过使用软件即时得到正确答案,在不断的练习中,反思自己的对错与否,强化记忆,提高学生的自学能力。考试系统配置极为简单,使得考试的过程大大简化。一个完整的考试系统可以使使用者在学习过后及时检测自己的学习效果,发现自己的不足,从而提高学习效率。考试系统中题目的生成、试卷的提交、成绩的评定等都可以自动完成。这样一来,教师所要做的只是精心设计题目,而不是组织考试,这可以大大减轻了教师与组织者的负担。考试系统具有智能化、科学化、自动化、高效化、等诸多优势,
16、具有较好的发展前景。希望学生通过使用这个软件可以不断练习,在练习中总结错误,强化记忆,提高自己的数学知识。帮助学生提高高等数学成绩。1.2 无纸化考试软件的现状与分析计算机考试系统的实现,将教师从繁琐的出题、监考、阅卷、试卷分析和成绩统计的传统考试中解脱出来,充分体现了准确、客观、公正、快速、简捷等特点。计算机考试系统起源于60年代美国,20世纪70年代,美国考试委员会着手进行计算机模拟考试的研究工作,并于1983年编制出有效的模拟考试系统,当时的名称是计算机辅助考试系统。1990年8月,美国加利福尼亚、得克萨斯等十个州创建各州以及各高等院校相互认可的学位证书以及相应的教学体系,从而正式拉开网
17、络远程考试的序幕。著名的考试机构有美国思而文学习系统有限公司。经过40多年来的发展,已经在全世界得到了广泛应用。国内也有许多考试采用了计算机考试系统。比方说托福考试、微软认证考试、cicso认证考试、全国计算机等级考试、驾驶员理论考试等等,可以说计算机考试系统逐渐成为了公证、效率的考试代名词。这都是由于计算机考试的出卷迅速,阅卷准确,统计成绩快速,自动化科学化的特点决定的,采用计算机考试系统的考试最大程度上被人们所信赖着。计算机考试系统主要有两种模式,C/S模式(客户端/服务器模式),B/S(浏览器/服务器模式)。通常C/S的客户端与服务器端分别与不同计算机中,客户端是普通的PC,而服务器为专
18、业的服务器。C/S模式可以分成两层模式和三层模式。两层模式Client和Server通过网络联结起来,通常Client端和Server端分别运行在不同的计算机中,Client端一般可以安装于普通计算机,而Server端一般安装在功能更加强大的服务器。在三层C/S模式中,则将业务逻辑独立出来放在中间服务器上,数据逻辑在另一个服务器上。而B/S模式是由网络技术不断发展而成长起来,它由C/S模式发展开来,而基于网页上的一种应用,B/S是基于网络浏览器和网络服务器而构成的。C/S 模式B/S模式各有优缺点,C/S模式安全性较高,数据处理能力较强,而B/S模式更加方便快捷,可以不受地点的限制。比方说如果
19、50台机器安装一款软件,如果采取C/S模式,那么50台机器都需要独立的下载安装,十分花费时间,而采取B/S模式则不需要安装,只需要浏览就可以了。但是C/S模式可以提供的功能更加全面,更加强大。所以说应该看具体项目需求而采取哪一种的开发模式。1.3 计算机考试系统的发展趋势计算机考试系统的发展趋势趋势有以下几点。(1) 向开放式的网络体系结构发展:使不同软硬件环境、不同网络协议的网络可以互相连接,真正达到不受地域时间的限制、数据通信分布处理的目标。(1) 向高性能发展:追求高速、高可靠和高安全性,加强考试系统的安全性,添加防火墙,保护好系统数据。采用多媒体技术,提供文本、图像、声音、视频等综合性
20、服务(3) 向智能化发展:提高网络性能和提供网络综合的多功能服务,并更加合理地进行有关考试的各种业务的管理,真正以分布和开放的形式向用户提供服务。 2 系统分析2.1 需求分析需求分析是软件开发过程中开始的一环,也是重要的一环。就如房屋建造过程中打造地基,如果地基打的不劳固,房屋也不会坚实。针对时下教学环境,本系统主要目标是满足广大师生关于高等数学的考试需求。本系统需要操作简便,使用方法简单,如果使用复杂,上手难,使用者使用就花费了较长时间,显然这是不受人欢迎的。系统需要稳定,有一定的纠错能力,不能在使用过程中崩溃。 对比传统的考试方式,基于个人电脑的考试系统的特点在于无纸化、效率高,考试时间
21、短,无需批改,这样就可以从传动的选题、生成试卷、到批改试卷所需的大量时间,节约到了只需使用者答题的时间。系统还可以在使用完毕即给出成绩,可以帮助学生了解自己所掌握的知识多少。基于上述情况,采用计算机考试系统实现考试将成为未来考试的一种重要的考试方式。同时也是教育事业的一大发展,前景广阔。2.1.1 课题欲解决的问题在我国,现在绝大多数考试还是传统考试方式,这种考试方式需要大量时间老师准备题目,组织考试,批阅书卷,统计数据,可以说是十分浪费时间与精力,已经不能满足社会以及教育事业发展与进步,所以课题应该解决的问题在于提高考试的自动化、科学化,提高效率与准确率,符合广大学生的需求。本系统是一个提供
22、给大学生考试的平台。通过这个考试系统考生可以方便快捷的进行考试或练习,从而提高自己对于高等数学的掌握。需要注意的地方有,题目的内容涉及高等数学的哪些方面?题目是以什么形式的方式出现?高等数学设计很多复杂的符号,这些符号键盘很难输入,怎么答题和制作题目?题目从哪里收集而来。是寻找题库还是网上找还是从书本上寻找。2.1.2 解决方案本系统应该操作简单,上手性快,界面一目了然不需要很复杂的操作。其次要有提示功能,最好完成答题后可以对题目进行正确答案的提示,可以增添练习模块。除了这些系统要有稳定性,可以保证考试流程的正常进行,不会因为各种操作而导致系统的崩溃不运行,对答题的正确性要有保证性。本系统是运
23、行于单机环境,采用C#和ACCESS 2000数据库技术制作。系统制作的平台是VISUAL STUDIO 2010。该系统的功能模块为登陆模块、考试模块(单选题、判断题、多选题、填空题)、计分模块、显示答案模块、练习模块、测试模块、后台题库、管理使用者信息模块。本系统的题目是以路径方式存储在数据库表中。使用的数据库是ACCESS,因为ACCESS方便操作,兼容性好,使用简单。题目因为很难由键盘输入,于是我决定题目由图片格式出现,然后以路径的方式存取在数据库中。题目的类型涉及简答题、多选题、单选题、和判断题.涉及的高等数学单元有函数与极限、导数的概念、不定积分、定积分、微分方程、多元函数微积分。
24、选取这些单元,是因为这些单元基本涵括了高等数学的重要内容。图2.1为普通用户系统登录用例图,图2.2为管理员登陆用例图。 图2.1 普通用户系统登陆的用例图 图2.2管理员登陆模块2.3 技术可行性分析本文主要采用的技术是Visual studio 2010,Access,C#和数据库,这节论述了技术上的可行性。2.3.1 Visual Studio 2010Visual Studio是个是个十分方便好用的软件,它提供了很多使用的组件、控件,很多时候你不用编写程序,只需要拖拖控件就可以完成复杂的命令,真是可以说是傻瓜式的开发系统,当然如果你想钻研VISUAL STUDIO,它也有很多复杂的功能
25、,可以说它是个既可以完成简单工作也可以完成专业复杂工作的好工具。在Visual Studio 2010中,微软重建了编辑器,这为开发者提供了灵活、功能丰富的开发环境,并支持多显示器即开发者可以同时在多台显示器上查看代码、用户界面设计器和数据库结构。 Visual Studio 2010中具有大量可支持最新微软产品的新功能。对Windows 7多点触控和“Ribbon”界面的支持有助于为终端用户提供令人赞叹的应用程序。SharePoint开发者首次可以全面使用Visual Studio集成开发环境(IDE)中的SharePoint功能。借助Windows Azure开发套件,开发人员将可在熟悉的
26、Visual Studio环境中迅速轻松地开发、调试、测试并部署云应用程序。对于ASP.NET模型视图控制器(MVC)的支持为开发人员带来了更多的灵活性,使他 们得以分别更换网络应用的外观和核心业务逻辑。Windows Phone 7的开发者也可以通过使用Visual Studio的集成手机设计界面开发出令人惊叹的手机应用。 2.3.2 .NET C#程序设计本系统是基于VISUAL STUDIO 2010的,所采用的语言就是C#,C#面向对象,模块化,可以继承、封装,节省了开发时间,这只是个小系统,如果是规模坏的大软件更可以节省时间与精力,这充分说明了面向对象软件的优越性。C#语言与C语言区
27、别不是很大,有C语言的基础的人上手很快,很多都不是语法的不同,而是使用思想的不同。而C#(C Sharp)是微软(Microsoft)为.NET Framework量身订做的程序语言,C#不仅拥有C/C+的强大功能以及Visual Basic简易使用的特性,与当今计算机语言发展一致的是,和C+与Java一样亦为面向对象导向程序语言。C#语言中定义主要是从C和C+继承而来的,而且语言中的许多元素也反映了这一点。C#在设计者从C+继承的可选选项方面比JAVA要广泛一些(比如说struts),它还增加了自己新的特点(比方说源代码版本定义).C#是一种面向对象的编程语言。由于面向对象语言的优越性,它使
28、得程序员可以快速地编写各种基于.NET平台的应用程序,.NET提供了一系列的工具和组件来最大程度地开发利用计算与通讯领域。 正是由于C#面向对象的卓越设计,使它成为构建各类组件的理想之选无论是高级的商业对象还是系统级的应用程序。使用简单的C#语言结构,如C#丰富多用的各种租借,这些组件可以方便的转化为XML网络服务,从而使它们可以由任何语言在任何操作系统上通过INTERNET进行调用。 最重要的是,C#使得C+程序员可以高效的开发程序,而绝不损失C/C+原有的强大的功能。因为这种继承关系,C#与C/C+具有极大的相似性,对于熟悉类似语言的开发者可以很快的转向C#。C#语言的优越性使开发过程节约
29、了很多时间,比方说由于它的继承性,只要开发了一个公共界面,然后相似的界面就可以继承它了,这样就节省了很多时间。还有就是C#提供的各种控件,通过这些控件我们可以完成各种各样的功能,而且不需要编写代码,只需要直接拖取控件,可以说是相当方便简单。比方说经常使用的Button按钮,这个控件是提供按钮的功能,还有picturebox控件,使用这个控件显示图片。还有Textbox控件 ,使用这个控件,可以显示文字。 2.3.3 .ADO.NET 数据连接 通过使用ADO.这个对象类库,我们可以进行数据的连接,这是一个很重要的类库。ADO.NET的名称起源于ADO(ActiveX Data Objects)
30、,这是一个广泛的类组,用于在以往的Microsoft技术中访问数据.之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在.NET编程环境中优先使用的数据访问接口它提供了平台互用性和可伸缩的数据访问。ADO.NET增强了对非连接编程模式的支持,并支持RICH XML。由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。事实上,接受数据的组件不一定要是ADO .NET组件,它可以是基于一个Microsoft Visual Studio的解决方案,也可以是任何运行在其它平台上的任何应用程序。 ADO.NET是一组用于和数据源进行交互的面向对象类库
31、。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。 ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过。NET的ADO .NET类库来进行连接9。ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型
32、来命名的 2.3.4 ACCEESS数据库与SQL查询语言本系统定位于单机环境,ACCESS属于OFFICE家族一员,普及率高,使用简单。有好的页面交互模式,通过使用ACCESS可以节约我熟悉操作开发软件的过程,而着重于具体设计数据库,具体设计数据的工作上面。我使用的ACCESS吧版本是2003,因为这个版本属于老版本而又不是被淘汰的版本,所以无论兼容性或者稳定都是值得信赖的。Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体
33、、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的进阶用户则能使用它来开发简单的应用软件。虽然它支援部分面向对象(OOP)技术,但是未能成为一种完整的面向对象开发工具。AC
34、CESS最大的特点是使用简单,和VISUAL SUIDIO的结合度高,因为它的制作是界面化的,就如同操作EXCEL一样,我们只需要先思考好表格设计成什么样,然后就可以通过ACCESS直接编辑数据了。通过使用ACCESS数据库方便了我的操作,节省了数据库开发时间,是个十分简单好用的软件。查询数据库的语言主要是使用SQL语言,SQL语言是数据库通用的语言,通过使用SQL语言,我们可以完成对数据库的增、删、改、查的功能,比方说如果查询一个命名为登陆的表,需要连接、建立数据集、使用SQL语句,建立适配器的一个过程。(1)建立连接的代码OleDbConnection kk = new OleDbConn
35、ection(Provider=Microsoft.jet.oledb.4.0;Data source= + Application.StartupPath + d.mdb); (2) 建立数据集的代码 DataSet mydataset = new DataSet();(3) 输入SQL语句的代码OleDbCommand myCom = kk.CreateCommand();myCom.CommandText = SELECT 地址 FROM + biao + where 编号= + q + ;(4) 建立适配器的代码 OleDbDataAdapter datDa = new OleDbDa
36、taAdapter(SELECT * FROM + biao + , kk); datDa.Fill(mydataset, + biao + );SQL 全名是结构化查询语言,是用于数据库中的标准数据查询语言,IBM 公司最早使用在其开发的数据库系统中。1986年10月,美国国家标准学会(ANSI) 对 SQL 进行规范后,以此作为关系式数据库管理系统的标准语言 (ANSI X3. 135-1986),1987年得到国际标准组织的支持下成为国际标准。不过各种通行的数据库系统在其实践过程中都对 SQL 规范作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。SQL 是高级
37、的非过程化编程语言,它允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解其具体的数据存放方式。而它的界面,能使具有底层结构完全不同的数据库系统和不同数据库之间,使用相同的 SQL作为数据的输入与管理。它以记录项目的合集作为操纵对象,所有 SQL 语句接受项集作为输入,回送出的项集作为输出,这种项集特性允许一条 SQL 语句的输出作为另一条 SQL 语句的输入,所以 SQL 语句可以嵌套,这使它拥有极大的灵活性和强大的功能。在多数情况下,在其他编程语言中需要用一大段程序才可实践的一个单独事件,而其在 SQL 上只需要一个语句就可以被表达出来。这也意味着用 SQL 可
38、以写出非常复杂的语句。3 系统总体设计3.1 系统功能分析本系统运行于单机环境,系统不连接网络,题库与系统都安装在个人电脑上面。缺点是不能联网操作,优点是结构简单方便。系统设计本着稳定、完成答题、测试、算分数的功能,系统运行过程中不应该出现崩溃,答案与题目不符的情况。3.2 系统功能模块设计 根据前面的分析,系统分为登陆界面,介绍界面,测试界面,和练习界面,和管理使用者信息界面。下面分别介绍如下。(1) 登陆界面要求输入姓名与学号,这是对于使用者的信息确认,而使用者的信息是由我事先在数据库编辑好的,如果输入不正确则不能登陆,如果不输入也不能登陆,除此之外,姓名与学号还能在后面测试和考试界面中状
39、态栏中显示。(2) 使用说明界面,使用说明界面是对于系统介绍的一个界面,介绍了系统设计的高等数学单元,与系统测设的题数与分数。除此之外通过说明界面,我们还可以分别进入练习界面和测试界面。它们的主要区别为练习界面答题后有正确答案提示,而测试界面则没有提示。(3) 答题界面:答题界面分为练习模式与测试模式,设计的提醒有单选题、判断题、多选题、与填空题,答题过程中如果不答题则不能进行到下一题,练习模式中答题后还可以看到正确答案。图3.1为答题功能结构图。 图3.1答题功能结构图(4)为了体现系统的完整性,系统的管理员具有对系统的使用者进行添加和删除的功能,从而起着一个限制使用者的功能,而系统的数据因
40、为要受到保护,并不是谁都有一个这个天价和删除的权限,只有管理员有着这个权限。对于本系统而言系统的管理员为系统的开发者,只有系统的开发者才有权利进行这个操作。3.3 数据库设计3.3.1 数据库需求分析针对个人电脑的高等数学考试系统的分析。总结出如下信息。数据库主要存放题目,和答案。题目分为函数与极限、导数的概念、不定积分、定积分、微分方程、多元函数微积分。3.3.2 数据库概念设计题目主要是以图片方式存储,数据库中存放的是图片路径,题目总共分为六个单元,每个单元分为单选题、判断题、多选题、填空题。3.3.3 数据库逻辑结构设计对应需求,设立表是题目的编号,以及表示题目路径的地址,以及题目对应的
41、答案。本系统是在ACCESS 2003中设计表,因为ACCESS的易操作性与兼容性,方便设计与开展工作。表3.2为题目与答案数据库表。表3.2 题目与答案数据库表字段字段类型简要说明编号自动编号本表主键地址字符串型存放题目的图片路径 答案字符串型题目对应答案 编号字段:类型为自动编号,这是数据库ACCESS2003系自动生成一个唯一的整形值。此字段作为本表的主键来。可以通过这个字段查找对应信息。地址字段:本类型为字符串型,这里主要存放着题目的的相对路径信息,通过查找这个信息,可以读取到题目。答案字段:本类型为字符串型,这里存放着对应的题目对应的答案。系统读取表中的此字段,可以判断使用者答题的准
42、确性。数据库中主要有两种表,除了存放题目与答案的表之外,就是存放登陆者信息的表,如表3.3用户信息数据库表所示。表3.3用户信息数据库表 字段 字段类型简要说明编号自动编号本表主键姓名字符串型存放登陆的姓名学号字符串型存放登陆的学号 编号字段:类型为自动编号,这是数据库ACCESS2003自动生成一个唯一的整形值。此字段作为本表的主键。可以通过这个字段查找对应信息。姓名字段:本类型为字符串型,这里主要存放登陆的姓名,从而判断使用者是否有资格使用本系统。学号字段:本类型为字符串型,这里主要存放登陆的学号,如果不符后则不能登陆。3.4 环境配置本系统对于硬件环境要求不高,可广泛应用于普通PC机上,
43、但因为是在VS 2010上开发,所以要求要安装.NET framework 4.0。操作系统:win7开发环境:.NET framework 4.0 ,Visual Studio 2010,数据库:ACCESS 2003内存:4GBCPU:奔腾酷睿双核 2.8GHZ 4 系统实现4.1 登陆界面实现 图4.1登陆界面图图4.1是系统的登陆界面,如果登陆的时候不输入姓名与学号,则会弹出对话框提示输入,如果输入的话,本界面会隐藏,显示系统的介绍界面。除此之外,系统还会对姓名与学号进行验证,数据库中有我输入的可以使用的账号与姓名,如果用户名与密码不符合数据库表中数据,则不能登陆。以下为代码部分。(1
44、) 如果没输入姓名学号则提示输入 private void button1_Click(object sender, EventArgs e) if (textBox1.Text = | textBox2.Text = ) MessageBox.Show(请输入姓名与学号); (2)验证输入的姓名与学号,如果错误则不能登陆else s1 = textBox1.Text.Trim(); s2 = textBox2.Text.Trim(); OleDbCommand myCom = y.CreateCommand(); myCom.CommandText = SELECT * FROM 登陆 WHERE 姓名= + textBox1.Text.Trim() + ; if (y.State != ConnectionState.Open)/如果数据库当前状态为关闭 则打开,避免了数据库连接重复打开的冲突 y.Open(); if (myCom.ExecuteScalar() = null) MessageBox.Show(用户名错误);