您现在的位置是:主页 > 高中论文 >

基于VC的网络考试系统

2021-09-09 21:28:45高中论文 46人已围观

免费预览:基于VC 的网络考试系统
  【摘 要】: 考试的效率、透明、公正运行是人才高效选拔的核心工作。网络考试系统可以科学地管理试题库,对其进行保存、分类和检索,保障了考试过程的高效率和低成本, 具有很高的安全性。此外,还便于对考试的结果做出统计分析。本系统利用网络技术和数据库技术,开发了基于 C/S 结构的多用户在线考试系统。本系统能实现多用户同时在线考试、时间控制,试题录入及修改、试题共享、用户管理、成绩查询、辅助阅卷等重要功能。系统还可以对成绩等方面的统计、汇总、排序的等一些操作加工处理,能很好地消除了人工阅卷会出现的错判、漏判和统分失误。
【关键词】:网络考试系统;C/S 模式;VC


一.引言
(一)课题研究背景和意义1.课题背景

  随着信息技术的发展,计算机技术在越来越多的领域广泛使用。在很多等级证书的考取考试中,考生们有些可能因为习惯化了传统的纸质考试的流程和方式,而不熟悉没接触过这种计算机形式的无纸质考试, 从某种程度上讲,他直接会影响到学校的发展战略。到目前为止,我国基本所有的学校包括高校在内,考试一直是个永恒的话题对象,它一直在学校教学活动中充当着重要的角色和环节。可是,一直以来我们的学校考试都是用纸和笔这种单一的方式,这种传统的考试方式,每次考试都要耗费很大的人力物力财力, 而且还很不环保,也就是说,今天的信息技术和网络技术逐渐发展的越来越成熟和强大,以前学校的那种传统考试很显然不能完全的适应现在社会的考试需要了,因此,把这个顺应时代发展的先进信息技术和网络技术与传统考试相结合相互补是一种再好不过优点特别明显的趋势,这也将成为一种必然。而且还要能够保证考试的客观、合理以及公正,使教与学都继续朝着双向良性发展,就是在这种情况下思考设计和开发一个不用浪费纸张能够在网上考试的功能完善的考试系统顺水推舟的成为了我们亟待解决的现实问题。
  基与这些因素,全国各大的高校软件开发也把焦点放在了在线考试系统上。传统的考试模式被打破, 而且参加考试的人的知识能力水平也可以被客观、准确的评估出来。在很大程度上提高了考试效率,考试不仅都被简单化,模式化,透明化,还延伸和拓宽了网络对学习的各种有利空间。
2.课题研究的意义

  发展教育的目标是为社会主义现代化建设培养建设者和接班人,然而古往今来的人才选拔都得通过考试的方式,考试的效率、透明、公正运行是人才高效选拔的核心工作。如何利用现如今先进的计算机技术

和指导思想提高考试的高效性,对合理甄选各类人才具有非常重要的影响。考试的效率、透明、公正运行是人才高效选拔的核心工作。网络考试系统可以科学的管理试题库,对其进行保存、分类和检索,很好的保障了考试过程的高效率和低成本,还特别的安全。而且在最后会对每次考试的结果做出统计分析,方便了教师再去对试卷做调整和更新,并且加强了试卷的合理性和公平性。
二.系统相关的基础理论知识和技术


  网络考试系统采用的是 VC/MFC(Microsoft Foundation Classes)技术,结合软件工程的基础理论知识。凭借着模块化设计思想理念来做开发。包括用户界面,数据处理和存储数据的读取。用MFC 技术里的模块制成简洁又易维护的用户界面,同时也提供数据文件的存储。而 MFC 的消息机制和数据处理机制以及C++与生具有的强力功能进行数据处理,子系统分为:生成试卷,管理试题,考试,成绩查询,用户管理和阅卷。考生的登陆只在客户端。教师和管理员在服务器进行登入。系统会出现向导协助教师进行试卷的创建,比如是非方便的做试题的手动添加,并且可以不断地做修改。模拟考试的作用,也就是学生登入然后发放试卷作答,时间的计时等,过后会自动的保存答题并进行传输。
(一)系统基础理论知识


1. 微软基础类

  简写 MFC,由微软公司提供的一个适用于 C++环境下应用程序编写的框架或引擎。换种说法就是一个依存于 VC++上面的程序设计语言,什么是 VC++呢?全称专业软件开发平台,它是开发人员在 windows 下使用的专业 C++ SDK(SDK,Standard Software Develop Kit),与 VC++生生相息部分的 MFC。这里注意一点的是, C++和 VC++不是一回事,C++是程序设计语言的一种,也是领域里普遍认可的一种通用编制规范,VC++则只是一个编译器。言归正传,MFC 就是一个非外挂式软件包或类包,和 BC++集成的 VCL 一样。唯一不同的是MFC 类是和 VC++配对的系统。
  作为众多微软企业已经定义好对象的一个类库,即使编写的程序多种多样,各不相同,但都是设计用户界面。程序开发过程所经常用到的一百多个对象就包含在这个类库里面。假如在程序设计时,所需的功能就是类库里的某个对象,这时候就这需要小小的对已有对象的方法进行的调用就可以了,或者可以用面向对象技术的继承方法,从类库里的已有对象中派生需要的对象,这个时候的对象不仅有类库对象的特性功能,还可以添加自己想要的特性方法,产生更高功能的对象。还可以建一个新对象并进行完善。由此可见 MFC 完美显现了面向对象技术的优点,这样在编程时极大地省去了对象方法实现细节的操心,还能很好地实现程序所要的功能,而且代码的编写也有所消减,调试的时候也方便。MFC 类库的使用过程中,用到的对象属性和方法都是经过严谨的编写和到位的测试,极具高的安全性,这样的话使用起来也就放心多了。

2 .VC++.NET

  VC++在上面我们介绍 MFC 时有提到过的,与 MFC 骨肉相连的、配对的搭档或者是能让 MFC 这种程序设计语言挂在它上面运行的一种平台。温故知新之后,我们或许大概清楚或有点了解了 VC++就是个平台环境, 那到底是个什么样的平台呢?现在我们具体专业的对它来做个介绍,对!VC++就是一个环境,一个 IDE(集成开发环境),又是大名鼎鼎的微软开发出来的产物。还是对!VC++就是一个开发平台,使用的是 C++。终上所述,VC++其实就是长期受到计算机领域内程序员们偏爱的主流开发平台,并且还是基于 windows 平台上的 C++编程环境。它的应用程序开发分两种主要模式,分别是 WIN API 模式和我们上面介绍的 MFC 模式。前者 WIN API 是较传统的开发方式,而且相对繁琐。后者 MFC 是再次封装的 WIN API,相比之下就有更强大的效率,因此主要由 MFC 构成。而且,学过 C 语言的应该都知道 VC 是基于C 和C++的,与一种和系统联系关系非常好的编程工具。具有强大的功能、高效率的优势,还拥有高、低级语言,简直是神通广大,力量无穷啊,唯一遗憾的是 VC 的开发效率并不是那么的理想。
3 .开放数据库互连

  英文名是 Open Database Connectivity,简称 ODBC。是一个有关数据库的组成部分,微软开放服务结构(WOSA,Windows Open Services Architecture)里面的。通过建立一组规范提供一组访问数据库的标准应用程序编程接口(API)。其中 API 自己的大部分任务是依靠 SQL 来解决的。当然,SQL 语言的支持是 ODBC自己也提供的。ODBC 是可以直接收到用户发的 SQL 语言,不用依赖任何数据库管理系统,基于 ODBC 的应用程序就可以操作数据库。还不用直接和数据库管理系统有任何来往,ODBC 驱动程序就能独立操作完成所有数据库,所以说,访问 FoxPro、Access,MYSQL 或 Oracle 数据库都可以用 ODBC API。显而易见它处理所有数据库是能用统一方式的。
(二) 系统相关技术


1. 技术环境

* VS2005.NET 开发环境

微软创造出的一种开发软件的神器,为什么这么说呢?因为大概各种各样的应用程序都能够开发。它是 VS6 添加.NET 框架、C#和其它更多集成功能的升级版。
* Microsoft SQL Server 2000 数据库

出于微软、Sybase 和 Ashton.tate 三所企业联合研发的一个关系数据库管理系统。首个版本 OS/2 出自于一九八八年,由 windows NT 推出之后微软和 SYBASE 就在SQL server 产生分歧而各自天涯,从那以后微软在 windows NT 上植入 SQL server,一心一意的开发拓宽在 window NT 上的 SQL server。而 SYBASE 公司则把心思集中放在UNIX 操作系统之上应用SQL server,我们这里用的 2000 数据库是来自微软的新版本 SQL

server 数据库管理系统。它不但传承了SQL server7.0 版本的优势,而且还添加了多种更前沿、便捷、灵活和集成程度高的功能。例如微软 windows 98 的小型电脑或微软 windows 2000 拥有很多处理器的大型服务器等各种平台都可以使用。
* 基于 C/S 模式

  本技术利用网络技术和数据库技术,开发了基于 C/S 结构的多用户在线考试系统。该系统使用方便, 操作简单,现阶段能实现多用户同时在线考试、时间控制,试题录入及修改、试题共享、用户管理、成绩查询、辅助阅卷等重要功能。
2 .VC 数据库访问技术

VC 访问数据库的方法丰富多彩:

A. ODBC 技术

B. OLEDB 技术

C. 数据绑定控件技术

D. DAO 技术

  因为如今对处理数据的各种要求鳞次栉比,所以我们使用最经常用到的 ODBC 方式,采用 ODBC 会常用到两个类 Cdatabase 类和 Crecordset 类。前者继承于自己的类Cobject 类,他的对象是链接到数据源,这样的话我们可以用它对数据源进行操作,放在一些数据库管理系统的数据指定实例就是数据源。后者的话从 Cobject 类派生出来的,Crecordset 类对象指的是在数据源检索到的一个记录集,一个是动态记录集, 另一个是快照集,都是被典型应用的两种很好地方式。
我来看看,完好的开放数据库互连它的组成部件:

① 应用程序(application);

  ② ODBC 管理器(administration);它是一个程序,在电脑控制面板(control panel)的 32 位开放数据库互连里面,管理安装的开放数据库互连驱动程序和数据源是他的责任。
  ③ 驱动程序管理器(driver manager);它包含开放数据库互连 32,在 DLL 里对用户透明。他的任务也是管理开放数据库互连驱动程序,这个步骤是非常重要的。
④ ODBC API;

  ⑤ ODBC 驱动程序;就是提供开放数据库互连和数据库之间接口或数据源的 DLL。数据数据库位置和类型都包含在数据源里面。换句话说就是数据连接的另一种抽象。
3 .Socket 套接字及文件传输

  VC 的 CAsyncSochet 类是网络考试系统所使用的,是在十分低级别上封装的 Windows sockets API 的类。该类的实现方法如下:

1) 套接字创建;

建一个 CAsyncSocket 对象然后用该对象建基础 SOCKET 句柄。

CAsyncSocket sock;sock.Create();// Use the default parameters 或CAsyncSocket*pS
扫码免登录支付
本文章为付费文章,是否支付10元后完整阅读?

如果您已购买过该文章,[登录帐号]后即可查看

随机图文

站点信息

  • 文章统计 2148 篇文章