首页 > 文章中心 > 数据结构试题及答案

数据结构试题及答案

前言:想要写出一篇令人眼前一亮的文章吗?我们特意为您整理了5篇数据结构试题及答案范文,相信会为您的写作带来帮助,发现更多的写作思路和灵感。

数据结构试题及答案

数据结构试题及答案范文第1篇

【关键词】试题库结构;组卷目标;控制模型;组卷算法

【中图分类号】G40-057 【文献标识码】B 【论文编号】1009―8097 (2008) 08―0101―04

一 引言

智能题库系统是教育测量标准化、规范化的重要组成部分,其通用性主要取决于题库的数据结构和组卷算法。一方面,题库数据结构要能满足不同课程的需要,冗余度尽可能小;另一方面,组卷算法要能适用于不同的题库条件。根据这两方面要求,本文提出一种新的题库数据结构和组卷控制模型,并对组卷算法进行详细设计。

二 题库数据结构设计

不同课程虽然其试卷考查内容、使用对象不同,但都有试卷总分、考查章节、题型构成、试卷难度、区分度、考试时间等指标要求,并且试卷中的每道试题均具有知识点、认知分类、难度、题型、题分、试题内容、答案等属性。与此同时,不同试题其内容和答案的构成元素差别也很大,简单的只有文本,复杂的除文本之外,还包含图像、公式等。

因此,为满足不同课程试卷及其组卷算法的需要,我们设计了如下表结构:

(1) 题型表tb_itemType:保存题型信息,由题型代码(主键,1个字符,取值a~z)、题型名称(30个字符)和题型说明(200个字符)组成。

(2) 难度级别表tb_difficulty:保存题库的试题难度信息,由难度级别(主键,最低难度级别为1,随着难度的增加,难度级别依次加1)、难度级别名称(10个字符)。

(3) 章节表tb_chapter:保存课程的章节信息,由章节代码(主键)和章节名称(30个字符)组成。

(4) 知识点表tb_knowledge:保存各章知识点信息,由知识点代码(1个字符,取值a~z,多于26个知识点用希腊字母表示)、章节代码和知识点名称(30个字符)组成。知识点代码和章节代码联合作主键,章节代码参照章节表中的章节代码。

(5) 试题属性表tb_itemProperties:保存试题属性信息,由试题编号(自动编号,主键)、题型代码、章节代码、难度级别、知识点代码集(15个字符)、题分、抽取次数、抽取时间、停用标志(1-停用,0-未停用,默认值为0)组成。

题型代码参照题型表中的题型代码,章节代码参照章节表中的章节代码,难度级别参照难度级别表中的难度级别。知识点代码集的编码规则为章节代码+知识点代码,比如3fk12ejk表示该题涉及的知识点包括第3章的f、k知识点和第12章的e、j、k知识点。

(6) 试卷属性表tb_paperProperties:保存已组试卷的属性信息,由试卷序号(自动编号,主键)、试卷说明(200个字符)、题型顺序(20个字符,用题型代码表示)、题型集(50个字符)、章节集(100个字符)、难度集(50个字符)、已用标志(1-已用,0-未用,默认值为0)、使用对象(100个字符)、组卷时间组成。

题型顺序保存各题型在卷面中出现的顺序。题型集保存组卷目标中各题型分数设定值,编码规则为:题型代码+题型分数+$组卷误差百分比,比如a15b20d10e25f20g10$10表示拟组试卷中题型a、b、d、e、f、g的分数设定为15、20、10、25、20、10分,各题型分数的组卷误差不超过其分值的10%。章节集保存组卷目标中各章节分数设定值,编码规则为:c+章代码+s+章分数+$组卷误差百分比,比如c1s15c2s15c7s20c10s20c12s30$10表示拟组试卷中第1、2、7、10、12章的分数分别为15、15、20、20、30分,各章节分数的组卷误差不超过其分值的10%。难度集保存组卷目标中各难度分数设定值,编码规则为:d+难度级别+s+难度级别分数+$组卷误差百分比,比如d1s15d2s20d3s30d4s20d5s15$0表示拟组试卷中难度级别为1、2、3、4、5的试题分数分别为15、20、30、20、15分,各难度组卷误差为0。

(7) 试卷试题表tb_paperItems:保存已抽取的试题信息,由试卷序号、试题编号组成。试卷序号参照试卷属性表中的试卷序号,试题编号参照试题属性表中的试题编号。

(8) 题库文档表tb_documt:保存题库的试题内容文档和答案文档[1],由试题编号、试题内容(image类型,保存试题的内容文档)和试题答案(image类型,保存试题的答案文档)组成,试题编号参照试题属性表中的试题编号。

三 组卷控制模型

1 试卷难度控制

试卷难度控制可通过离散型随机变量的二项分布函数B(n,p)实现[2],即:

2 组卷目标设定与检查

拟定一份试卷首先要确定试卷的总体目标,包括试卷总分、试卷难度、章节分数、题型分数、试卷区分度、考试时间,然后从题库中抽出满足总体目标要求的试题。这些目标中,试卷区分度与试卷难度相关,难度太高或太低的试卷其区分度不高,只有合适的试卷难度才能获得较高的试卷区分度;考试时间与试卷总分和试卷难度相关,试卷总分高、难度大则需要的考试时间长。

因此,我们选取试卷分数、试卷难度、章节分数、题型分数作为组卷目标,并按试卷总分、章节分数、试卷难度、题型分数的顺序设定各目标值。同时为避免组卷目标设定的盲目性,我们还根据题库条件对所有的组卷目标值进行满足性检查[3]。

各组卷目标值的设定顺序和检查方法如下:

(1) 设定拟组试卷的总分S。

(2) 统计题库中各章节无重复知识点的试题总分数S_Chap(i)。

(3) 设定拟组试卷中各章节分数SS_Chap(i)及其组卷误差的允许值,要求SS_Chap(i)S_Chap(i)且∑SS_Chap(i)= S。

(4) 统计题库中在所考核的章节范围内各难度级别无重复知识点的试题总分数S_ND(j)。

(5) 设定试卷难度Q及其组卷误差允许值,利用难度控制模型和Q值计算出试卷中各难度级别的试题分数SS_ND(j)(或直接设定拟组试卷中各难度级别的试题分数),要求SS_ND(j)S_ND(j)且∑SS_ND(j)= S。

(6) 统计题库中在所考核的章节和难度级别范围内各题型无重复知识点的试题总分数S_TX(k)。

(7) 设定拟组试卷中各题型分数SS_TX(k)及其组卷误差允许值,要求SS_TX(k)S_TX(k)且∑SS_TX(k)= S。

3 组卷目标匹配顺序控制

理想情况下,题库中有分布均匀且题量足够多的试题以供选择,但实际往往并非如此,不同的组卷目标对应的试题分布范围和选择余地差别很大,所以组卷目标的匹配顺序直接影响组卷成功率。

在设定的组卷目标中,试卷难度可以体现在各章节试题中,而各章节分数只能体现在本章节试题中,故章节的选择余地小于试卷难度;此外,按分值从高到低的顺序进行题型匹配,能够为章节、难度和试卷总分的匹配留出尽可能大的选择余地。因此我们采取了如下匹配顺序:

(1) 按照平均分值从高到低的顺序选择待匹配的题型。

(2) 在当前匹配题型中按照各章节无重复知识点的试题数从少到多的顺序循环匹配各章节,如果当前匹配的章节只有当前匹配题型的试题,则在当前章节匹配中完成该章节全部的抽题任务,否则至多抽取该章节一道试题。

本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

(3) 在当前匹配的题型和章节中,按照各难度级别无重复知识点的试题数从少到多的顺序进行难度级别匹配。

4 组卷目标匹配误差控制

为实现组卷控制的灵活性,我们引入了组卷目标匹配误差控制。设第i个组卷目标的设定分数为SS(i),误差允许值为e_set(i),其未抽分数为NS(i),则该目标的匹配误差为:

如果e(i)e_set(i),则第i个组卷目标完成匹配任务。当所有组卷目标的匹配误差都处于误差允许范围内时,则匹配结束。

组卷开始时NS(i)=SS(i),组卷过程中每抽取一道分数为s的试题,则该题对应的所有组卷目标的未抽分数都减少s。

5 已抽试题回调

所有组卷目标匹配结束时,如果已抽试卷总分小于设定值,则通过调换部分已抽试题的方法,使已抽试卷总分等于设定值。用于调换的试题需满足如下条件:

(1) 能使已抽试卷总分向着设定值的方向变化。

(2) 不能使试卷出现重复知识点。

(3) 不能使组卷目标的组卷误差超出各自允许范围。

回调过程结束后,如果已抽试卷总分等于设定值,则组卷成功,否则组卷失败。

四 组卷算法设计

1 临时表变量

为了提高数据的处理速度,我们把组卷过程中需要的中间数据全部保存在SQL Server的表变量中[4]。所需的表变量如下:

(1) 试题属性表@Items:保存参与组卷的试题属性信息,按抽取次数和抽取时间升序排列,字段包括试题编号、题型代码、章节代码、难度级别、知识点代码集、题分、可抽标志(bit,1-可抽,0-不可抽,默认值为1)。

(2) 考试题型表@examTX:保存题型组卷目标的抽题信息,按各题型平均分值降序排列,字段包括ID(自动编号)、题型代码、设定分数、未抽分数、可抽题数。

(3) 考试章节表@examChap:保存章节组卷目标的抽题信息,按各章节可抽题数升序排列,字段包括ID(自动编号)、章节代码、设定分数、未抽分数、可抽题数。

(4) 考试难度表@examND:保存难度组卷目标的抽题信息,按各难度可抽题数升序排列,字段包括ID(自动编号)、难度级别、设定分数、未抽分数、可抽题数。

(5) 题型章节表@TXChap:保存各题型各章节中无重复知识点的可抽试题数量,字段包括题型代码、章节代码、可抽题数。

(6) 章节难度表@ChapND:保存各章节各难度级别中无重复知识点的可抽试题数量,字段包括章代码、难度级别、可抽题数。

(7) 题型难度表@TXND:保存各题型各难度级别中无重复知识点的可抽试题数量,字段包括题型代码、难度级别、可抽题数。

(8) 试卷表@paperItems:保存被抽试题的部分属性信息,字段包括:ID(自动编号)、试卷序号、试题编号、题型代码、章节代码、难度级别、题分、知识点代码集。

2 组卷算法

本组卷算法基于存储过程和表变量实现。存储过程的输入参数包括拟组试卷的总分、题型集、章节集、难度集、试卷题型顺序、使用对象、试卷说明,输出参数为组卷结果标志。核心算法如下:

(1) 取@examTX中第一个待匹配的题型代码@tx,@examChap中第一个待匹配的章节代码@chap,@examND中第一个待匹配的难度级别@ND。

(2)若@chap章的组卷误差大于其允许值 and @TXChap中题型代码为@tx、章节代码为@chap的可抽题数>0,则转(3),否则转(7)。

(3)若@ND难度的组卷误差大于其允许值 and @ChapND中章节代码为@chap、难度级别为@ND的可抽题数>0 and @TXND中题型代码为@tx、难度级别为@ND的可抽题数>0,则转(4),否则转(6)。

(4) 若@Items中不存在题型代码为@tx、章节代码为@chap、难度级别为@ND、题分不大于当前组卷目标对应的最小未抽分数、可抽标志为1的试题,则转(6),否则将该题的试题编号、题分、知识点代码集插入@paperItems表中;将该题分数增加到已抽试题总分中;将@Items中所有与该题知识点相同的试题的可抽标志置为0;分别将@examChap中章节代码为@chap,@examND中难度级别为@ND,@examTX中题型代码为@tx对应的未抽分数减去被抽取的试题分数、可抽题数减1;分别将@TXChap中题型代码为@tx、章节代码为@chap,@TXND中题型代码为@tx、难度级别为@ND,@ChapND中章节代码为@chap、难度级别为@ND对应的可抽题数减1。

(5) 若 @chap章仅有@tx题型的试题 and @chap章的抽题误差大于允许值,则转(6),否则转(7)。

(6) 循环取@examND中下一个待匹配的难度级别@ND,然后转(3)。

(7) 若@tx题型的组卷误差大于允许值,则循环取@examChap中下一个待匹配的章节代码@chap,然后转(2),否则转(8)。

(8) 若已抽试题总分

(9) 若已抽试题总分

(10) 若已抽试题总分=试卷设定总分,则组卷成功,否则组卷失败。

试题回调即从未抽试题中查找符合替换条件的试题并替换对应的已抽试题。算法如下:

(1) 试卷设定总分-已抽试题总分@k,@paperItems中第一道试题的记录编号@i。

(2) 若@i所指试题对应的各组卷目标的未抽分数减少@k后其组卷误差不超出允许范围 and @Items中存在与@i所指试题同题型、同章节、同难度、分数多@k且与其它已抽试题无重复知识点的试题,则取该试题的试题编号@itembh,然后转(3),否则转(4)。

(3) 将@i所指试题的试题编号改为@itembh、题分增加@k;将@tx题型、@chap章、@ND难度对应的未抽分数减少@k;已抽试题总分增加@k;若试卷设定总分-已抽试题总分

(4) 取@paperItems中下一道试题的记录编号@i,若@i@paperItems中最后一道试题的记录编号 and 已抽试题总分!=试卷设定总分,则转(2),否则转(5)。

(5) 若试卷设定总分-已抽试题总分@k,则@k-1@k。

(6) 若@k>0 and 已抽试题总分!=试卷设定总分,则@paperItems中第一道试题的记录编号@i,然后转(2),否则回调结束。

五 算法测试

我们通过题量少且试题分布不均匀的模拟题库对组卷算法进行测试。题库中有100道试题(不同知识点的试题为50道),包括4种题型、5章、5级难度,第4章试题仅分布在c题型中,第5级难度试题仅分布在第5章中。在对该题库进行的50次组卷实验中,没有经过试题回调而直接组卷成功的有42次,经过试题回调后组卷成功的有6次,组卷失败2次,生成的试卷中除第4章试题外,其它各章、各难度的试题均能最大程度地分布在不同题型中。测试结果表明,本组卷算法对于题量少且试题分布不均匀的题库仍然能够取得很高的组卷成功率和组卷质量。

六 结论

本文给出的题库数据结构通用性强、冗余度小,能够满足不同课程试卷的需要。同时,通过引入组卷目标的满足性检查、匹配顺序控制、匹配误差控制和已抽试题回调等控制策略,使得组卷算法能够不受题库中试题分布的限制,降低了算法对题库题量的要求,提高了算法的适用性。

参考文献

[1] 张文,陈世强.题库系统试题存取方法的研究[J].计算机与现代化,2006,(3):97-99.

[2] 应继儒,胡立新,龙毅等.试题库随机选题数学模型的构建及实现[J].计算机应用,2000,20(1):46-47.

[3] 朱守业.智能组卷中组卷目标的满足性检查与处理[J].微计算机信息,2007,23(21):268-269.

数据结构试题及答案范文第2篇

关键词:全国计算机等级考试;二级公共基础知识;重点与难点;应对策略

中图分类号:G642 文献标识码:A文章编号:1009-3044(2007)05-11457-03

1 引言

2004年教育部考试中心对全国计算机等级考试(NCRE)的考试科目设置、考核内容、考试形式进行了全面调整,编制了新大纲。二级考试除了考试科目有所增减外,还统一增加了公共基础知识部分。

新大纲出台后,从2005年开始,二级公共基础知识是所有二级考试科目必考的内容,考试大纲、试题内容完全相同。本文将根据新大纲的要求,结合近年来的考题,归纳总结了公共基础知识部分涉及的每一章的考核重点和难点,阐述了顺利通过考试的复习方法和应试技巧,以供考生参考。

2 考试内容及题型分布

公共基础知识的考试内容包括数据结构与算法、程序设计基础、软件工程基础和数据库设计基础等四方面内容,采用笔试形式,占二级笔试全卷的30分,其中选择题10题20分,填空题5空10分。近两年公共基础知识考试的题型及分值分布如表1所示。

表1 2005-2006年公共基础知识题型及分值分布

3 复习方法及应试对策

3.1 紧扣新大纲,选好复习资料

从整体上分析,新大纲规定的公共基础知识涉及面广,但难度不大,考试涉及的内容都是基本概念、基本方法和基本运算,考核以概念和认识性内容为主,理解性、应用性内容极少,考点也相对集中些。往往有考生认为这部分知识在考试中只占30分,而涉及的面太广,花了时间也不一定能有好的收效,与其这样,还不如放弃,这种想法是不可取的。

另外,建议考生选用由教育部考试中心指定,高等教育出版社出版的《全国计算机等级考试二级教程――公共基础知识(2004年版)》,该教程按考点进行复习,针对性强,配套的课后习题,非常实用。

3.2 考试重点与难点剖析

复习的关键是准确判断和掌握常见考点,结合教材,回顾历年试题,总结出公共基础知识的重点和难点至关重要。

3.2.1 数据结构与算法

数据结构与算法是公共基础部分的重点,在历年考试中试题比较灵活,所占分值较大。复习本章的内容必须进行理解,死记硬背是无效的,要注意各个知识点之间的联系和区别。

3.2.1.1 数据结构

3.2.1.1.1 逻辑结构和存储结构的概念及其区别

逻辑结构是反映元素之间的逻辑关系,可分为线性结构和非线性结构。存储结构,也称物理结构,可分为顺序存储、链式存储等。数据的逻辑结构与数据的存储结构不一定相同。该考点一般以两种方式出现:

(1)直接考概念,例:2005年4月(1),数据的存储结构是指

。A)存储在外存中的数据;B)数据所占的存储空间量;C)数据在计算机中的顺序存储方式;D)数据的逻辑结构在计算机中的表示。另外,2005年9月(4),要求考生判断逻辑结构与存储结构的区别;

(2)数据结构分类问题。这一考点出现的频率较高,先后出现在2005年9月[5],2006年4月[5],2006年9月[5]。

3.2.1.1.2 栈和队列

栈和队列是一个必考的知识点,在学习过程中,要深刻理解和掌握栈和队列的特点,包括逻辑结构特点和不同的存储结构的特点,了解进栈、退栈和入队、退队时指针的变化。

2005年4月[2],2005年9月[3],2006年4月[4]及2006年9月[4]都涉及到了这一考点,4次的考题非常相似,主要考查栈的特点:(1)栈是一种特殊的线性表,只能在一端插入或删除元素;(2)按照“先进后出”(“后进先出”)原则组织数据。

3.2.1.1.3 树

二叉树是考核的重点也是本章的难点。二叉树的性质和遍历规则要牢记并灵活运用。

(1)二叉树的性质,即二叉树的结点问题。例:2005年4月[1],某二叉树中度为2的结点有18个,则该二叉树中有____个叶子结点;2006年4月(7),在深度为7的满二叉树中,叶子结点的个数为____。两道试题都是给出条件然后求叶子结点个数,考生只要掌握了二叉树性质,就可以轻松答题;

(2)二叉树的遍历问题:给图求遍历序列,给出两种遍历求第三种遍历等。例:2006年4月(6)和2006年9月(10)给出一棵二叉树后,分别要求后序遍历和前序遍历的结果。

3.2.2 算法

3.2.2.1 算法的基本概念

包括算法的定义、特征、组成要素、算法复杂度,其中算法复杂度是考试重点。这一考点分布在2005年4月[5],2005年9月[2],2006年9月[7],此处不再累述。

3.2.2.2 查找:顺序查找和二分法查找

主要以计算最好/最坏/平均查找次数的方式进行考核。例:2005年4月[4]对长度为n的线性表进行顺序查找,在最坏情况下所需要的比较次数为_____。A)log2n;B)n/2;C)n;D)n+1。而2005年9月(8)的考题与此基本相似。

3.2.2.3 排序

掌握教材中涉及的几种常用排序方法,主要以比较各种排序在最坏情况下的比较次数的形式考核。例:2005年4月(3)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是。A)冒泡排序为n/2;B)冒泡排序为n;C)快速排序为n;D)快速排序为n(n-1)/2。相似的题目出现在2006年4月【1】。

考生对查找和排序往往无从下手,实际上,在复习过程中,只要牢记各种排序和查找的时间复杂度,学会比较,真正答题时,还是能轻松应付的。

3.2.3 程序设计基础

程序设计基础主要是一些记忆性的知识点,这部分内容在历年的考试中所占比分很小,复习时只要对这部分内容细读后理解即可。

3.2.3.1 面向过程设计方法

熟悉程序设计方法与风格,结构化程序设计原则等。该考点出现在2006年4月(1),2006年9月(1)中。

3.2.3.2 面向对象的程序设计方法

理解并掌握一些基本概念和术语:对象(类的实例)及其特点、属性、方法、事件、消息、类(对象的抽象)、封装、继承、多态等。例:2005年4月[2]在面向对象方法中,类的实例称为_____。2006年4月[2]在面向对象方法中,_____描述的是具有相似属性与操作的一组对象。

3.2.4 软件工程基础

软件工程基础的知识点以记忆为主,但不同于其他科目的记忆;专业的名词术语要牢记,而相关的技术和概念解释则应理解并熟记。

3.2.4.1 软件工程基本概念

主要考查软件的定义;软件工程的定义、要素、核心思想;软件生命周期及其三个阶段的主要活动和任务。这一考点,在每次的考试中都有涉及,具体分布在2005年4月(8),2005年9月(5),2005年9月(7),2006年4月(3),2006年9月(3)。

3.2.4.2 结构化分析方法

了解结构化分析的几种常用工具,重点掌握结构化数据流程图(DFD)的表示方法及主要图形元素的功能含义。

3.2.4.3 结构化设计方法

(1)软件设计的原则:抽象、模块化、信息隐蔽、模块独立性。其中模块独立性是重点,耦合性和内聚性是两个度量标准。一般的优秀软件应做到高内聚,低耦合(2005年4月(7)的考点);

(2)概要设计和详细设计。熟悉结构图的基本图符含义;掌握结构图的相关术语:深度、宽度(2006年9月【1】的考点)、扇入与扇出等;了解常用的设计过程设计工具(流程图、N-S图、PAD图及PDL)的表示法。

3.2.4.4 软件测试和程序调试

(1)测试与调试的区别:测试的目的是为了发现错误,这一过程贯穿整个软件生命周期;而调试的任务是诊断并改正程序中的错误,主要在开发阶段。例,2005年4月(6)与【3】就分别涉及到了测试的目的与调试的任务。同一考点又出现在2006年9月【2】;

(2)静态测试与动态测试。例:2006年4月【4】程序测试分为静态分析和动态测试。其中____是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误;

(3)白盒测试与黑盒测试:白盒测试是内部的结构测试,黑盒测试是外部接口的功能测试。这一知识点,尽管在历年试卷中未曾出现,但考生也应引起重视。

复习这部分内容时,建议通过比较来掌握。

3.2.5 数据库设计基础

数据库设计基础也是考核的一个重点,涉及面较广,但除了关系运算会考一些简单的计算问题外,其余的都是以概念题的形式考核。

3.2.5.1 数据库系统的基本概念

分析历年试卷发现这一部分内容涉及的考题量较大,考点也是面面俱到。

(1)数据库系统组成。例:2006年4月(10):数据库DB、数据库系统DBS、数据库管理系统DBMS之间的关系____ 。2005年9月(10):数据库系统的核心是____。数据库设计的根本目标则分别出现在2005年9月(8)和2006年9月(9)中;

(2)数据库系统的发展。考生要熟知数据库系统发展的三个阶段,了解不同阶段的特点。例:2005年9月【1】数据管理技术发展过程经过人工管理、文件系统和数据库系统三个阶段,其中数据独立性最高的阶段是____;

(3)数据库系统的特点。在2005年4月(9)和2006年4月(5)的考题都考了数据独立性这一特点;

(4)数据库的内部体系结构。三级模式与二级映射构成了数据库系统内部的抽象结构体系。例:2006年9月(4)在数据库系统中,用户所见的数据模式为____。A)概念模式;B)外模式;C)内模式;D)物理模式;

3.2.5.2 数据模型

(1)E-R模型。要会分析两个实体集间的联系并会E-R图示法。对于这一考点,不能死记硬背,考生应通过分析大量实例,通过练习来理解并掌握。考生可参见2006年9月(4),2006年4月(9)考题;

(2)层次模型与网状模型。了解这两种模型的基本结构即可。例:2005年4月(10)用树形结构表示实体之间联系的模型是____;

(3)关系模型。这是考核的重点,要求掌握关系模型中的一些常用概念,例:2005年4月【4】,2006年4月【3】的考题相似:每一个二维表称为___。2006年9月【3】一个关系表的行称为____。

3.2.5.3 关系运算

包括关系模型的基本运算和扩充运算。应熟悉各种运算的过程和结果,重点掌握交、并、笛卡尔积、除等运算。例如,2006年9月(6)和2005年9月(9)的试题,就分别涉及了交、笛卡尔积运算。对于以上信息,考生应引起充分重视,复习时应通过多次练习掌握各种操作间的规律。

3.2.5.4 数据库设计

重点掌握数据库设计的四个阶段,即需求分析、概念设计、逻辑设计和物理设计,具体过程了解即可。这一考点在历年试题中只出现在2006年9月(5)的试题中。

3.3 把“知识点”连成“知识链”

二级公共基础知识内容零散,知识点之间的跳跃性大,似乎没有连续性。考生往往觉得难以掌握,似懂非懂,对知识点处于模糊认知状态。因此在学习过程中,应把“知识点”连成“知识链”。例如,在复习数据结构这部分内容时,应将每种逻辑结构和其对应的不同存储结构进行分析、比较和总结,将内容零散,跳跃性大的知识点串成“知识链”。

3.4 切忌题海战术

对二级考试公共基础知识,没有必要做大量的题目,更不能为了应付考试记住一大堆错误答案。

3.5 答题时,不要拖延时间

公共基础知识考题的难度不大,一道题在两分钟内如果没有任何思路,就应该跳过此题,把时间让给后面的题目,这是考生应该考虑的一个“成本/效果”关系。

4 结束语

全国计算机等级考试以应用能力为主,划分等级,分别考核,用于提供最具权威的资质证明。本文介绍的二级公共基础知识的复习方法和解题技巧,能够为参加全国计算机等级考试(各类二级)的考生提供一些帮助和参考。

参考文献:

[1]全国计算机等级考试二级教程――公共基础知识(2004年版)[M].教育部考试中心 高等教育出版社,2004(5).

[2]黄庆宏,丁为民.全国计算机等级考试真题(笔试+上机)详解与样题精选(二级公共基础知识+Visual Basic).清华大学出版社,2005(2).

数据结构试题及答案范文第3篇

关键词 计算机;考试系统;案例分析题

中图分类号:G434 文献标识码:B 文章编号:1671-489X(2013)03-0069-03

Processed by Computer Case Analysis Problem of a Kind of Method of Design and Implementation//

Guo Xichun, Tian Zhenqing

Abstract In general exam, case analysis problem is a common topic. When using the computer as the testing tool, the cases of setting respectively topic and collect the information of the answer in complete test node should be taken into consideration. This article puts forward to designing of the application of the topic from problems of inputting, data storage, examination paper presents and so on with application examples.

Key words computer; exam system; case analysis problem

在传统纸质考试中,案例分析题是一种常见题型。一般的案例题与简答题类似,只有一段文本题干描述,用计算机可以简单进行处理。但另一种案例分析题的处理相对复杂,即先给出完整案例进行阅读和分析,然后针对其中的多个节点分别设置题目并进行回答,也就是在一个完整案例中穿插多个题目,案例描述与题目混排。这与一般案例题中每题目只包含一段描述的方式不同,处理起来有一定的难度。下文即针对这类题目给出一套完整的处理方案。现以“蒙古文版职业技能鉴定考试系统”(下文简称“考试系统”)为应用实例,分析其实现过程。为表述方便,下文将该题型称为“多点案例分析题”,并约定包含多个问题的案例描述称为“案例”,其中的问题称为“题目”。

1 背景分析

1.1 一般考试系统特点

一般的计算机考试中,不论是单机考试,还是B/S模式或C/S模式的网络考试,其基本的试题存储模式大体相同,主要包括题干、备选项(用于选择题)、考生答案等字段,每题目为一条数据库记录,题目之间相对独立,一般没有包含关系或顺序关系,以题型进行归类成组[1]。

1.2 多点案例分析题的呈现要求

1)一个完整的案例题由大段描述和若干道题目组成,题目穿插在描述中,内容与描述中的关键点相关;2)题干中可以包含表格、图片、公式及特殊符号等非纯文本信息,并可以包含文本格式信息,以满足完整案例的描述需要。

1.3 自动组卷、试题管理、评分与答案处理要求

在多点案例分析题中,各题目与案例描述相关,顺序和位置相对固定。但为了在自动组卷时题目可以有一些变化,如题目可以在考查同一知识点的多道备选题中任选一道来呈现,或者选择题的备选项顺序可以变化等,就要求每道题目的数据应与案例数据分开存储。这样一来也满足了题目集中管理的要求,以及评分和答案处理的方便。

2 试题保存与输入

2.1 确定存储格式

基于多点案例分析题的呈现特殊要求,确定使用MHT格式存储案例数据。MHT格式是一种单一文件的网页格式,可以包含格式化文本、表格、图片等内容,并将全部数据存储在一个文件中,方便处理。该格式可以用Word环境直接进行编辑,也可以用IE环境读取并显示,对试题编辑计算机软件环境和考生机软件环境要求都较低。该格式全部数据为纯文本格式,方便存储和在网络中传输,并可以用较简单的方式进行数据压缩、加密、内容检索等操作。

2.2 数据结构[2-3]

基于案例与题目分别存储的思想,可以设置案例数据表与题目数据表。案例数据表用于存储案例编号与MHT格式的案例数据;题目表用于存储案例中包含的各题目的数据,字段除一般考试系统的试题表字段外,还必须包括所属案例编号以及在案例中的位置和顺序信息,如案例内编号或顺序号。数据结构如表1、表2所示。

2.3 案例输入

为方便案例的输入与编辑,一般将案例输入与编辑功能集成在试题管理程序中,可以在一个集成界面中完成案例输入、保存、读出、编辑、预览等操作,以及案例中各题目的相关编辑操作。

在“考试系统”中,使用嵌入式Word控件来实现对案例内容的编辑,但没有将Word控件直接嵌入窗口,而是先在窗口中嵌入一个IE浏览器控件(WebBrowser控件),然后使用WebBrowser控件的Navigate方法来加载MHT文档,Navigate方法将调用系统默认的MHT编辑控件(一般为Word)来加载MHT文档,并生成相应的编辑界面(即Word编辑界面,包括工具栏)。

该方法利用了WebBrowser控件对Word环境良好的控制能力,有效地减少了代码量,并回避了Word版本兼容问题,使程序兼容性更好。同时,可以通过WebBrowser控件的Document方法获取对文档对象的控制,来完成打开、保存、复制、粘贴、查找等操作,对文档的控制能力并没有降低。

2.4 题目输入

基于试题管理的要求,题目与案例应分别输入和存储,每道题目有唯一的题目编号,以及独立的题干、答案、分数等信息,并包含所属案例编号,以明确与指定案例的所属关系。同时,为了确定题目在案例中出现的位置和顺序,为每道题目设置案例内编号,该编号在案例内唯一且有序。以上内容均为每道题目要输入的信息。

为题目设置案例内编号后,应在案例描述中要求出现该题目的位置处设置标识,以便考生机显示试卷时按标识读取题目。在“考试系统”中,使用“(--”+案例内编号+“--)”的格式插入题目标识,如案例内编号为5的题目标识为“(--5--)”。为确保该标识在案例描述中是唯一的,在插入标识前用查找替换的方法对案例描述进行预处理,将所有包含“(--”的文本替换为“( --”,即在括号后加入一个半角空格。

在输入界面的设计中,为方便输入,可以将案例输入与题目输入设置在一个界面中,这样可以进行对照输入和文本复制。

3 试题呈现

3.1 案例呈现[4]

考生机程序显示完整案例时,同样使用WebBrowser控件显示通过网络传来的MHT格式数据,因为一般Windows系统都包含有IE浏览器,所以能确保大多数计算机可以正确显示题目。

读取并显示案例的过程为:

1)接收从网络传来的MHT格式文本数据,保存在内存变量中;

2)对MHT数据进行预处理,将数据中的“3Dus-ascii”及“us-ascii”替换为“gb2312”,以解决大多数汉字编码问题;

3)接收从网络传来的题目数据,保存在内存数据集中;

4)读取第一道题目的案例内编号,在案例文本变量中查找该编号对应的标识字符串,如编号为5,则查找“(--5--)”,在找到的位置处用题干文本替换该标识,也可在题干前后加入基于HTML语言的格式控制标签,如背景颜色、字体、字号等。

5)重复执行上一步,依次将所有题目替换完成;

6)利用VB的文件操作代码,将处理完成的MHT案例文本数据保存为临时文件“~temp.mht”,并使用WebBrowser控件的Navigate方法来加载该MHT文档,即完成案例题目的显示,考生即可在独立的答题区中做答。

3.2 选择题备选项处理

在考生机程序中,为防止同一机房考生抄袭,可以对选择题备选项进行随机交换处理。“考试系统”中采用同步交换备选项与答题区选择框的方法,假设备选项有5个,处理过程为:

1)将备选项保存在下标为0~4的数组中;

2)随机生成0~4的数字排列,如3、1、4、2、0;

3)依次取备选项数组中下标为3、1、4、2、0的元素,加上A、B、C、D、E的标识,显示在题干下方;

4)在答题区中生成该题对应的5个答题选择框控件(单选题为单选框,多选题为复选框),分别标识为A、B、C、D、E,5个控件的附加属性(VB为Tag属性)分别为3、1、4、2、0;

5)当考生单击某一选择框时,读取控件的附加属性,即可获得对应的备选项下标。

利用以上方法,可以在考生机程序中使用简单代码呈现随机备选项排序,有效防止考生作弊。

4 总结与应用

本文设计的处理方案较好地解决了针对完整案例中各关键点分别设置题目,案例描述与题目混排的问题。该方案通用性较强,可以用于各科各类考试系统,也可以用于包括选择题在内的各种题型;因题目与案例分别存储,题目的后期处理与一般考试系统相同,可以与其他题目统一进行评分、数据统计、分析等工作;该方案数据结构简单,程序实现也较容易,也可以与其他相关程序相整合,具有较好的可扩展性。

本文阐述的解决方案在“中小学教师教育技术能力测试”工作中投入使用,已针对全区约16万中小学教师进行了测试,取得良好的效果。

参考文献

[1]逯洋.计算机辅助考试系统开发中细节技术的探讨[J].通化师范学院学报,2009(12):39-40.

[2]张学清.Windows环境网络考试系统的设计与实现[D].哈尔滨:哈尔滨工程大学,2003.

数据结构试题及答案范文第4篇

关键词:C/S模式;多层结构;Access;考试系统;Delphi;随机选题;实时评分

中图分类号:TP311.52

数字化建设以实现数字化网络环境、资源、学习和工作环境、科研和管理、信息化和现代化等为最终目标[1]。为提高广大科技干部的理论水平,加快岗位数字化训练建设进程,创建无纸化学习与考试环境,考虑到考试保密性、安全性和多专业等需求,本文采用Delphi7.0软件开发基于C/S模式多层结构的在线岗位训练考试系统,系统使用Microsoft Access数据库。本软件具有计算机自动组卷、实时评分、随机抽取考试题目、模拟考试等功能,使考试工作标准化,技术人员可随时对知识掌握程度和质量进行评估。

1 系统开发相关技术

1.1 基于C/S模式的多层结构

两层C/S结构具有可靠性低、灵活性差、资源浪费、维护费用高等结构缺陷[2],其业务逻辑和表达逻辑在一个处理过程中存在,每连接一台电脑就会建立一个数据库连接,电脑的增加会加大数据库服务器的负载,使效率变低[3]。多层结构的C/S模式,将中间业务逻辑层独立出来,具备可按应用要求部署逻辑层次、网络效率提高、管理性强、重用性好等优点[3-4]。

1.2 Delphi7.0和Microsoft Access数据库

Delphi程序可快速进行模块化编程,在集成环境、图像编辑(Image Editor)和强大的数据库功能[5]。系统使用Microsoft ActiveX Data Objects(ADO)和可以处理少量数据的Microsoft Access数据库[6],针对岗位几个专业的数据库题库设计,在少量用户访问数据库时效率很高。

2 基于TCP/IP通信的三层C/S结构设计

三层C/S结构表达逻辑独立,可在客户端上进行设置;业务逻辑放在服务器上,这种结构对数据库的连接减少[3]。在线训练考试系统由基于C/S架构的多层结构组成,包括数据库服务器(数据服务层)、应用程序服务器(业务逻辑层)和客户端程序(数据表示层)三部分。

2.1 主要技术参数

系统采用数据库服务器中的Microsoft Access数据库来存储提交的答案。应用程序服务器要通过各种接口来完成查询、数据录入、分析等工作,并采用数据模块Remote Data Module,控件TADOconnection、TADOtable和Tdataset Provider与数据库服务器连接。客户端程序由用户界面和自动评分系统组成,进行时间记录、自动评分及与应用服务器传递数据。若在考试系统安装过程中服务器计算机发生变动,则客户端和服务器连接采用动态连接。安装客户端的电脑必须要连接服务器来获取服务,且要保证位于服务器的中间件与接口程序正常,使用TCP/IP协议与应用服务器之间进行通讯。考试系统采用TDBgrid组件显示数据,利用Tdatasource获取数据,可对TDBGrid表数据进行修改,再通过TclientDataset部件向应用服务器发送更新数据请求[7]。

当上述工作都准备好后,启动在线训练考试系统,弹出服务器配置窗口,配置客户端所连服务器的名称、IP地址和连接传递信息所用的端口地址。若中间件、接口程序和系统程序都安装在作为服务器的电脑上,则服务器名与IP地址相同。在作为服务器的电脑不改变的情况下,客户端上服务器配置完毕,进入考试系统就不用再配置。系统采用ACCESS数据库保存提交的考试答案。考试系统具有自动交卷和自动评分功能,成绩存储在服务器的数据库中[8]。

2.2 系统实现过程

2.2.1 数据库服务器设计

考虑到实际需求,把每个岗位的计算机作为一个客户端,安装一个在线训练考试系统,通过点击随机抽题、提交试卷按键,可与服务器存储的主数据库进行交换,继而发送给各岗位计算机。服务器不执行数据处理,只有在点击上述按键时,才会发送请求数据,把整个数据集通过网络发送给正在进行训练考试的计算机[9]。

将各岗位试题存储到系统数据库中,普通用户也能建立自己的题库系统,为避免无关人员对数据库修改,数据库可设定密码。建立系统数据库test.mdb,存储于数据库服务器上设置为共享的文件夹下,文件路径为:C:\在线训练考试系统\系统数据库\Pserver\Databasefolder。

2.2.4 用户界面设计

(1)考试系统

(2)随机抽取试题功能的实现

系统摈弃人工抽取试题组卷,采用快速自动的系统随机生成抽题。基本原理是:利用random()函数循环生成题号,再比较生成的题号,不重复就记录在Pick_Questions[i]数组中。目的是给用户提供更快捷的考试节奏,随机选题更能体现试卷的客观性。主界面上设计了相应的按钮控件,对按钮控件添加命令代码,可以实现随机抽取试题操作。

(3)考试时间记录

考试系统的目的在于检验和增强科技干部对于岗位知识掌握的熟练程度,设计时没有规定固定的考试时间段。在考试界面按下按钮后,开始时间以当前系统时间被记录到试题数据库的表Login中,当点击后,结束时间以当前系统时间也被保存。

3 实时评分

提交试卷后考试界面上方会出现成绩,记录在数据库表Login中。

3.1 题型计分

4 结论

基于多层C/S架构,使用Delphi7.0软件开发,选择Microsoft Access作为系统数据库的在线岗位训练考试系统使技术人员随时随地对岗位技能知识进行考核,可长期保存考试信息、便于管理存档,加快了岗位信息化建设步伐,具有实用性和很重要的推广价值。

参考文献:

[1]郭清顺.高校数字化校园建设的整体目标与实施策略[EB/OL].http:///2003/xxzy/yth/text/mubiao.ppt.

[2]孙志锋,徐镜春,历小润.数据结构与数据库技术[M].杭州:浙江大学出版社,2004:186-189.

[3]李焕哲,张有华,陈宜英,刘晓亮,郭大权,曹强,王凡.Delphi三层结构在网上考试系统中的应用[J].河北省科学院学报,2004,21(2).

[4]李舒,陈丽君.高校学生成绩管理系统的设计与实现[J].辽宁大学学报,自然科学版,2006,33(3):283-285.

[5]Macro Cantu. Delphi7从入门到精通[M].北京:电子工业出版社,2003:242-255,422-426.

[6]田红宇,张斌,李国霞.Delphi环境下基于ADO对象动态创建和连接加密的Access数据库[J].数据库及信息管理,2011,28-29.

[7]陈振庆.基于Delphi/Access的C/S系统设计[J].广西右江民族师专学报,2006,19(3):68-72.

[8]张新军.自动考试系统的设计与实现[D].电子科技大学.2008.

[9]崔再惠.Access数据库与SQL Server数据库主要功能的比较[J].鞍山师范学院学报,2009,11(6):51-52.

[10]何定华.基于C/S模式的远程在线考试系统的原理及其Delphi实现[J].电子与计算机技术,2011,10(1):63-65.

数据结构试题及答案范文第5篇

摘 要:针对当前应用中的答题卡阅卷系统和图像识别阅卷系统的不足,该文构建了基于XML的网上阅卷系统,充分利用试卷结构的逻辑性,将试卷版面结构用XML语言文档描述,生成XML文档,再对其解析生成DOM树,进而获取试卷版面分割所需的坐标信息。实际表明,基于XML的网上阅卷系统在实际应用中具有通用性,能够提高阅卷效率。

关键词:XML技术 网上阅卷系统 DOM树

中图分类号:G424.79 文献标识码:A 文章编号:1672-3791(2016)09(c)-0019-02

相比传统的阅卷方式,网上阅卷具有很多优势。但是,目前的网上阅卷存在一定的问题和不足,所以该文构建基于XML技术的网上阅卷系统,从阅卷的流程以及方法上加以改进。具体工作是通过XML文档描述试卷的逻辑结构,利用DOM解析后生成试卷坐标信息。图像试卷通过结合先前基于元数据建立生成的XML文档,进行精确定位,实现试卷图像的准确分割,再将考生试卷生成的XML文档经过二次解析,生成考卷客观题答案的DOM树,与试卷标准答案的DOM树进行匹配,得出试卷的分值。

1 需求分析

针对网上阅卷的具体工作流程,可以分为以下4个环节。

(1)试卷模板设计:试卷模板的设计用以生成XML格式的试卷,进而通过解析生成DOM标准试卷。(2)图像的预处理:图像预处理是将考生试卷图像数据库中的数据通过XML模板库转化为标准图像。(3)试卷图像与试卷XML文档转换:对标准图像进行转换,用以实现试卷图像分割,生成考生试卷XML文档,经过解析生成考生试卷DOM文档。(4)阅卷:阅卷分为客观题和主观题,客观题系统进行自动阅卷,主观题通过阅卷客户端评阅。

对上述4个环节,从系统用户的角度进行分析,可以将系统划分为五大模块。

(1)试卷设计模块:定义试卷结构,通过XML语言进行描述。(2)试卷扫描模块:通过扫描生成二进制的图像试卷,为后续的评阅奠定基础,需要说明的是,务必要保证扫描的质量。(3)图像预处理:通过图像预处理保证试卷图像分割的准确性。(4)图像分割、识别、转换试卷设计模块:该模块是将试卷图像信息转换为XML文档,进而通DOM解析生成坐标树,接下来进行图像的分割、存储,这些工作完成后,通过XML模板进行精确定位,以便不同的阅卷人批阅试卷的不同部分。可以说,该模块是该文研究的重点,也是该文的核心和亮点。(5)主客观题评判模块:根据试卷考题类型分为主观题和客观题,因二者性质的不同,在系统中通过不同的方式完成试题的评判。同样,需要进行XML的处理和DOM树的解析工作,具体步骤此处从略。

2 总体设计

基于XML技术的网上阅卷系统在总体设计上,分为3层构成,分别是评卷客户端、网上阅卷管理和后台管理,其具体结构如图1所示。

分层的目的是为了简化问题的处理,在逻辑上更加清晰。评卷客户端是用户与系统的入口,针对网上阅卷系统来讲,用户有管理员和教师,管理员拥有系统操作的最高权限,而教师的操作权限由管理员统一分配和管理;网上阅卷管理是系统设计的核心,处于系统架构的中间层次,需要和评卷客户端和系统数据库及后台管理交互,在业务上比较复杂;后台管理主要是对网上阅卷具体流程不同阶段的控制;而在网上阅卷管理和后台管理的交互过程中,系统数据库是二者交互的中枢,负责相关实体信息(比如试卷信息、阅卷老师信息等)的存储和读取。

在该设计中,涉及到的数据实体有:教师实体、管理员实体、XML模板实体、试卷实体、题型实体、试题实体、图像试卷实体、客观题实体、主观题实体等。

3 核心业务的设计

该节通过XML文档描述试卷的逻辑结构,再结合XLST的设计样式,实现学生试卷的数字化呈现,方便后续的阅卷。

(1)试卷版面结构设计。为了提高系统的通用性,弥补当前网上阅卷系统存在的不足,该文在试卷版面结构的设计上,引入试卷模板结构,通过提前设定好的试卷逻辑框架以XML模板的形式保存在数据库中,通过系统工作引擎驱动整个阅卷过程。

(2)试卷版面的Schema模式。在XML技术中,数据的合法性和规范性描述技术有DTD(Document Type Definition)和Schema两种方式。但是相比较DTD,Schema更具优势,已经成为XML数据合法性和规范性管理的标准。使用Schema定义试卷结构,非常灵活,可扩展性很强,可以自由定义所需实体标签。

(3)DOM树的构建与数据的存储。该节从两个方面来描述:其一是DOM树的构建,其二是数据的存储。有了描述试卷的Schema后,试卷结构就具有了很强的关联性和辑性,通过对XML试卷文档进行解析,进而建立DOM树,根据DOM树中的元素设计合理的数据结构,实现数据的有效存储。

①DOM树的构建:通过对XML文档的解析生成DOM树,树中包含元素和元素之间或元素的属性之间联系的边,在解析生成DOM树时,应赋予其相应的编号。

②数据的存储:就是对解析后的DOM树中的元素及其相关信息映射到数据库中,具体结构通过“元素标签―描述―类型―约束”的方式保存到数据库中。

(4)试卷生成。采用XML技术描述试卷结构,使得试题模板和内容相分离,实现了网上阅卷系统的通用性,保证了系统工作的高效性。试卷生成过程如下。

①试题的XML文档:以XML技术描述试卷文档,具有自描述性、内容独立性以及显示多样性等优点,这样保证逻辑上的简单性,描述只关注数据的结构化。

②试卷的XSL样式:在网上阅卷系统中,试卷最终要呈现在浏览器中。具体如何呈现,这里通过XSL来描述,通过XSL实现了试卷数据存储和试卷数据显示相分离的效果,以XSL描述试卷的显示样式,对于XML文档来讲,具有很强的通用性。

4 结语

该文对基于XML的网上阅卷系统进行了分析和设计,详细阐述了系统的构建过程。具体以XML作为试卷结构的描述模板,通过XLS来描述试卷的呈现,提高了应用的通用性和实际工作的高效性。

参考文献