基于模板的题库平台系统_计算机论文.docVIP

基于模板的题库平台系统_计算机论文.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于模板的题库平台系统_计算机论文.doc

基于模板的题库平台系统_计算机论文 基于模板的题库平台系统_计算机论文 摘要本文在对比和总结国内外开发的数学题库系统的基础上,提出了基于模板组卷的开放题库模型。依据该模型,可以以少量信息根据用户要求生成大量不重复的题目。并将符号演算系统用于该系统,生成试题的同时,也给出相应的答案。系统还将数学公式和动态几何以组件的形式嵌入平台,通过自动化和进程间通讯来进行数据交换。 关键词模板,符号运算,组卷,知识点,组件 组卷 模板解释器 数据库访问 rtf图文显示 数学公式组件 动态几何服务器 rtf格式图文生成器 符号演算系统 1引言 随着计算机技术的发展,各种类型的资源得以迅速发展。电子读物、课件比比皆是,基于网络或单机的题库系统、考试系统也越来越受到广大教师学生的喜爱。学生通过大量题目的练习,以加深对所学知识的理解,考试系统也由于计算机自动组卷减轻了老师的工作量。我们通过对目前这类系统(尤其是中学数学)的调查发现,这类系统虽然受到市场的欢迎,但明显还有一些不足之处,一是没有智能,题目往往以一种固定的形式存在,没有灵活性;二是系统庞大,为了包含各知识点和避免组卷重复,一般都是通过大量题目来实现;三是对数学公式和动态几何支持不够。为此,我们设计了一种基于模板的题库系统,将符号演算引入进来,针对某类学科,将各类题目归类,对于一类题目建立一个或多个模板。数据库只存放模板,将模板分成题目和答案两部分,一一对应,在模板记录上有该模板对应的关键字,也就是我们组卷时的依据。这样,我们的数据库可以建得非常小,查询也就会非常快。系统在组卷时,根据关键字快速查询到模板,由模板解释器进行解释,生成相应的题目和答案。 2系统结构 我们的系统针对中学数学开发,数据库采用MicrosoftAccess2000,用VC++6.0开发,通过DAO访问数据库。试卷以rtf格式显示,支持图文混排。 组卷模块接受用户输入,然后通过数据库访问模块查找相应的模板,将各模板交给模板解释器,由模板解释器进行翻译。 动态几何模块,我们采用最小服务器模式开发,它完成动态几何的作图、显示、运动等。由模板解释器负责创建,并通过内存映射文件进行数据传递。 CStringstrObj=_T(gDrawServer.document) //创建动态几何服务器 InsertObject(strObj,OLEIVERB_SHOW) COleClientItem*pActiveItem=GetDocument()-gtGetInPlaceActiveItem(this) if(pActiveItem!=NULL) { CWnd*pWnd=pActiveItem-gtGetInPlaceWindow() //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-gtSendMessage( NOTIFY_DRAW_CURVE,0,0) } CloseHandle(hSharedMapFile) } pActiveItem-gtClose() } 数学公式模块采用ActiveX组件开发,它完成数学公式编辑、显示等。由模板解释器负责创建,并通过数学公式模块提供的外部接口进行数据传递。 CStringstrObj=_T(FormulaEdit.FormulaEditCtrl.1)//创建公式 InsertObject(strObj,OLEIVERB_SHOW) CMytrItem*pItem=(CMytrItem*)GetDocument()-gt GetInPlaceActiveItem(this) if(pItem) { pItem-gtEnableAutomation() LPDISPATCHlpDisp lpDisp=pItem-gtGetIDispatch() _

文档评论(0)

wyj199218 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档