基于模板的题库平台系统(1)
2014-07-05 01:10
导读:计算机应用论文论文,基于模板的题库平台系统(1)应该怎么写,有什么格式要求,科教论文网提供的这篇文章是一个很好的范例:
摘要本文在对比和总结国内外开发的数学题库系统的基础上,提
摘要本文在对比和总结国内外开发的数学题库系统的基础上,提出了基于模板组卷的开放题库模型。依据该模型,可以以少量信息根据用户要求生成大量不重复的题目。并将符号演算系统用于该系统,生成试题的同时,也给出相应的答案。系统还将数学公式和动态几何以组件的形式嵌入平台,通过自动化和进程间通讯来进行数据交换。
关键词模板,符号运算,组卷,知识点,组件
组卷
模板解释器
数据库访问
rtf图文显示
数学公式组件
动态几何服务器
rtf格式图文生成器
符号演算系统
1引言
随着计算机技术的发展,各种类型的资源得以迅速发展。电子读物、课件比比皆是,基于网络或单机的题库系统、考试系统也越来越受到广大教师学生的喜爱。学生通过大量题目的练习,以加深对所学知识的理解,考试系统也由于计算机自动组卷减轻了老师的工作量。我们通过对目前这类系统(尤其是中学数学)的调查发现,这类系统虽然受到市场的欢迎,但明显还有一些不足之处,一是没有智能,题目往往以一种固定的形式存在,没有灵活性;二是系统庞大,为了包含各知识点和避免组卷重复,一般都是通过大量题目来实现;三是对数学公式和动态几何支持不够。为此,我们设计了一种基于模板的题库系统,将符号演算引入进来,针对某类学科,将各类题目归类,对于一类题目建立一个或多个模板。数据库只存放模板,将模板分成题目和答案两部分,一一对应,在模板记录上有该模板对应的关键字,也就是我们组卷时的依据。这样,我们的数据库可以建得非常小,查询也就会非常快。系统在组卷时,根据关键字快速查询到模板,由模板解释器进行解释,生成相应的题目和答案。
(科教作文网 zw.nseac.com整理)
2系统结构
我们的系统针对中学数学开发,数据库采用MicrosoftAccess2000,用VC 6.0开发,通过DAO访问数据库。试卷以rtf格式显示,支持图文混排。

组卷模块接受用户输入,然后通过数据库访问模块查找相应的模板,将各模板交给模板解释器,由模板解释器进行翻译。
动态几何模块,我们采用最小服务器模式开发,它完成动态几何的作图、显示、运动等。由模板解释器负责创建,并通过内存映射文件进行数据传递。
CStringstrObj=_T("gDrawServer.document");
//创建动态几何服务器
InsertObject(strObj,OLEIVERB_SHOW);
COleClientItem*pActiveItem=GetDocument()->GetInPlaceActiveItem(this);
if(pActiveItem!=NULL)
{
CWnd*pWnd=pActiveItem->GetInPlaceWindow();
//strCmd是一组动态几何数据
DWORDnSize=strCmd.GetLength() 2;
//创建内存映射文件
HANDLEhSharedMapFile=
CreateFileMapping((HANDLE)0xFFFFFFFF,
NULL,PAGE_READWRITE,0,nSize,"MySharedDraw");
if(hSharedMapFile)
{
//映射缓存区视图:
LPSTR pszSharedMapView = (LPSTR)MapViewOfFile(hSharedMapFile,
FILE_MAP_READ|FILE_MAP_WRITE,0,0,0);
if(pszSharedMapView)
{
strcpy(pszSharedMapView,strCmd);
UnmapViewOfFile(pszSharedMapView);
//发消息给服务器,
pWnd->SendMessage(
NOTIFY_DRAW_CURVE,0,0);
}
CloseHandle(hSharedMapFile);
}
pActiveItem->Close();
}
数学公式模块采用ActiveX组件开发,它完成数学公式编辑、显示等。由模板解释器负责创建,并通过数学公式模块提供的外部接口进行数据传递。
CStringstrObj=_T("FormulaEdit.FormulaEditCtrl.1");//创建公式
InsertObject(strObj,OLEIVERB_SHOW);
CMytrItem*pItem=(CMytrItem*)GetDocument()->