HI,欢迎来到学术之家股权代码  102064
0
首页 精品范文 数据结构试题及答案

数据结构试题及答案

时间:2023-05-30 09:38:27

开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇数据结构试题及答案,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。

数据结构试题及答案

第1篇

Abstract: Exam question bank is made according to a certain kind of index which based on a theoretical and maehemetical medels with the feature of being consistent with a discipline or course of target detection ability of all the knowledge contained in the many questions asked. It is a collection system of stoarge, indentification of delection, sampling and examing function. Exam question bank examiniation is objectivly impartial. China's exam question bank construction is relatively late, the related subject's exam question bank construction is in the process of improvement. Starting from the necessarity of building of the exam question bank and the overall data structure of the bank and the design of bank management system, the develop of college exam question bank management is discussed.

关键词:题库管理系统;数据库;开发平台

Key words: exam question bank management system; database; development platform

中图分类号:TP39 文献标识码:A文章编号:1006-4311(2010)36-0225-01

1建立题库系统的必要性

1.1 题库应用技术推广以后,教师将告别手工命题的传统方式,只要通过键盘操作就能让计算机自动产生高质量的试卷。这对于提高教学质量管理水平,对于逐步实现教师办公自动化等都有重要意义。

1.2 题库是大批优良试题的储存库,凡是入库的试题都是经过严格筛选,并按合理的原则组织起来的,其技术参数、质量指标(如难度、区分度等)是经过测定的。

1.3 题库内的全部试题都具有标准统一的技术参数,便于人们按照一定的科学程序,按试题已有的技术参数挑选试题,优化组合成内容、性质、难度等各不相同的试卷,使试卷符合预定的各项质量指标,保证考试的信度和效度。

1.4 由计算机管理题库,自动化程度高,可大大提高命题工作的效率,减轻命题教师负担。计算机题库系统具有自动寻找的功能,便于教师通过手指击键、自行选题编卷。利用这种管理系统还能让计算机根据命题要求自动自成试卷,自动完成试卷及考分的等值处理,必要时还能生成互相等值的平行试卷,能客观地比较历次考试的不同水平。

1.5 利用题库系统自动生成试卷,要求命题者事先制订好详细的命题计划,并按规定输入有关信息,这有助于克服命题的盲目性和随意性,使命题过程规范化。

2题库总体数据结构

对于较大的题库系统,其试题库总体结构是分层分块的,总库下有子库,子库中有分库等。试题信息常按题文(题目中的文字部分)、题图(题目中的附图)、答文(答案信息为文字)、答图(答案信息为图形)、属性指标等分类,分别存放于不同的子库当中;全部试题又常按课程的内容、或题型、或按测试目标层次分类存储,这样每个子库被相应地分成若干分库。各个子库要设定相同的关键字,利用关键字把同一道试题的各种信息联系在一起(例如同题号作关键字,那么在各子库中部应有题号这个数据项)。为了提高检索和库管理速度,一般要根据需要建立各种索引文件,如对各个子库建立各分库的题号索引,以指出各分库中存放的试题题号范围。通常可用分库中第一个试题的题序号和该库中存放的试题总数目来标明该范围(因题库中题号是有顺序的,题目按题号有序地存储在分库中)。

设计题库总体数据结构时要考虑图形存储问题。许多学科题库都不可避免地存储带有图形的试题,而图形需要占据大量存储空间,应采用数据压缩技术来解决节省图形存储空间的问题。有关压缩存储的方法很多,针对不同学科的图形特点可设计不同的方法来实现图形数据压缩。例如,将试题中的图形以图段拼成,而图段则由一些图元组成,每个图元给予不同的编码,不同的编码值代表不同的作图算法,然后用参数表明图的大小及它的相对位置。这样使用适当的编辑命令,就能很方便地绘制题目中所需要的图形。可以看出,这种方法已把一幅图形变成一些代码和参数存储起来。当图形显示时,失调出相应的图形记录,分解并翻译那些代码和参数,然后根据代码值所表示的算法,绘出每个图段的各图形元,这样一幅题图就显示出来。

3题库管理系统的设计

3.1 数据库和表的设计。数据层在分布式三层体系结构中处于最底层,提供数据存取及处理服务。在所有的MIS系统的事务处理过程中,数据库处于核心地位。由于本系统涉及大量数据存贮、管理与检索,需要有高性能的后台数据库支持,选择合适的数据库是很重要的,目前大型数据库有不少,候选的主要有Oracle、DB2、SQLServer。通过对其性能及功能的综合比较,以SQLServer2000作为首选数据库。

利用SQLServer2000管理工具创建一个数据库,命名为TK,即题库数据库。配置好连接数据库的用户及权限,再建立数据表和数据表之间的关系。

3.2 系统功能设计。题库管理系统包括用户管理、课程管理、题库管理、试题组卷和退出题库等五大功能模块。用户管理包括对用户信息、课程信息和考生信息的管理;课程管理包括课程清单、录入课程信息、课程信息列表几项子功能;题库管理主要是由任课教师根据所授课程,按照章节、知识点、题型、难度实现试题的录入、修改、删除、保存和查询等功能;试题组卷功能是由任课教师根据所授课程试题信息按组卷策略算法组成试卷,并可将组卷方案保存,备日后查看。或着直接生成Word文档,供学生考试之用。

综上所述,题库建设是高校课程建设的重要内容,它对提高教学质量有着至关重要的意义。利用计算机数据库技术,开发试题库管理系统,可以达到试卷的自动生成,信息全面快捷的查找和方便的管理操作,大大节省了教师组卷时间,提高了工作效率,并且为学校的教务管理提供了较好的管理方法,能够充分地实施考教分离, 提高了教学质量,促进了教师教书育人的积极性,进一步提高了学校的办学水平。

参考文献:

[1]夏帮贵,郭胜,等.SQLSEVER数据库开发入门与范例解析[M].北京:机械工业出版社.

[2]何克抗.建立题库的理论[C]//全国CBE学会第七届学术会议论文集.长沙:国防科技大学出版社,1995.

第2篇

【关键词】题库;组卷;组卷策略;人工设置

1引言

目前,市面上的题库软件为数不少,但能投入实用的却不多,原因当然是多方面的。有的是因为组建题库的困难太大,有的是因为题型单一,还有很大一部分原因是组卷方式死板,不能符合教师的要求。因此,要设计一款针对学校日常考试的具有较强可用性的通用题库软件,除了要解决建库难、题型少等问题外,还必须具备一种灵活实用、符合教师思维习惯的组卷策略,只有这样才能使命题教师灵活运用该题库软件得心应手地进行组卷。否则,一种组卷算法即使在理论上是无懈可击的,但如果它所用的思维方式与命题教师日常组卷所用的思维方式有很大的差别的话,那也会遭到命题教师的排斥从而不利于题库系统的推广使用。

2人工组卷的基本方法

为了设计一种符合教师日常出卷习惯的组卷策略,我们先来分析一下日常的考试中教师是如何出一套试卷的。首先,必须明确本套试卷的总分,大部分试卷的满分当然是100分,但也有一些要求总分为120,甚至是150。其次,确定本套试卷的试题类型以及每种类型试题的分值。第三,针对某一具体的题型,根据该题型的分值,确定该类型题的小题数、每小题的分数及内容。在此过程中要考虑到试题对知识点的覆盖面及每道题的难度系数等。当对所有的题型都完成了出题后,则组卷工作宣告结束。

针对上面的分析,我们可以按此思路来设计一套基于人工设置参数的组卷策略,它既能仿真人工组卷方法又能确保试卷的多样性和针对性。

3基于人工设置参数的组卷策略的实现

3.1有关题库数据结构的说明

题库的数据结构是实现组卷策略的基础,系统各项功能的实现都基于题库的结构而对其进行操作。题库的结构包含以下几个字段:

Ÿ试题标识:(字符型)试题标识是识别试题的唯一标志,作为试题库的主关键字。题库的很多内容要通过试题标识相关联。为了便于维护,试题标识是由系统自动产生的,用户无权修改。

Ÿ题型代码:(字符型)用于标识试题的题型信息,在设置题库的配置时,用户可以在题型信息表中输入本题库所含的题型。题型信息由用户设置,解决了通用题库中题型偏少的缺点。

Ÿ知识点代码:(字符型)用于标识试题所覆盖的知识点内容,在设置题库的配置信息时,用户把题库所涉及到的知识点在知识点信息表中输入。值得一提的是,用户在编辑知识点信息表时,不宜把一个题库所涉及的必考知识点分得太细,如对于《C语言程序设计》,有关C的概述、常量、变量、运算符、表达式等都可以归类到“C语言基础知识”这一点中。而对一些可选的知识点,则可以单独列出,如C语言的“文件”部分。这样做,在组卷时可以减少参数的输入个数,同时又能撇开某些可选的知识点,不作为考试的范围。

Ÿ难度系数:(字符型)试题的难度分为三个等级(1-3),分别表示易、中、难,难度系数如果分得太细,则会增加创建题库的难度。

Ÿ参考分值:(整型)表示该试题在试卷中的参考分数,用户在组卷时可以根据需要进行修改。对于同一个知识点的试题,如果题型和难度系数一致,则要求其分值也一致。

Ÿ选中标识:(逻辑型)表示本次组卷是否被选中。

Ÿ选中时间:(日期时间型)表示最后一次被采用的时间,程序根据此字段的值,可以避免在一个指定的时间段内重复抽取同一试题。

Ÿ录入时间:(日期时间型)用来表示录入的时间,以便数据更新。

Ÿ试题内容:(MEMO型)试题的具体内容。

Ÿ试题答案:(MEMO型)试题的答案。

3.2组卷流程及界面设计

本组卷策略采取模拟人工组卷的流程,其各项参数如“总分”、“题型”、“每种题型的分值”以及试题所涉及的“知识点”和“难度”分布等均由人工设置,这扩大了选题的自由度,增加了组卷的成功率,为用户提供了较大的灵活性。其流程及界面设计如下:

第一步,确定本试卷的总分及题型,如图1所示。用户在试题库包含的所有题型中选择本次组卷所要出现的题型。

第二步,确定每一种题型的分值,如图2所示。计算机将自动校验所有题型的分值总和是否等于步骤一所确定的总分,若不相等,则会给出提示,要求修改。

第三步,为每一种题型抽题,如图3所示。在抽题时,对于指定的题型,计算机会显示每个知识点其难、中、易的题数,供教师参考。然后要求输入以下一些信息。首先,确定该类题的组分方式,系统提供两种策略。第一种适合于选择题、填空题等,即在同一题型下,不管知识点、难度如何,每小题的分值是一样的,但小题的分值由人工决定。第二种策略适合于问答题、编程题等,即在同一题型下,不同知识点或不同难度的题目,其分数均可以由教师指定,这样大大增加了组分的灵活性。同时,系统要求,当试题的题型、知识点、难度均相同时,其分值也相同。当确定了组分的方式后,下一步要求人工输入参数进行抽题,对每个知识点,确定其难、中、易的题数。参数输入完毕,计算机会进行一次校验,累加每小题的分值,其结果应等于本题型的分值,否则,提示用户修改。当对所有的题型都抽题完毕后,则本次的组卷工作也宣告完成。

图1:确定总分和题型

图2:确定每种题型的分值

图3:为指定的题型抽题

3.3关于抽题的算法

由于组卷的参数是由人工确定的,抽题的算法相对比较简单,无须考虑难度的正态分布、试题对知识点的覆盖是否全面等问题,因为这些问题都已经由人工通过参数加以确定了,也就是说,计算机在组卷时充分融合了人的智慧。抽题时采用随机选取法就可以解决问题,基本算法用VFP语句描述如下:

USE本次试卷的题型信息表(以该试卷的题型记录来控制循环)

SCAN

USE该题型的选题策略表(以该题型的知识点记录来控制循环)

SCAN

FOR难度系数={难、中、易}

检查用户对此题型、此知识点、此难度系的出题数,若为0,则跳过此步,否则,把符合题型条件、知识点条件和难度系数条件的题目筛选到一张临时表中,然后根据用户要求的出题数进行随机选取。

ENDFOR

ENDSCAN

ENDSCAN

4结束语

基于人工设置参数的题库软件,高度仿真人工的组卷过程,同时由于参数设置方便,操作简单,组卷的自由度大、针对性强,因此组卷的成功率很高,组卷策略的设计比较成功,达到了预期的目的。

第3篇

关键词:网络考试系统;难度级别;评标;多约束组题算法

中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)08-1pppp-0c

1 引言

试题库随机组卷系统是CAI的重要组成部分之一,它的主要功用就是帮助教师利用计算机进行信息化教学,其主要功能就是利用计算机对试题进行分类管理及试卷的自动生成、输出、排版和打印等辅助工作。可大大促进教学信息化、减轻教师工作量、提高教学效率、改善教学方法和增强教学质量等。本文自行研究开发了基于面向对象的试题库随机组卷系试题选取策略等关键性技术,并根据教学要求提出了系统开发的结构和方案。

2 系统总体方案设计

题库系统是一个信息管理系统,它用于对数据进行集中管理并且从中进行有用信息的输出。试题库信息系统主要用于试题的管理和试题的输出,在进行试题的有效输入之后,使得大量的信息存储于数据库之中,然后通过参数的设置对库中数据进行有效的提取。

试题库随机组卷系统是由七个模块组成的,分别是系统维护模块、试题维护模块、试题查询模块、试卷管理模块、答案管理模块、打印模块和试题选取标准模块。如图1所示。另外,考虑到系统的安全性,系统还必须有身份验证功能。身份验证功能应该由三部分组成:用户名验证、密码验证和容错验证。其中容错验证是指当用户名和密码输入三次或者N次不正确时,系统会自动判断身份验证错误,并退出系统。从而防止恶意登录。

图1 试题库组题系统总体方案图

系统管理模块包括密码管理、用户管理、以及系统退出三个子功能模块;试题维护模块包括试题输入、试题修改和试题删除三个子功能模块;试题查询模块包括按章节查询和按难度查询两个子功能模块;试题管理模块包括试卷设置、试卷生成、试卷输出三个子功能模块;答案管理模块包括答案生成、答案输出、试卷答案三个子功能模块;打印模块包括试卷打印和答案打印两个子功能模块。试题选取标准由难度计算、区分度计算和信度计算三个子功能模块。

3 系统的数据结构

3.1 试题类型

试题库中的试题是本系统的最基本信息,依章节按教学内容、测试形式、测试目的等不同要求,将试题分成不同类型(一般均将试题分成:基础知识、概念理解、简单应用、综合应用、发展应用五大类) 。试题的类型越多,组卷方案越多,试题库的适应性越强,适用面越广,但过多的试题和组卷方案,会使组卷工作变得烦琐和低效。

3.2 试题特征符号

本题库以章为基础,按类型进行编号,Ti,j代表试题分类库,Di,j代表试题分类库对应的答案库,其中:i表示课程的章节,j表示该题型类型。如以数学分析试题库自动组卷系统为例:

T0109:代表第1章发展型应用型中的计算类试题;D0109:代表对应试题答案;

T2101:代表第21章基础知识型中的填空类试题;D2101:代表对应试题答案。

题库中每道试题及与其对应答案以3位数字开始顺序编号,以“f”和“~”两字符结尾,以便系统组卷抽题时能正确识别每道试题和对立的答案。试题和答案以文本文件的方式顺序存放。

3.3 试题难度系数确定

一套试卷是否合理,主要由试题的难易程度结构来体现,故准确确定试题的难度是优化试卷的核心。本系统将各种题型的难度值分为五级,其难度系数分别为0.5 (容易的题) ,1.0(较容易的题),1.5 (中等难度的题),2.0 (较难的题),2.5 (难题)。这里的难度系数0.5~2.5 只是用以表示试题难易程度的标示符,位于每道题的末端。

4 随机自动化组卷的算法设计和赋分原则

4.1 试题库随机组卷系统的算法

试题库随机组卷系统主要采用的是多约束组题算法,所谓多约束组题算法就是在系统进行随机组题时所必须满足的一些条件,这些条件也就是所说的约束问题。一般情况下,在进行试题抽取时都要考虑试题的类型、试题的知识点、试题的难度以及试卷分数等约束条件。如果用向量坐标来表示的话,可以用Y(V,M,N)来表示试题的抽取。其中,V表示一个有限变量集,它对应于试题的每一个属性,其数学表示为:V(v1,v2,…,vn);M表示一个有限数字集,表示各种属性的取值范围,其数学表示为:M(m1,m2, …,ms);N表示一个有限规则集,表示各试题应满足的约束条件,其数学表示为:N(nl,n2,…,nt)。即:试题的抽取过程Y是在同时满足V,M,N的条件进行的一个约束满足过程。

对于V来讲试题属性一般是指知识点,试题类型以及难度等,这里如果所要抽取的试题有L个知识点,类型有X个,难度有P种。而所抽取的题目数量为Q,则Q(l,x,p)与试题分数S(l,x,P)之间满足如下规则:

规则M:设卷面总分为S;则卷面总分:S =∑ Q(l,x,p)S(l,x,p)

多约束组题的一般算法如下:

(l)进行试题约束条件判断,判断试题类型、知识点、难度以及分数等规则,使得满足条件的试题作为下一步抽取的总体。

(2)利用随机函数Rand()进行随机数的产生,使产生的随机数在试题抽取的题数范围内,并利用A[i]数组记下这个随机数。

(3)进行第2步操作,记下此时的随机数A[i+1]。

(4)判断A[i]是否等于A[i+1],若相等则说明试题抽取重复,放弃后重新进行随机数产生,并返回第2步。否则读取相关试题,抽取成功。

(5)重复第2到4步,直到试题抽取完毕。

在利用该方法进行数据库开发过程中主要存在以下几点问题:①所产生随机是否与上次已经产生的随机数重复。②如果重复如何解决。③如何利用这个随机访问数据库。鉴于以上问题,我们利用上面讲过的多约束求解算法对此进行设计,其中x为试题数,A[i]为一维数组。其算法2所示。

图2 优化算法流程图

在进行试题抽取中,首先应指定约束条件,该约束条件为试题类型、所在章节、试题难度等。然后利用srand()产生一个时间片种子,并通过rand()函数产生一个随机数,而这个随机数就是题库中试题的编号,这个随机数的产生是面向题库中整个试题而产生的。利用该随机号就可以访问数据库并提取相应的试题。SQL语句NewID()创建uniqueidentifier类型的唯一值,uniqueidentifier是随机产生的。NewID()语句使数据库中的数据信息随机排序,然后按一定的题数从数据库中读取试题。

4.2 试卷质量测评

应用难度级别分割递归算法和基于状态链表的随机抽题算法自动组成的试卷是否能真实地反映出教师的教学水平以及学生对知识技能的掌握程度,需要我们对试卷质量进行质量测评。测量试卷的主要检验指标是:难度、信度、区分度和覆盖度。我们用设待抽样的试卷题目数量为n,以M分制计,每题满分为Aj(j=1,2,3,...,n );抽查的容量为N,其样本值为Xi(i=1,2,3,...,N) 为抽查的试卷数;抽查的N份试卷各题的实际得分为Xij(i=1,2,3,...,N;j=1,2,3,...,n)。

则样本值为 hwl03.tif

4.4 区分度

题目的区分度也叫题目的鉴别力,它是衡量题目对不同水平被测试者的心理特质的区分程度的指标。区分度的取值范围于-1.00~+1.00 之间,值越大,区分的效果越佳。一般0.2~0.4 为佳。设Hj、Lj 分别表示高分组和低分组第j 题的平均分(高低分组各占样本量的25 %~30 %为佳)。

第j题的区分度为VP=(Hj-Lj)/Aj ,则试卷的总区分度为hwl07.tif

评测标准:0.4以上:优秀题目;0.3~0.39:良好题目;0.2~0.29:勉强合格;0.19 以下:差的题目。

4.5 可信度

指测量数据和结论的可靠性程度,它是表明考试质量的稳定性和可靠性的一个重要指标。信度一般规定是真分数的方差在总体方差S (n 个学生总分的方差) 中所占的比例。测量信度系数的方法较多,这里采用a系数法(该公式由克朗巴赫提出)。

6 总结

本文的创新点在于通过分析随机组卷系统重在对数据库中的试题进行随机数据的抽取,本文提出了多约束情况下的优化随机算法,利用通用开发语言和SQL语言中的随机函数进行了混合编程。这样,一方面利用了VC程序的灵活性,另一方面利用了SQL语言的访问快速性。通过系统的运行发现此算法优于以往的单纯以开发语言进行设计的随机算法;其次通过应用3 个评测指标评测,经过有关专业教师评判,认为算法设计科学,组卷合理,能真实地反映出教师的教学水平以及学生对知识技能的掌握程度。

参考文献

[1]刘建华,宋志光,徐金祥.基于单用户数据库的多用户系统的研究与实现[J].计算机工程与应用,2000.4.

[2]曾一,冉忠,郭永林.试题库中自动组卷的算法及试卷测评策略[J].计算机工程与设计,2006.8.

[3]张克.基于c/s结构的试题库随机组卷系统的研究[D].合肥工业大学,2006.12.

第4篇

Abstract: The article introduces the design and implementation of the teaching auxiliary platform. Designs the modules of the administrators, teachers and students in detail. Realizes the function such as the exam management, online examination. Tests the function, performance of the auxiliary teaching platform and it has been used by some class.

关键词: 数据结构;教学辅助平台;数据库;

Key words: data Structure;teaching auxiliary platform;database;

中图分类号:TP39 文献标识码:A 文章编号:1006-4311(2012)32-0226-02

0 引言

随着网络技术、软件技术的迅猛发展,尤其是高校教改需求的牵引,教学辅助平台已经成为高校改善教学质量、提高教学效果的一种重要途径。本文的研究目的在于以新型职业教育理念“做中学,做中教”为指导思想,以高职教育“任务驱动式”为课程开发模式,针对教学存在的问题进行分析,设计并开发适用于我系师生的教学辅助平台。

1 系统功能模块图

通过对教学辅助平台实现功能的分析,可将教学辅助平台划分为管理员模块、教师模块、学生模块。教学辅助平台层次结构划分如图1所示。

2 系统功能模块分析

2.1 管理员模块:管理员模块实现用户管理和论坛管理,图2为管理员模块用例图。

2.2 教师模块:图3为教师模块用例图,该模块设置了五项功能:试卷管理、题库管理、多媒体教学管理、作业信息管理以及系统留言论坛。教师可以创建课程编写相应的课程大纲、教学进度、编写教案等。

2.3 学生模块:学生模块设置了在线测试、提交作业、多媒体教学欣赏、学生留言论坛等模块。

3 系统各模块的实现介绍

3.1 管理员模块

3.1.1 用户登录管理子模块的主要功能是获取当前登录用户的身份和验证密码,并判断两者是否匹配,从而判断是否让用户进入系统。在教学辅助平台中,登录页面用来确定用户身份,可以是学生、教师或管理员。根据不同的权限,可以进入不同的界面,进行不同的操作。

3.1.2 用户管理模块可以实现三部分功能:按照用户ID和用户名,查找指定的用户;能够对所有用户实现增删改查,并且能够批量删除用户;能够让用户重新设置新密码。

①流程设计。以删除指定用户为例,我们要首先按照给定的查询条件,输入用户ID和用户名,然后查询,这样查询结果就以列表形式显示出来;在删除用户时,会弹出对话框询问是否要删除选中的用户;如果确定删除,则指定记录被删除,数据库将执行一次更新;而如果没有删除,可以继续查找或者结束本次查找。具体流程如图4所示。

②界面设计。中提供了许多数据绑定控件,它们以丰富的表现形式将数据显示在页面中,本平台中使用了GridView控件绑定到数据源为SqlDataSource控件,应用了数据绑定列BoundField、复选框数据绑定列CheckBoxField、命令数据绑定列CommandField等。利用GridView的智能标记中选择“启用分页”、“启用排序”、“启用编辑”、“启用删除”等,不需要编写任何代码的情况下实现对数据的排序、分页和编辑等操作。当绑定数据源后,就会显示用户管理界面。从而使管理员可以对已注册的用户,进行增删改查。不仅能够通过复选框选择一个或多个用户,还可以用“全选”复选框,实现批量删除。

③核心实现。用户信息管理模块通过对GridView绑定控件的操作实现对用户信息的增加、删除、修改、查找。在此以删除用户为例,说明实现过程。使用GridView1.DataKeys取出每一行数据的键值,创建一个新的user对象,根据主键,调用Users类的DeleteByProc方法,通过被选择行的用户ID删除所选中的用户所在的行。

//GridView控件RowDeleting事件

string userID = GridView1.DataKeys[e.RowIndex].Values[0].ToString(); //取出要删除记录的主键值

Users user = new Users();//创建Users类对象user

if (user.DeleteByProc(userID))//根据主键使用DeleteByProc方法删除用户

{

Response.Write("alert('删除成功!')");

}

else

{

Response.Write("alert('删除失败!')");

}

GridView1.EditIndex = -1;

GridViewBind();//重新绑定数据

④动态模型设计。用户管理子模块的时序图,反映了管理员对用户的管理过程。用户登录管理员界面后,可以增加用户信息、删除用户信息、修改用户信息、查询用户信息。每一次操作结束,都会返回到用户管理界面。

3.2 教师模块的设计与实现

①试卷管理子模块:组卷是试卷管理的核心,一套好的试卷,对师生都有重要的意义。在此重点分析试卷管理模块组卷的设计与实现。我们需要我们了解相关的算法、试卷难度的确定有所了解。

②题库管理子模块:题库管理模块是系统根据不同的考试题目进行维护管理。主要包括以下的功能:单选题管理、多选题管理、判断题管理、填空题管理。可以实现题目的增加、删除、更改。以判断题为例,其流程为:进入判断题维护界面,编辑题目,选择答案和难度后,保存到试题库中。

③作业管理子模块:教师可以布置、批改作业。教师登录后可以布置作业,也可以添加答案,还可以上传资料、文件。作业布置完成后,在一定的期限内,或者存储能力有限时,可以删除过时的作业。

④多媒体管理子模块:多媒体管理模块,主要实现为学生播放教学视频等视频资料。比如数据结构课程中难以理解的算法,可以用视频资料进行演示,或者播放教师的教学录像,便于学生复习。

3.3 学生模块的设计与实现

①在线考试子模块:学生在线考试模块可以由教师出题,也可以进行自我测试。学生可以选择科目进行在线考试,立即查询成绩,则退出考试;如已到考试时间,可以自动交卷,或者选择继续答题,提交试卷;所有的客观题由系统评阅,并且返回成绩和标准答案,学生可以参照考试结果和答案进行进一步学习。

②提交作业子模块:学生完成作业后,就进入了提交作业模块。当超过了交作业的截止时间学生就不能打开作业;有新的作业可以提交,而且一旦提交就不能修改。

4 测试与评价

通过搭建教学辅助平台的测试环境,从功能和性能对平台进行了测试,效果良好,各项测试指标均合格,运行稳定,可扩展性强。并选取试点班进行教学效果测试,测试结果显示该平台确实帮助学生提高了学习效果。

5 结束语

本文介绍了基于.NET的教学辅助平台的设计与实现,并以用户管理子模块为例,从设计流程,设计界面及核心的实现方法3方面进行了详细设计的介绍。日后将进一步扩展系统的功能,使系统更加智能化,多元化,更好地促进教学相长。

参考文献:

[1]李俊平程序设计与Web应用项目开发[M].清华大学出版社,2010.1第1版

第5篇

随着计算机硬件和网络技术的飞速发展,高校校园网络得到大力普及,信息化管理系统所拥有的低成本、高效率、反馈周期短、占用资源少等优点得到了充分的体现,因此,基于互联网的信息管理系统越来越受到人们的重视。近几年,国内各大高等院校通过网络教育方式积极共享教学优质资源,从而提高了自身相应学科的教学水平,同时也促进了高校网络教育的发展。该文设计开发的在线考试系统就是在这种需求情况下产生的,它是为南京航空航天大学申请《自动控制原理》国家级精品资源共享课程提供服务的。

网络课程教育不仅对教育思想、教育方法和手段有促进作用,也同时为在线考试系统提供相应的展示平台。在线考试是网络精品课程的重要组成部分,也是它的关键部分。网络考试缩短了距离的限制,学生可以远程接受相应的学习和考核,以此了解学生的学习情况,学习课程的进度,有助于提高学生的学习效率,有利于改进教学质量;而学生可以有针对性地学习自己的薄弱环节,并能及时和在线同学交流;计算机方便、快速地判卷使得老师工作压力减小,有利于提高教师教学的工作效率。

2 模块设计

该系统由考生管理模块和管理员管理模块组成,分成两个界面:一个界面用于考生登录(即前台),主要负责考生信息注册、考生登录、在线考试、成绩查询;另外一个界面用于管理员登录(即后台),主要负责考生信息管理、管理员信息管理、选择题管理、判断题管理、计算题管理。其功能模块图如图1所示。

首先,从考生角度考虑,因为该自动控制原理考试系统主要是面向南京航空航天大学修读该课程学生的,所以考生进入系统需要进行身份匹配。考生进入在线考试系统后,应该能根据自己的需要选择相对应的题型(本系统有选择、判断、计算题),所以该系统还应具有考试题型的选择功能。在线考试和普通的单机考试有区别,它基于网络环境,从服务器上的数据库抽取考试题目自动生成试卷。另外,为了确保检测效果,考生应该控制考试时间,系统有在线实时时间的显示。考生提交答案后,应该由计算机自动评判并给出该次考试的得分情况,以让考生知道自己现阶段知识的掌握情况,为后面的学习计划提供参考意见。考生也可以查询自己的考试成绩。考试结束后,考生可以安全退出登录界面或继续考试。

其次,从管理员角度考虑,管理员拥有整个系统的管理权限,负责试卷管理、考生信息管理、管理员信息管理。管理员进入系统后,可以对自己的信息进行变更,如修改密码;也可以新建管理员账号,供其他人使用管理员权限;也可以删除管理员,回收该管理员权限。考生注册了账号,可以参加本次自动控制原理考试,若管理员觉得该考生还不应该参加此次考试,可以删除该生账号。选择题,管理员可以根据教学进度和学生的学习情况,添加(文本、图片两种方式)、修改、删除题库中的选择题,以适应学生的水平。判断题,管理员可以添加(文本、图片两种方式)、修改、删除题库中的判断题。计算题,管理员可以以图片形式添加和删除题库中的计算题。

系统主要模块的基本功能如下所示:

1) 考试试题管理

① 题库题目信息查看:包括浏览选择、判断、计算题型的考试试题

② 编辑判断试题:可以添加(以文本或图片形式)、修改、删除题库中的判断题目

③ 编辑选择试题:可以添加(以文本或图片形式)、删除、修改题库中的选择题目

④ 编辑计算试题:可以添加(以文本或图片形式)、删除、修改题库中的计算题目

⑤ 试卷编辑:系统自动抽题组卷

⑥ 试卷评改:系统自己评改客观题,并得出相应的分数

2) 考生数据管理

① 添加考生数据:注册考生信息,并在线管理

② 更改考生信息:修改考生密码

③ 考生信息浏览:在此处列出所有考生信息,供管理员查看

④ 删除考生数据:删除考生信息,以便于管理员管理

⑤ 考生答题状态:在考试完成后,在线给出考生答题的各种情况,包括答对试题和答错试题等

3 数据库设计

针对自动控制原理在线考试系统的需求,设计如下的数据项和数据结构:

管理员(ID,姓名,密码);

注册考生(ID,用户名,学号,密码,性别,密保问题,答案,选择题得分,判断题得分);

考试题(ID,判断题数,判断题每题分数,选择题题数,选择题每题分数,计算题数,计算题每题分数);

选择题(ID,题目,选项A,选项B,选项C,选项D,答案,图片);

判断题(ID,题目,答案,图片);

计算题(ID,题目,答案,图片)。

根据以上的分析得出系统的概念模型E-R图,如图2所示。

4 详细设计

该系统可分为前台和后台两大部分。后台由管理员操作,主要为管理部分,前台为考试输出部分。后台的主要任务是系统数据库的日常维护,管理员能够在后台直接对题库中的题目进行增加、删除、修改等操作用来维护数据库中的信息。考生能够在前台进行在线自控考试,测试自己的学习水平。下面分别介绍自控考试系统的前后台操作流程。

1) 前台程序流程设计

如图3所示,该系统的考生在线考试操作流程图,考生输入用户名和密码登录,由系统检测其是否已经登录过或是否已提交,若是,则重新返回登录界面,因不合法考生和已经在线的考生都不能再登陆参加考试;若否,就进入自控在线考试界面参加考试。考试结束,考生提交答案,系统自动评卷,并得出分数,显示详细答题情况。

2) 后台程序流程设计

当系统管理员在管理员界面正确输入用户名以及密码后,按下登陆,系统自动转跳,把管理员引到本次考试管理系统的后台处理页面。“试题管理”模块包括试题添加、修改与删除,我们可以按照网页提示增加试题,设置试题所在的题型。“考生管理”模块包含的操作有删除考生信息。“管理员管理”模块包含的操作有增加管理员,用来额外分配管理员权限,当然也可以修改管理员信息、删除管理员信息。后台管理员操作流程如图4所示。

5 系统实现

该自 动控制原理在线考试系统核心模块有:数据库连接模块、考生注册界面、身份认证界面、考生/管理员登录界面、考生密码找回界面、考生答题界面、题目(选择、判断、计算题)处理界面、管理员信息变更界面、学生信息变更、选择题变更、判断题变更、计算题变更界面。以下主要说明考生答题界面和选择题变更的详细实现代码。

1) 考生身份认证模块

6 结束语

该系统满足为南京航空航天大学《自动控制原理》申请国家级精品资源共享课程服务的需求,实现了预期的设计目标。用户可以不受时间、地点限制自主进行学习、在线测试;管理员能够及时方便地编辑自控试题库、管理考生信息。为学校的信息化、数字化教学打下坚实的基础。

然而,系统还有一些不足之处,比如:登陆界面不是非常美观;系统的功能相对比较单一;软件内部的数据信息完整性不是很好,还有信息查询条件不是十分完善等。因此,对于该系统还需要后续人员继续研究探讨并进行再开发,以满足用户提出的越来越多的需求。

参考文献:

[1] 韦群锋.基于ASP网上考试系统的设计与实现[J].宁波工程学院学报,2005,17(2):106-108.

[2] 王丽侠,王新,衣治安.基于ASP技术的网上考试系统的设计与实现[J].大庆石油学院学报,2001,25(4):54-57.

第6篇

数据结构导论试题

课程代码:02142

请考生按规定用笔将所有试题的答案涂、写在答题纸上。

选择题部分

注意事项:

1.答题前,考生务必将自己的考试课程名称、姓名、准考证号用黑色字迹的签字笔或钢笔填写在答题纸规定的位置上。

2.每小题选出答案后,用2B铅笔把答题纸上对应题目的答案标号涂黑。如需改动,用橡皮擦干净后,再选涂其他答案标号。不能答在试题卷上。

一、单项选择题(本大题共15小题,每小题2分,共30分)

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其选出并将“答题纸”的相应代码涂黑。错涂、多涂或未涂均无分。

1.下列几种算法时间复杂度中,最小的是

A.O(log2n) B.O(n)

C.O(n2) D.O(1)

2.数据的存储方式中除了顺序存储方式和链式存储方式之外,还有

A.索引存储方式和树形存储方式 B.线性存储方式和散列存储方式

C.线性存储方式和索引存储方式 D.索引存储方式和散列存储方式

3.表长为n的顺序表中做删除运算的平均时间复杂度为

A.O(1) B.O(log2n)

C.O(n) D.O(n2)

4.顺序表中定位算法(查找值为x的结点序号最小值)的平均时间复杂度为

A.O(1) B.O(log2n)

C.O(n) D.O(n2)

5.元素的进栈次序为A,B,C,D,E,出栈的第一个元素为E,则第四个出栈的元素为

A.D B.C

C.B D.A

6.带头结点的链队列中,队列头和队列尾指针分别为front和rear,则判断队列空的条件为

A.front==rear B.front!=NULL

C.rear!==NULL D.front==NULL

7.深度为5的二叉树,结点个数最多为

A.31个 B.32个

C.63个 D.64个

8.如果结点A有2个兄弟结点,结点B为A的双亲,则B的度为

A.1 B.3

C.4 D.5

9.将题9图所示的一棵树转换为二叉树,结点C是

A.A的左孩子

B.A的右孩子

C.B的右孩子

D.E的右孩子

10.n为图的顶点个数,e为图中弧的数目,则图的拓扑排序算法的时间复杂度为

A.O(n) B.O(e)

C.O(n-e) D.O(n+e)

11.无向图的邻接矩阵是

A.对角矩阵 B.稀疏矩阵

C.上三角矩阵 D.对称矩阵

12.在具有101个元素的顺序表中查找值为x的元素结点时,平均比较元素的次数为

A.50 B.51

C.100 D.101

13.构造散列函数的方法很多,常用的构造方法有

A.数字分析法、除留余数法、平方取中法

B.线性探测法、二次探测法、除留余数法

C.线性探测法、除留余数法、链地址法

D.线性探测法、二次探测法、链地址法

14.就平均时间性能而言,快速排序方法,其时间复杂度为

A.O(n) B.O(nlog2n)

C.O(n2) D.O(1og2n)

15.下述算法中,不稳定的排序算法是

A.直接插入排序 B.冒泡排序

C.堆排序 D.归并排序

非选择题部分

注意事项:

用黑色字迹的签字笔或钢笔将答案写在答题纸上,不能答在试题卷上。

二、填空题(本大题共13小题,每小题2分,共26分)

16.数据的基本单位是_________。

17.双向循环链表中,在p所指结点的后面插入一个新结点*t,需要修改四个指针,分别为

t->prior=P;t->next=p->next;_________;p->next=t;。

18.在带有头结点的循环链表中,尾指针为rear,判断指针P所指结点为首结点的条件是_________。

19.若线性表中最常用的操作是求表长和读表元素,则顺序表和链表这两种存储方式中,较节省时间的是_________。

20.不含任何数据元素的栈称为_________。

21.稀疏矩阵一般采用的压缩存储方法是_________。

22.100个结点的二叉树采用二叉链表存储时,用来指向左、右孩子结点的指针域有_________个。

23.已知完全二叉树的第5层有5个结点,则整个完全二叉树有_________个结点。

24.n个顶点的有向图G用邻接矩阵A[1..n,1..n]存储,其第i列的所有元素之和等于顶点

Vi的_________。

25.具有10个顶点的有向完全图的弧数为_________。

26.要完全避免散列所产生的“堆积’’现象,通常采用_________解决冲突。

27.在长度为n的带有岗哨的顺序表中进行顺序查找,查找不成功时,与关键字的比较次数为_________。

28.归并排序算法的时间复杂度是_________。

三、应用题(本大题共5小题,每小题6分,共30分)

29.稀疏矩阵A如题29图所示,写出该稀疏矩阵A的三元组表示法。

30.设二叉树的中序遍历序列为BDCEAFHG,后序遍历序列为DECBHGFA,试画出该二叉树。

31.写出题31图所示无向图的邻接矩阵,并写出每个顶点的度。

题31图

32.已知散列表的地址空间为0至13,散列函数H(k)=kmod11,(mod为求余运算),待散列序列为(26,61,38,84,49),用二次探测法解决冲突,构造该序列的散列表,要求写出处理冲突的过程。

33.将一组键值(80,50,65,13,86,35,96,57,39,79,59,15)应用二路归并排序算法从小到大排序,试写出各趟的结果。

四、算法设计题(本大题共2小题,每小题7分,共14分)

34.设单链表及链栈S的结构定义如下:

typedef struct node

{ Data Type data;

struct node*next;

}linkstack;

编写一个算法void ReverseList(1inkstack *head),借助于栈S将带头结点单链表head中序号为奇数的结点逆置,序号为偶数的结点保持不变。(例如:单链表的逻辑结构为(a1,a2,a3,a4,a5,a6),逆置后变为(a5,a2,a3,a4,a1,a6))。

第7篇

关键词:C+数据结构;客观题;课堂测试;教学改革

中图分类号:TP311.52 文献标识码:B 文章编号:1673-8454(2012)07-0054-03

一、引言

计算机应用于学生考试过程早已不再新奇,如高考阅卷系统、大学一年级新生的期末计算机文化基础的省级统考等,但由于这些考试系统大多存在软件版权问题,教师是无法拿来运用在日常教学过程中的,即使有些软件允许使用,也会因为软件设计的复杂性,安装、设置、使用起来往往较为繁琐,大多作为考试用,不适用于课堂短时间的随机测试。要掌握学生的学习情况,教师还得采用传统的布置书面作业、课堂提问方式,虽然这些方式有其值得肯定的地方,但也不可否认,书面作业布置多了学生会有情绪,存在相互抄袭现象,教师批改耗费大量精力,课堂提问受课时等限制又存在很大局限性,因而能否随时掌握学生的学习情况成为教师心头的一大忧虑,能否设计一套计算机软件来解决这些问题,已成为教师在教学过程中的迫切需求,也是当前现代教育理念下实施教学改革的现代教育手段之一。

二、软件简介

1.软件特点

大道至简,一套好的计算机软件不在于它用什么语言来编写,使用了哪些复杂的技术和数学模型,功能菜单项是否很多等。恰恰相反,在能满足用户需求的情况下,软件越小越好,功能越少越好,用起来越简单越好。本软件短小精悍,由一个运行程序(120k Byte)和二个文本文档(试卷.txt、学生名单.txt)组成,采用C语言文件操作与字符串处理技术实现试卷生成和自动批卷阅卷,没有使用任何数据库,因而软件无需安装设置,随拷随用,对题库的更新只要编辑或拷入新的文件即可,是一款“傻瓜”型的绿色实用小软件。

2.运行流程和功能

运行菜单如图1所示。

用户按菜单序号顺序执行即完成整个测试过程。菜单中”随机抽题”可输入抽题数目,自动生成每位学生的随机抽题序列。执行“生成试卷”按学生抽取的题号生成以学号和姓名作为文件名的电子试卷,将试卷发给学生,学生作答后提交到提交目录,执行“批阅试卷”在答卷题号前打√、≠、× (≠用于多选题2分值得1分),对答错题在×后标注正确答案(见图中16题号前A)并在成绩栏填上卷面成绩,批阅电子试卷可发给学生查阅得失分情况,其格式如图2所示。

菜单中“学生成绩”显示学生得分列表,可选择按成绩排序输出,同时汇总显示班级平均分。“题目得分”记录每题抽中人数和合计回答正确率。“得失分题”可选择组得分题卷或组失分题卷,首先选择组哪类试卷,然后自行输入题目抽中人数m和回答正确率n,满足抽中人数≥m并且正确率≥n的题目存入文件;满足抽中人数≥m并且正确率≤n的题目存入文件。再选择是否附上标准答案及学生答题信息,图3是对11计应B班测试后选“失分题卷”,设人数为10,正确率30%,附标准答案和学生答题信息的失分题试卷内容。从图中第7题看,由于大多数学生不理解电脑的启动过程,所以12人选A,而正确答案是C。

“成绩汇总”将每次测试的成绩导入到成绩汇总表中,测试多少次就在表中增加多少列,统计平均分并可选择是否按平均分排序输出。成绩汇总表如图4所示。

3.使用要求

使用前将、二个文件复制到软件驻留目录即可运行。内容为班级学生名单,由学号、姓名、性别三列组成,列之间用TAB键分隔。文件内容为填上答案的题库内容,其编辑格式遵循以下三点规则即可:

(1)每题题目前至少要留一行空行。

(2)每题题号后紧跟圆点或空格,题号不连续可由电脑自动编号。

(3)在每题的圆括号内(不限制在第几个圆括号内)用ABCDTF填上答案,大小写均可,TF用于判断题,对多选题顺序任意,例如( Dab )等。

以上规则示例可参见图2。基本无限制条件,符合人为编写习惯。

如果要使每位学生的试卷相同,执行“随机抽题”时选抽题数等于题库总数,试题全部抽出。抽题数小于题库总数将随机抽题。如果认为某些题较为重要,希望抽取的概率高一些,可以运行另一小程序生成文件,该文件只有2列,第1列是题号,第2列是对应题号的抽取概率值(默认为1),修改该值为N,则抽取概率提高为N倍,题目等概率抽取时无需文件。

三、软件模块及程序实现

软件主要由随机抽题、生成试卷、批阅试卷、数据处理四大功能模块组成。 生成试卷的功能是依据学生的抽题序列从(该文件自动生成)中提取相应题目组卷,文件名用学生的学号和姓名命名,并在试卷中填入学号和姓名。批阅试卷在答卷题目题号前打对错标记,评分并统计记录成绩,同时统计每题的抽中人数,计算学生得分之和,算出题目回答正确率,为组失分题卷和得分题卷提供数据源。数据处理主要为输出学生成绩,题目得分,得失分卷,汇总成绩等结果提供服务,采用文件保存菜单各项执行前后的输入输出结果。受篇幅限制,以下仅介绍随机抽题模块的实现算法和执行过程。

抽题程序实现算法:调用C语言中的随机数函数rand()产生随机数,采用time()函数做rand()种子,由于time()函数每次调用时间不同,因而rand()函数产生的随机数是真随机数。创建顺序表L存放随机抽题序列,为防止同一份试卷题目重复,随机数(题号)加入顺序表前查找该数在顺序表中是否已存在,不存在加入顺序表L末尾,否则重新生成新的随机数,再判断是否要加入顺序表,循环此过程直至加入元素个数等于用户输入抽题数N后终止,最后将表L中的题号元素按升序排序后输出到屏幕和文件保存。

程序代码如下:

srand((int)time(0)); //随机种子

printf("按任一键抽题,按Q键退出,结果保存在文件中\n");

for(i=1;!(ch=='q'||ch=='Q')&&i

{

ch=getch(); //等待,按一键抽一套题

L.length=1;

for(j=1;j

L.data[j]=0; //表L元素清0

for (j=1;j

{ x=1+rand()*lineCount/32767; //抽取随机题号x,lineCount题库总数

if (SeqSearch(L,x)==0) //题号x未被抽取则加入, 否则跳过,生成新的随机题号x

{ InsertList(&L,x,L.length); //将题号x加入表尾

j++;

}

}

L.length=N;

Insersort(&L); //按题号大小升序排列

ShowList(&L); //显示一名学生的抽题序列

}

printf("抽题完毕,按任一键返回!");

程序中SeqSearch(L,x)函数的功能是在表L中查找元素x,找到返回1,否则返回0 ; InsertList(&L,x,L.length)函数将x追加到表L中; Insersort(&L)函数采用插入排序算法对表L元素做升序排序; ShowList(&L)函数在屏幕上显示表L中的元素。这些函数是数据结构中的常见函数,不再赘述。

四、结束语

本软件经多班级、多次实际课堂测试运行流畅,数据正确无误。与其他常见的计算机考试软件相比,本软件具有以下优点:(1)无需安装设置,题库编辑更新方便;(2)不仅给出考分,还能返回批阅试卷,让考生了解每题得失分情况,并可根据学生的回答选项,在批阅试卷中附上教师给出的相应错误解答信息;(3)失分题试卷自动抽取统计出学生错在哪些题目和哪些选项上,便于对症讲解;(4)对每次测试成绩进行汇总,全班平均成绩,个人平均成绩,好生差生尽在掌握中。软件缺点是不支持除单选题、多选题、判断题外的其他题型。

另外,本软件还具有操作简单,通用性强等特点,适合于各类学校、各类课程和专业的客观题测试或考试,不但能减轻教师的日常教学工作量,也可提供给学生自测学习。软件虽小,但能让学生体会到软件的神奇和知识的价值,对培养学生的学习兴趣,推动教学工作向工学结合、学以致用的方向发展具有积极引导作用。

参考文献:

第8篇

[关键词]同伴教学法;软件工程导论;课程教学

1991年,哈佛大学的埃里克马祖尔教授创建了同伴教学法,其最早应用于物理学教学中。同伴教学法是一种基于合作学习理论和动机学习理论设计的教学方法。它是以教师在课前要求学生进行知识预习,课上提出测试题,要求每名学生独立答题,学生可以向教师提出1~2个问题,并形成自己的答案;然后由教师将学生进行分组、讨论,每名学生都要在本组内阐述自己的答案,答案有差异时,成员之间可以用自己的观点和理论说服对方,决定自己答案是否更改;教师统计学生上交的试题答案及正确率,根据准确率及时调整教学策略;学生根据教师讲解的知识点和关键点对照自己的答案,并将知识进行有效迁移的教学过程。同伴教学法是在心理发展水平相当的同伴关系之间,通过同学之间进行阐述观点、互相学习、讨论、分享经验,传授技能并获得同步提高。同伴教学法适用于原理、概念、过程、方法等比较难于理解、难于记忆、容易混淆的理论课程,这是一种讲授自然科学课程简单、有效、实用的教学方法。在软件工程导论课程中进行同伴教学法进行教学,符合课程特点和教学发展规律。

1软件工程导论课程教学现状

软件工程学归属于自然科学中计算机科学与技术学科,是为了摆脱软件开发成本和进度估计不准、系统满意度不够、产品质量不可靠、软件维护性差、软件开发生产率跟不上计算机发展速度等“软件危机”的困扰,专门研究软件开发与维护的普遍原理、技术的一门工程科学。软件工程学已成为计算机科学的一个重要分支,研究范围广泛,其包括技术方法、工具、管理等多个方面。软件工程导论课程是计算机专业开设的一门必修课,是软件工程学的概要介绍,主要讲述软件工程的原理、概念、技术和方法,介绍各个实施阶段的任务、过程、方法和工具。

1.1课程内容繁多

软件工程导论课程讲述的概念、原理、模型、系统内容繁多,讲述的知识面广、软件的发展速度快,课程的真实性和综合性强,理论性的知识众多,教师准备课程和讲解知识虽然耗费了大量的时间和精力,但学生对知识点不易理解,不能完全掌握知识内容。

1.2教学方法陈旧

软件工程导论课程采用传统的教学方式,即“满堂灌”,教师在讲台上用无数丰富的语言去描述概念、原理、过程,学生只能被动的接受、机械的记忆,师生之间没有互动,学生想在一节课上把教师所讲的复杂的理论、概念完全记住,非常困难。经过实践证明,这种传统的教学方法,已不能满足学生的学习需求,影响了其学习效果。所以,必须要找到一种适合软件工程导论课程的教学方法,同伴教学法是若干教学法中的最佳选择。

2同伴教学法的应用实例

以“总体设计的过程”这一节课程为例。

2.1课前准备

在本节课前一周,教师布置阅读任务,要求学生阅读“总体设计的过程”的内容,在课堂上提出并要求学生回答类似下列的问题。(1)详述总体设计的过程,需求分析阶段的数据流程图在总体设计中起到了什么作用?(2)在选取方案过程中,分析员一般要备份什么资料,这些资料有什么作用?(3)数据库设计的步骤是什么,每一步的功能是什么?(4)在书写文档时,都需要哪些文档?为什么要书写这些文档?这些文档对软件的开发起到什么作用?这些问题必须是经过教师精心设计的,不能让学生通过阅读资料就可以找到答案,需要学生通过阅读教材、查找资料,对资料进行独立思考、深入分析,形成自己观点的问题。教师要综合知识点,对问题做好答案,以备讲解。

2.2问题提出

课堂上,教师先创设模拟情景,如:一个公司现在需要编写一个财务软件,最先要明确的就是总体的设计过程,那么这个设计过程应该是什么样的呢?此时抛出的设计问题,请同学们进行讨论,给出答案。学生阅读教师给出的思考题,根据阅读过的教材和资料,给出初步答案。此时,每名学生也可以向教师提出1-2个问题,教师进行回答。

2.3小组讨论

教师将学生分成若干个学习小组,每组有4-5名成员,可设置1名组长,也可不设置。在小组中,每名学生按次序将自己的答案提出,并说明形成答案的根据、理由和设计。小组内根据不同意见再进行分组,每名同学试图用自己的理论说服对方,此时,教师可以在各组内进行巡视或旁听,并给出一些建议,学生根据讨论和交换的意见,再次形成新的答案。

2.4统计答案

学生将答案提交给教师,教师根据学生方案中存在的问题,进行统计,并给出每道试题的正确率,查看知识点掌握情况,总结学生答案的优缺点,分析学生错误答案产生的原因,准备相关知识以备讲解。

2.5讲解答案

教师讲解答案如下。(1)总体设计的过程包括设想供选择的方案、分拣选取合理方案、推选最优方案、进行功能分解、设计软件结构、数据库设计、设置测试计划、书写软件相关文档及审查和复审等9个步骤,需求分析阶段的数据流程图在总体设计中是总设计的开始,数据流程图中的自动化边界是实现策略的方案。(2)在选取方案过程中,分析员一般要备份系统流程图、组成系统的物流元素清单、成本或效益分析、实现这个系统进度的计划四份资料,这些资料是实施方案的基础,是项目是否可行的依据。(3)数据库设计的步骤是模式设计、子模式设计、完整性和安全性设计、优化。模式设计是确定数据库的物理结构,子模式设计是具体的数据规划试图,完整性和安全性设计是保证数据库整体安全稳定运行的检查方案,优化是改进模式和子模式数据的方案。(4)在书写文档时,需要系统说明、用户手册、测试计划、详细的实现计划、数据库设计的结果等文档。这些文档是进行软件开发的根据和基础,也是以后开发同类产品的宝贵资料。教师讲解后,归纳总结学生方案的优缺点,对错误的成因进行分析,提炼出本节课程的重点和难点内容。同学们根据自己的答案对照教师的答案,分析自己答案的利弊,巩固知识,再进行讨论,最终领会本节课的知识和技能,提升自己的知识和能力,进而对知识做到最好的迁移。

3结语

在软件工程导论课程中使用同伴教学法进行教学,使学生明确了学习目标,掌握了重点和难点,激发了学习兴趣,提高了解决问题的能力,培养了合作精神、沟通能力、竞争意识、互助精神等综合素质。改变了原有的教学模式,让同学之间成为互相的传授者,不但可以共同探讨问题,还能共同增长知识和技能,达到了共同进步的目的。同伴教学法在自然科学门类的理论课程教学中具有显著的作用和十分重要的现实意义,是同类课程的有益借鉴。

主要参考文献

[1]吴蓓.PI教学法在“JavaWeb开发”课程中的应用研究[J].西部素质教育,2016(15).

第9篇

关键词:试题库;经典测量理论;题库结构;难度系数

作者简介:骆健(1976-),女,江西赣州人,南京邮电大学计算机学院,讲师。(江苏 南京 210003)

基金项目:本文系南京邮电大学教学改革研究资助项目(项目编号:JG00411JX31)的研究成果。

中图分类号: G642.474     文献标识码:A     文章编号:1007-0079(2012)04-0029-02

随着现代科学技术的进步,信息化发展席卷全球,遍布各个行业领域,已经成为现代社会发展的主要推动力。考试信息化作为教育信息化改革的重要组成部分之一,它包括:试题库建设、自动组题、自动阅卷等多方面内容。其中,试题库建设则是保障考试信息化顺利进行的重要基础,如果没有合理的试题库,自动组题和自动阅卷将无从谈起。因此,如何对试题库进行有效建设是考试信息化研究的重点问题之一。

一、传统考试模式中存在的弊端

目前,考试仍然是高等教育教学过程中的一个重要环节,是评价学生知识水平,检查教学目标实施效果的最有效手段。然而,在传统考试模式中,存在如下常见的问题:

(1)命题随意性大。教考合一制度下,由任课教师命题,教什么考什么,带有较大的主观性,容易造成命题偏离教学大纲,知识点覆盖不当等情况。

(2)命题的难度和分量不一致,难以科学地把握试题的难易程度,经常出现试题偏难或偏易的情况。

(3)手工出题费时费力,跟不上现代科技快速发展的步伐。

(4)学生依赖任课教师的考前指导,希望教师缩小考试范围、提示考试重点,使考试成绩失去了应有的客观性、严肃性,滋长了学生懒惰、侥幸、投机等不良习性。

二、试题库系统建设的必要性

随着计算机技术的不断发展与普及,使得利用计算机对传统的考试过程进行改革成为可能。建立计算机管理的试题库系统对学科建设、教学规范化具有如下重要意义:

1.有利于考教分离的真正实施

使用试题库系统进行命题时,试题是由题库自动抽取自动生成,即使是非任课教师也能够在授权下使用系统进行命题,可使任课教师与命题工作完全分离开来,实现真正意义上的考教分离。

2.有利于命题质量的控制

为了保证试题的合理性和科学性,在试题库系统中,入库的每一试题,除了试题本身的内容外,还要包括知识点、难度、效度、区分度、使用情况等多种定性、定量的属性。在使用试题库进行命题时,可对试题的属性进行量化控制,使试题的深度、难易度、区分度、知识点分布适中,保证试卷质量。

3.有利于客观评价教学水平和教育质量

使用试题库系统生成的试题,基于教学大纲,知识点覆盖适当,可以比较客观公正地反映教与学的水平,是检验教师教学水平和教学质量的重要依据。教师通过横向比较并结合试卷分析、成绩分析,改进教学方法,促进教学水平不断提高。

4.有利于良好学风的树立

使用试题库系统进行命题时,学生无法再依赖教师考前指导,因此学生在心理上会产生较大的压力,从而调动起学生学习的自觉性和主动性,大大降低了考试中的各种舞弊行为,有利于树立良好的学风。

三、试题库建设的理论基础

所谓题库是由许多适用于不同目的、技能和任务考核需求,且由大量优质题目组成的某个学科试题集合。传统的题库往往只是收集大量试题以备选择使用,对试题本身并无太多要求,试卷质量无法得到有效控制。因此,为了保证试卷质量,题库系统中试题属性的计算与评估要以合理的理论基础作为指导。

目前对题库进行评测的教育测量理论有:经典测量理论和项目反应理论。其中,经典测量理论理论体系成熟,理论假设较弱,对实施条件要求低,适用性广,以其为基础的测验在各行各业得到了成功的应用。

经典测量理论对题库系统的评测主要分成两方面:项目分析和整体分析。项目分析是针对试题进行分析,利用试卷的测验结果对每道试题属性(如:难度、区分度等)进行统计与分析;整体分析是对整个试卷进行分析和评价,为了考查试卷质量,利用试卷的测验结果对整个试卷从难度、区分度、信度和效度方面进行分析,构成了整个试卷的信度和效度。

四、试题库的结构设计

经典测量理论有一套完整的题目分析指标体系和评价标准,根据经典测量理论建的题库,要求入库的每一试题,除了试题本身的内容外,还要包括题目的编号、知识点、难度、效度、区分度、使用情况等多种定性、定量的属性。这样既可以利用这些参数对试题进行分类管理,同时也能有效地约束入库的试题质量。

按照属性对试题质量约束力的不同,可将题库中试题的属性分为两类:性能属性和内容属性。试题的内容属性主要是指试题的内容及答案等信息,这些信息不作为组卷算法中的约束参数。性能属性则是要作为组卷算法中的约束参数参与到组卷过程中,这里主要对影响组卷算法的性能属性进行讨论研究。通过对不同考核需求、组卷算法及成卷速度要求的分析,给出了以下几个对试卷质量起关键作用的主要性能属性:题型、难度、知识点和出题频度。

1.题型

题型是指试题类型。可分为填空题、选择题、程序阅读题、编程题等。可根据每次组卷的需要动态增加新的题型。

2.难度

难度是衡量试题难易程度的指标。在使用计算机进行自动组卷过程中,试题难度分布设计得是否合理至关重要,若一份试卷使学生成绩普遍都很高,或是普遍都很低,都是失败的。因此,必须合理地设计试卷中试题的难度分布,使其达到或是基本达到组卷的预期要求。

在经典教育测量理论中,对于每道试题的难度系数是使用通过率来表示。例如:

(1)对于客观性试题,其计算公式为:

其中,Di是第i题的难度系数;Ci表示答对第i题的人数;Zi表示参加第i题考试的总人数。

(2)对于主观性试题,其计算公式为:

其中,Di是第i题的难度系数;Pi表示第i题的平均得分;Mi表示第i题的总分。

由此可看出,0≤Di≤1,而且Di越小,试题越难,Di越大,试题越简单。难度可采用五级分档,即Di={难,较难,中等,较容易,容易},并将此五级分档通过五个连续的难度系数段来表示,依次为[0,0.20]、[0.20,0.40]、[0.40,0.60]、[0.60,0.80]、[0.80,1]。

3.知识点

可用十进制的整型类型字段表示章节,例如:用6位十进制数表示时,可以用前2位表示章,中间2位表示小节,最后2位表示每小节中存在的不同知识点。在自动组卷时,可以根据这一参数精确地对知识点进行选取,可避免同一知识点在同一试卷中多次出现的现象,以保证知识点在试卷中尽量分布均衡。

4.出题频度

用于统计试题库中,某试题在实际试卷中出现过的次数。通过该参数可以控制题目在试卷中出现的概率。每次组卷前,将所有试题的频度字段累加并求平均。抽题时,按频度由小到大的顺序,优先选取频度小于等于平均数的试题。

五、试题库的安全性

为保证命题的公正性,试题库的安全性主要包括:

1.用户权限管理

采用基于角色的访问权限控制方式,为各类用户分配不同的权限。用户权限的设置用来防止非法人员访问系统和部分合法用户越权使用某些功能(如某类用户只允许进行查询功能,不允许有试题修改功能等),并且用户对试题库系统的操作事件要有日志记录。

2.数据库的加密

使用3DES加密算法对数据库进行加密。各类用户的密码不能使用原始明文的方式保存,而应保存加密后的密钥,并且要求系统管理员应定时更换数据库的密码。

六、结束语

试题库的建设能使考试更加标准化,更加客观、全面地反映教学的实际效果,能节省教师的宝贵时间,提高工作效率,同时也促使任课教师必须按照教学大纲的要求认真组织教学内容,改进教学方法,对推动教学改革起到了积极的作用,对教学质量和整体教学水平的提高也有着非常重要的意义。

参考文献:

[1]杜洪飞.经典测量理论与项目反应理论的比较研究[J].社会心理科学,2006,(6):15-17.

[2]刘博.智能教学系统中个性化题库的设计与实现[J].中国电化教育,

2010,(9):110-114.

[3]Zpolat E,Akar G B.Automatic detection of learning styles for an e-learning system[J].Computers& Education,2009,53(2):355-367.

[4]郭敏华,兰雨晴,金茂忠.一种海量题库难度系数和区分度动态优化模型[J].计算机工程与应用,2007,43(21):246-248.

[5]赵耀红.数据结构组卷系统的设计与实现[J].长春大学学报,2010,

第10篇

关键词:虚拟现实;PLC;实训平台;Unity3D

DOIDOI:10.11907/rjdk.161661

中图分类号:TP319

文献标识码:A文章编号:16727800(2016)010011104

0引言

PLC是集自动化、计算机、通信3种技术于一体的高科技产物。随着科技的不断发展,急需大量熟练应用PLC的人才[1]。不容忽视的是调试程序环节在PLC控制系统的设计与应用中至关重要。目前,PLC的传统教学方式主要有3种:①通常PLC编程软件会提供仿真调试功能用来调试程序,学生编写程序并下载到PLC中,并观察输出端口状态验证程序,由于缺少实际被控对象,无法直观感受被控对象的执行效果;②现有的PLC专用实验平台控制模式多样化,实验生动形象,但费用较高,设备更新困难,维护需请专业人员[2];③现场实操,直接在实际控制系统中调试程序,效果显著,但具有很大的危险性,并且现场实操需要一定的硬件设施,倘若设施不完备,实训教学将不能正常开展[3]。

针对PLC传统教学存在的问题,基于集模拟性、沉浸性、交互性于一体的虚拟现实技术,设计了基于Unity3D的PLC半实物虚拟仿真实训平台。利用三维模型搭建、三维交互设计、通信模块设计等技术为学生提供了一个直观、经济、安全、高效的PLC学习环境,成本低、易维护、可扩展性强。通过该平台学生可以实时地编写并调试程序,动态分析各种被控对象的执行效果,加以真实的环境音效,增强现场体验感,激发学习兴趣,提高学习效率。同时减少了同程度下的教学成本,避免了设备损坏,保障了人身安全,具有较高的经济性和安全性。

1虚拟仿真实训平台总体框架

1.1半实物仿真

半实物仿真(semiphysical simulation)又称硬件在回路仿真,是将数学模型与物理模型或实物模型相结合进行实验[4]。保证实时性是硬件在回路仿真的关键,仿真平台的实物部分与仿真部分之间的接口设计也尤为重要。例如本平台中实物PLC和三维虚拟场景之间数据的转换和传输需要通信接口来完成。

通常情况下有两种方式可以实现半实物仿真平台设计:①将PC机作为控制器,被控装置作为实物部分放置在仿真平台的回路中;②控制器(如PLC)为实物,被控装置通过建立数学模型来实现[5]。针对PLC虚拟仿真实训平台的特点,本文选用第二种方式来设计半实物仿真平台。以PLC控制器为实物,建立被控装置三维模型,通过观察虚拟场景的执行状态来调试PLC程序。

1.2虚拟现实技术

虚拟现实(Virtual Reality)又称灵境技术,利用三维图形生成技术、多传感交互技术等模拟实际三维空间,让使用者如身临其境一般在视觉、听觉、触觉上感受虚拟场景[68]。例如本实训平台中的PC机虚拟场景,利用动态环境建模、三维交互设计、虚拟传感器以及系统集成等技术来完成PLC虚拟仿真实训平台的构建。

1.3实训平台总体设计

PLC虚拟仿真实训平台主要由PLC、PC机虚拟场景和通信模块组成。PLC发出真实控制信号,通过通信模块传输给PC机,此外PLC接收虚拟场景输出的虚拟传感信号。PC机虚拟场景采用3Ds Max和Unity3D设计,显示被控对象各种运行状态。通信模块主要是虚拟现实数据接口,本系统利用单片机来完成PLC与计算机之间数据的转换与传输。平台整体设计如图1所示,具体的数据流图如图2所示。PLC输出控制信号通过虚拟现实数据接口传送到Unity3D虚拟场景,虚拟设备根据接收到的虚拟控制信号来模拟实际设备的运行效果。运行过程中,Unity3D中的虚拟传感信号经过通信模块传送给PLC,PLC接收到信号后检测虚拟设备的运行情况并发出控制信号进行相应的调整,实现虚拟仿真实训平台的正常运行。

2PLC实训平台开发

PLC虚拟仿真实训平台开发主要包括三维模型搭建、交互开发、理论测试模块、硬件平台开发4部分。

2.1三维模型搭建

模型与场景搭建是设计一个虚拟现实平台的必要前提[9],PLC虚拟仿真实训平台使用几何建模和物理建模来创建三维模型。当前有许多三维建模软件,比如3Ds Max、CATIA、UG等,其中3Ds Max具有很多插件,操作灵活、运行流畅、性价比高、模型制作容易上手,故采用3Ds Max软件进行建模。为增强真实感,需到工艺现场收集相关资料(比如设备照片、尺寸、声音等)作为标准来建立设备模型。建模时要尽量使各模型在外形、尺寸上与工艺现场相一致[1011]。

交互系统的真实度和流畅性对于用户体验都非常重要。模型越精细就越真实,但生成的数据量就越大,影响系统运行的流畅性,从而降低用户体验。因此,要对模型进行优化:①建模过程中在不影响整体效果的情况下尽量减少模型面数,删除看不见的面和重叠的面,另外尽量减少运用布尔命令以减少面的个数,避免计算错误[12];②将现场采集的照片经过Photoshop处理赋给模型,既能增加真实感又可以减少多边形的数量,达到简化模型的目的;③利用LOD(Level of Detail)技术,即细节层次模型,在不同层次、不同视觉条件下,为每个物体建立不同精细程度的模型,当物体离视点远时就调用相对简单的模型,而近距离观察时调用相对复杂的模型(这样可以在逼真性和速度之间达到均衡),以提高场景的显示速度[13]。模型优化处理后,需将模型位置复制到世界坐标系原点,然后利用V-Ray渲染器进行烘焙渲染,并导出“.fbx”格式文件。

2.2交互开发

3Ds Max软件中建立的模型是静态的,要达到更好的教学效果,还需要为系统提供交互功能。为方便学生多视角观察被控对象,利用多方位相机实现视角的切换,并添加User Input模块,双击该模块选择“鼠标右键按下”选项,再将该模块连接到ExpressionValue模块下,把ExpressionValue的表达式改成“A*B*C”,避免相机随鼠标晃动,方便控制视角。添加碰撞检测(Collision Object)模块,避免行走相机因受重力作用下落穿过设备进入设备内部。

PC机接收到的数据利用Unity3D中的虚拟模型Transform下Parent属性来控制模型的移动、旋转等运动,主要通过Translate和Rotate函数实现。对于一些无规则物体(例如水),不能使用常规方法建模,可利用粒子发射系统Particle System实现。通过Particle System通道为粒子设置合适的材质和贴图,通过ReceiveData和DealData判断单片机缓冲区数据后,在物体数据的顶点上通过循环发射粒子来模拟。为了增强沉浸感,需到现场采集真实声音,并以3Dsound的形式导入Unity3D来模拟工艺现场的声音。

Unity3D串口接收使用多线程和数据池的设计模式,采用数据结构队列避免线程阻塞。其中Unity3D利用C#命名空间System.IO.Ports中的SerialPort类来接收数据[14]。在Start函数内实例化一个SerialPort类sp串口,并设置串口号为COM2、波特率为9 600、数据位为8、校验位为IO.Ports.Parity.None、停止位为IO.Ports.StopBits.One[15],与下位机串口保持一致[1516]。通过Thread函数开启一个线程ReceData接收数据帧。在RecData线程内通过sp的Read函数循环读取缓冲区数据,并将结果传送给数组buf进行判定。若buf长度为0直接返回,若不为0将数据赋予UserData。虚拟场景按照UserData的数值控制虚拟设备的运行。在系统退出时利用Close函数关闭串口,以免下次启动因串口无法打开而影响系统正常运行。RecData内部处理程序和关闭串口程序如下:

2.3理论测试模块

理论测试模块主要用来测试学生对PLC理论知识的了解程度,其设计主要包括UI和Access数据库两部分。其中,UI用于向学生呈现测试内容及结果,Access数据库用于标识管理员(如教师)和学生信息、录入试题库、随机抽取试题、展示测试结果。创建数据库文件database.accdb,并建立管理员表AdminTable、学员表UserTable、试题库表QuestionTable(创建部分试题和对应答案)。管理员可按课程安排选择实训内容和理论测试题,并且有更新试题库的权利,学员表由学生自行注册添加。学生登录后点击“开始测试”,系统随机抽取试题并形成试卷,答题结束后,系统通过和正确答案对比判定成绩。最后将理论测试模块为“.exe”文件,Unity3D利用System.Diagnostics命名空间的Process类调用理论测试模块。其中连接数据库程序和试卷读写部分程序如下:

2.4硬件平台开发

PLC作为主控制器选择性能优良、性价比高、应用广泛的西门子S7-200CPU224XP可编程控制器,集成了14点输入/10点输出共24个数字量I/O。通信模块的主要部件选用STC12C5A60S2单片机,它是PLC和虚拟场景之间的通信桥梁。单片机和PLC之间电气连接,单片机需要5V和24V电压,PLC需要220V电压,单片机和PC机利用RS-232串口通信实现信号传输。图3是通信模块内部结构图[17],PLC输出控制信号,经过单片机数模转换器ADC转换成数字量,再由输入输出端口DIO传给PC机的虚拟场景,控制虚拟设备运行。虚拟传感器信号通过System.IO.Ports和单片机将运行数据反馈给PLC,实现系统的闭环控制。单片机通过循环检测PLC的输出信号并将数据传给缓冲区,再通过串口通信将数据送往PC机,虚拟现实系统判断接收到的数据控制虚拟设备完成相关运行。Unity3D中的虚拟传感信号经电平转换电路转换成TTL电平后传送给单片机,通信模块传送给PLC,PLC接收到信号后检测虚拟设备的运行情况并发出控制信号进行相应调整,实现虚拟仿真实训平台的正常运行。

3虚拟仿真实训平台实验测试

PLC虚拟仿真实训平台功能结构如图4所示,为测试平台是否可行,以恒压供水系统和燃气锅炉系统为例,利用虚拟现实技术搭建虚拟场景,正确连接PLC、通信模块、PC机虚拟场景,将Unity3D软件中建立的虚拟现实系统成“.exe”格式并运行,调试PLC程序,并记录部分效果图。

3.1恒压供水系统

依照变频器工作过程,在3D场景中虚拟变频器运行模式,对频率的上下限进行设置。PLC进行逻辑控制,传感器采集管道内压力,经过PLC的PID运算后,由变频器进行水泵速度凋节;同时PLC控制水泵切换,实现恒压供水的自动调节,虚拟视景则全方位展现恒压供水系统的工作流程。图5为系统运行效果,此时系统状态为“频率超限,1#水泵由变频转工频运行”,PLC启动2#水泵变频运行,形成反馈。

3.2燃气锅炉系统

PLC发出控制信号,单片机通过循环检测PLC的输出信号并将数据传给缓冲区,再通过串口通信将数据送往PC机,虚拟现实系统判断接收到的数据控制虚拟设备完成相关运行。Unity3D中的虚拟传感器负责检测进水量、温度、氧浓度等数据,并将数据即时传送给单片机。单片机将数据处理后送给PLC供PLC检测分析,检测虚拟设备的运行情况并发出控制信号进行相应调整,从而控制虚拟燃气锅炉的稳定运行。图6为燃气锅炉系统点火果。

3.3理论考试结果

使用学号登录进入理论测试模块,点击“开始测试”按钮,系统随机抽取试题形成试卷。试卷包含50道选择题,每题2分,共计100分,答题时间为30分钟。答题结束后,点击“提交答卷”按钮,测试结束,系统给出判定结果。若规定时间内仍未答完,不能继续作答,考卷将自动提交。系统判定的测试结果如图7所示,显示本次测试成绩以及近最近5次的测试成绩。

4结语

测试结果表明,基于Unity3D的PLC虚拟仿真实训平台运行流畅,为学生进行PLC学习提供了一个直观、经济、安全、高效的环境,解决了部分院校PLC实训平台欠缺的教学难题。通过该平台学生可以快速、准确地编写并调试程序,动态分析各种被控对象的执行效果,同时能更多地了解各种工艺的工作流程,加上真实的环境音效,可增强现场体验感,激发学习兴趣,提高学习效率。同时减少了同程度下的实训教学成本,避免了现场实操的设备损坏和安全隐患,具有较高的经济性和安全性。

将此平台作进一步改善,考虑利用以太网技术使其实现远程实验[1820]的功能,让学生不仅能在实验室使用,只要能联网的地方(如教室、宿舍)均能使用,达到方便学习和充分利用资源的目的;同时考虑加入先进的三维投影技术进行三维立体化展示,增强沉浸感。进一步完善实训平台,实现智能化,如在实训中自动判断并记录学生练习过程,根据个人的学习情况自动调整学习进度和学习内容等。

参考文献参考文献:

[1]王啸东.PLC虚拟实验室的研究与建设[J].实验室研究与探索,2012,31(9):210213.

[2]曾洋.PLC仿真实验平台研究[D].杭州:杭州电子科技大学,2011.

[3]袁云龙.基于组态软件的PLC控制系统仿真实现[J].自动化仪表,2006,27(5):5758,61.

[4]黄建强,鞠建波.半实物仿真技术研究现状及发展趋势[J].舰船电子工程,2011(7):57,25.

[5]吴家铸,党岗,刘华峰.视景仿真技术及应用[M].西安:西安电子科技大学出版社,2001.

[6]周凯,韩芳.虚拟现实仿真在《过程控制》课程教学中的应用[J].软件导刊,2015,14(9):192194.

[7]李强,宓超,王晨星,等.基于虚拟现实技术的沉浸式PLC控制程序的半实物仿真系统[J].中国工程机械学报,2013,11(1):4145.

第11篇

C++程序设计实验课教学过程中存在的主要问题

1.职业院校的学生来源多样,素质差距大,入学成绩低,学习积极性不高,几乎无课前预习、课后复习的习惯,学习能力不强,给教师的授课带来困难,再加之该课程的教学内容多,课时少,使学生普遍感到该课程学习难度大,这在一定程度上不利于学生对该课程的理解和掌握。此外,大学里丰富绚丽的社团活动更能吸引学生,他们参加这些活动课只需短时间努力就可看到成果,而专业课的学习却相反,在短期内他们很难看到明显效果,而且对克服学习上的困难缺乏恒心、毅力,容易在学习上产生畏难心理而放弃对课程的学习。

2.教师对学生编程思维的培养不足,学生不能将所学知识应用到实际,降低了教学质量。

3.实验题型类型单一,内容陈旧、枯燥、没有新鲜感,多为课本例题或其变形,验证性的实验较多,缺乏设计型、创新型实验,很难将所学知识应用到实际,很难激发学生的学习兴趣。

4.实验课上学生随意性大,教学效果不能量化,教师对学生管理不能到位,影响了实验课的教学效果。在调试程序方面,学生不会调试、修改错误程序,遇到问题或错误时无从下手,过多地依靠教师,缺乏自信心,这些都增加了课程的学习难度。

5.在有限的实验课上,教师难以保证对全体学生答疑解惑和实时地对学习效果进行评价,积极性很难调动起来,学生课后也很难有意识地进行编程实践,长时间会导致学生失去学习兴趣。

6.考核体系不完善,仅采用传统的笔试进行考核,使得学生对实验课的重视不够,学生在实验课前没有进行充分准备,实验内容不能完成,且抄袭现象难以避免。

实验课教学的探索

1.注重实验题目的选取

描述枯燥的题目很难调动学生的学习兴趣和主动性,而软件大赛的题目与实际应用紧密结合,且知识性、趣味性、实用性强,它在一定程度上反映了行业对职业能力的要求[3],可借鉴其风格使实验题目趣味化、生活化。例如,2012年软件大赛选拔赛真题:大数学家欧拉在集市上遇到了本村的两个农妇,每人挎着个空篮子。她们和欧拉打招呼说两人刚刚卖完了所有的鸡蛋。欧拉随便问:“卖了多少鸡蛋呢?”不料一个说:“我们两人自己卖自己的,一共卖了150个鸡蛋,虽然我们卖的鸡蛋有多有少,但刚好得了同样的钱数。你猜猜看!”欧拉猜不出。另一个补充道:“如果我按她那样的价格卖,可以得到32元;如果她按我的价格卖,可以得到24.5元。”欧拉想了想,说出了正确答案。我们不是数学家,很难列出公式来分析。但计算机可以“暴力破解”,就是把所有的可能情况都试验一遍,撞上为止。请写出每人拥有鸡蛋的数目,用逗号隔开。让学生自己选择合理的算法、数据结构来解决。有趣的题目极大地调动了学生的编程欲望和创造动力,感受到学有所用、基础知识的重要性。此外,大赛题目的引入,可使学生提前了解大赛,也为之参赛奠定基础。

2.注重实验内容的形式

实验内容的形式应多样化,例如程序代码填空、程序结果填空、描述程序功能、代码改错、书写函数、程序设计等,从而多方位地增强学生的读程、编程、调试程序的能力。此外,在学生验证程序时,为了使学生明确如何给出测试数据及测试数据的普适性,可借鉴软件大赛的命?}模式,除了题目描述,还包含测试输入样例、输出样例,这样就能客观地验证程序的正确性。

3.注重实验内容的设计

根据学生的个体差异以及不同阶段的发展需要,将实验内容由浅入深地推进,将实验题目分为必做题和选做题,让每位学生根据自身的学习情况选择相应难度的题目,即让所有的学生都有事情做,能够完成各自的学习任务,带动学生的积极性,也避免了教师采用相同题目要求,造成部分学生抄袭作业的情况[4]:第一级是必做题,是基础性知识,是知识的直接运用,要求学生必须掌握;第二级是扩展练习或与实际问题相结合;第三级为代码优化或选择软件大赛相关或源于软件大赛的题目。此外,为了拓展学生思路,通过启发,让学生尽量一题多解,从不同角度切入,设计不同的代码,可使学生将知识点进行联系、分类、对比,形成一个较完整的知识体系。

4.注重引导学生学会编程的思维和方法

在C++课程的第一次课程教学,尤其是在赛前辅导中,笔者一直给学生灌输这样的思想:“思想有多远,我们才能走多远”,在程序设计中从不同角度切入,尽可能地一题多解,注重启发、引导学生思维,将编程的思路、方法传授给学生,培养学生先思考数据结构、算法,再写代码的习惯,提高学生的学习质量,以及分析、解决问题的能力。

5.注重程序调试,培养学生独立分析、解决问题的能力

衡量编程能力的一个重要指标就是调试程序的能力,所谓的程序调试,即排除程序中的错误,可分为编译型错误和逻辑型错误。对于编译型错误,有错误提示,相对容易修改,但很多学生要么不会翻译,要么没有耐心阅读,要么直接忽略错误提示,往往使得一个很简单的错误也很难找到并纠正,打击了学生学习的兴趣和积极性;而逻辑型错误,因系统无提示,很难发现,要查找和纠正这些错误更是无从下手,因而让学生注重程序调试至关重要。对于编译型错误可采取边讲边练的形式和学生一起阅读、翻译提示信息,再进行查错、改错,将常见的错误进行翻译、归类、总结后发给学生,让他们在遇到类似问题时先自行解决,当他们解决不了时教师再予以解答;而对于逻辑型错误,教师不能直接给出答案,应通过启发,循序渐进地提问,引导学生主动思考,得出修改的方法,也可依托实例利用注释、设置断点、逐语句执行等方法以边讲边练的方式进行查错,使学生在获得理论知识的同时及时实践,使得他们能更快更真实地领悟编程中程序调试方法的重要性,在学习中不断积累调试的方法、技巧和经验。

6.注重分组教学模式的使用

依据教师指定和学生自愿相结合的方式将班上的学生每4人一组,按学习、动手能力的强弱分成强弱型和强强型小组:强弱型小组,可使能力强的学生带动、帮助能力弱的学生。强强型小组,他们会对同一问题各抒己见,迸发更多的思路,创造性地完成实验任务。

7.注重及时评价学生的实验学习效果

对于实验课上规定的内容,根据学生完成的数量及对编写的程序依据结果的正确性、功能的完善性、算法的效率、程序的可读性和规范性、考虑问题的全面性或程序中是否隐藏错误等进行及时打分,作为每次实验课的平时成绩,最后整合平均成该实验课的总评成绩,以一定的比例计入该课程的总分中,使学生重视课程的实践操作。同时,对善于思考和提问、作业完成质量高的学生要及时表扬,以达到树立学习榜样和激励学生互相学习、进步的作用。

8.注重加强实验课的管理

为了避免出现学生实验课上玩手机、聊天、淘宝等现象,教师在实验课前就将实验任务布置给学生,让他们独立思考,也可和同学讨论交流后写好程序的初稿、程序运行所需的测试数据、预期的运行结果等。此外,为了在日常学习中培养学生的工程意识,还要重视初稿代码的可读性、可维护性及可重用性等,这样,学生在课上带着问题有目的地操作而不是面对电脑一片茫然。每次实验课前,教师先检查实验题目完成情况,让学生养成习惯,提高实验课的效率,而上机时重点进行编辑、调试,及时写出并提交规范的实训报告,有利于节约宝贵的上机时间。

9.注重充分利用网络平台

如今的网络已成为重要的交流平台,充分利用网络可延伸实验课教学,对课堂教学进行补充。具体来说,教师可将实验指导书、教学案例、教学视频、学习网站、经典算法、C++函数库、编码规范、常见编译错误分析、典型错误剖析、模拟试题、历年软件大赛真题等资料到博客或QQ空间让学生分享。这样,有助于学生进行课前预习、课堂重现、课后复习、赛前练习和自测等以提高其学习效率。

10.注重实验课的教学形式

提高实验操作课的教学比例,为学生提供开放的实验环境。除传统的实验课外,建议学校的机房应向学生开放,并有指导教师指导,这样的环境增加了学生上机实践的时间,让学生有足够的机会进行实践操作,通过有充分时间的思考、编程、调试加深学生对知识点的理解,才能真正达到实践教学的目的。

11.注重加强课内外辅导,及时解决学生遇到的问题

在课内,应对学生提出的问题、疑问及时分析讲解;在课外,应充分利用网络平台如微信、QQ等互动的方式对学生进行及时的指点,这样可避免学生因问题累积而产生厌学现象,提高学生学习积极性,教师能与学生进行深层沟通,了解学习状况、进度快慢、内容的难易,促进教师自己进行日常教学反思,调整自己的讲课内容、思路、方法等以提高教学质量。

12.注重考核方式的改革

考?是检验教学效果的重要手段,C++课程的考核除了传统的理论考核、平时作业、平时实验考核外,还应加入期末上机操作考核,其题目形式可借鉴软件大赛预赛题样式,这样不仅扩大了总评成绩中实验操作的比例,引起学生对实验操作课的重视,也使学生在学习过程中重视自己实践操作能力的培养。

第12篇

关键词: 职业教育计算机专业教学改革

高等职业技术教育的目标是培养具有综合职业能力和全面素质的,直接工作在生产、技术、管理和服务第一线的应用型、技能型高级人才,因此,职业教育应结合市场需求,突出实践性教学及技能训练,强调以培养技能型人才为本位的指导思想。但是当前某些职业技术院校以“本科压缩型”或“专科型”的模式办职业技术教育,其教学模式和结构不适应高职人才培养需求。特别对于计算机这种实践性较强的课程,教学内容和知识结构的应用性、实践性、创新性和知识更新都跟不上新技术的发展和变化,缺乏对学生实践能力和创新能力的培养,仅能使学生完成大专层次的学历教育,缺乏适应就业岗位更新的可持续发展能力。由此看来,深化职业技术教育中的计算机教学改革势在必行。

1.培养学生的思维能力

根据思维探索答案的方向,可把思维分为聚合式思维和发散式思维。发散性思维是一种无一定模式、不依靠常规、寻求变异、从多方面寻求答案的思维形式,它的特点是思维敏捷、思路灵活、具有创造性;聚合式思维是把问题所提供的各种信息聚合起来,得出一个正确的答案。计算机语言具有逻辑性强,处理问题周密、严谨的特点。根据计算机学科的特点和知识体系的内在联系,教师在向学生传授知识的同时,有目的地培养学生的思维能力,是深化教学改革的重要课题。教师在给计算机应用专业的学生上课时,应经常进行编程训练。因此,教师应注意利用程序设计及算法自身的科学思维方法进行教学,通过分析试题、建立数学模型、确立算法、上机实践、调试程序、优化算法,培养学生良好的思维品质和创造精神。

2.改革教学模式,改变教师观念

教学模式包括教学思想、功能目标、操作要领等,它是组织、设计和调控教学活动的方法论体系。一方面,它来自教学实践,是教师和学生对某些有效的具体教学活动方式进行优选、概括和加工的结果。另一方面,教学模式的实际执行者是教学的实践者和实践对象,即教师和学生是教学活动的实践主体,当代的一些教育理论家也认为:“最有效的学习方法应是让学生在体验和创造的过程中学习。”计算机课程既具有很强的理论性,又具有很强的实践性。它要求学生不仅要很好地掌握理论知识,而且要把所学的知识应用到操作实践当中去,并在操作实践中不断地发现问题、分析问题、解决问题,因此,在培养学生的动手动脑能力方面具有很好的作用。然而,在传统的教育理论中,教育实践的主要目标是传授知识。在这种理论的指导下,计算机学科的教学存在着一些问题,基本上沿袭传统的授课:“板书+讲解”。计算机各种软件大多以图标方式和鼠标操作为主,其操作直观、便捷,对这些软件的应用与操作教师在黑板上是无法向学生讲解明白的,需要使用演示设备向学生讲解,也就是说,计算机的许多课程应该以“演示+操作+讲解”的授课方法进行讲授。计算机教学应改变传统的教学方式,采用先进的工具,建设较为多样化的多媒体教室,利用大屏幕投影进行直观教学。

在计算机教学中,教师应利用计算机、大屏幕投影、网络等先进的多媒体教育技术手段代替传统的粉笔和黑板,用计算机教“计算机”。在教学中,教师要注重问题的创设,提供氛围,让学生在实践活动中发现问题,着手解决问题,使学生成为学习的主人,教师则成为学生的“协作者”。当然教学模式多种多样,如讲解接受模式、自学辅导模式、引导发现模式、实验模式等,在诸多种教育模式中,没有哪一种模式是最完美的。在教学中,应采用哪种教学模式,需要教师在实践中不断地去探索总结。当然,教学的目的不在于追求完美的模式,改革教学模式不是目的,而是通过某种行之有效的方法,全面地贯彻教育方针。

3.针对职业教育和专业特点,大胆进行课程整合

三年制势必影响学生的文化基础,但教师应当认识到,学生必需的文化基础已经在高中阶段形成,进入高等教育层次后,学生的文化基础更多表现为学生的意志品质和后续的学习能力。学校不可能教给学生实用一生的知识,只能教给学生学习的方法。

职业技术教育是合格教育,而不是优秀教育,计算机专业培养的是计算机操作员而不是计算机工程师,所以授课课程应以实用为目的,针对学生基础相对较薄弱的特点,以培养技术应用能力为主旨构建新的课程体系。

(1)根据职业岗位的要求,调整课程结构,精讲文化基础和专业基础课,加大职业能力训练的比例。比如可以将学生比较难以接受的专业基础课,如《数据结构》、《操作系统原理》等适当压缩,仅仅将其引入门而不作深入的研究,也可将其作为限选课(要考虑照顾部分专升本的学生)。同时重点开设一些学生易于接受、实践技能性较强的课程,如Flash、Photoshop、网页制作、VB程序设计、VF程序设计等,这些课程则对他们提高要求,做到精通,并能够举一反三,自学与之类似的其他课程。

(2)将职业资格证书作为重要的教学目标,把职业资格标准中要求的知识与技能融入到相关课程的教学大纲中,并可将不同类别等级的职业资格证书折算成相应学分,纳入教学计划。

(3)根据计算机专业发展迅猛的特点,教学计划不能一成不变,应根据社会的需要而不断调整。专业教学计划随社会发展而发展,已毕业的学生也可以根据需要“回炉”――回校进行新课程的短期学习,使知识及时更新。

4.加强计算机专业与其他学科的融合

现代职业的一个重要特点是:基础科学的分科分类越来越细,将科学研究成果转化为生产力的社会职业则呈现综合性发展趋势,社会分工日益变细,职业知识、技能的交叉面日益加大。交叉职业和新兴职业所要求的许多技能和知识已大大超过了传统职业所界定的内容范围,它们不只是属于某种职业,而是许多职业的共同基础。计算机的飞速发展已经呈现了一个强有力的态势,它的普及意味着越来越多的人把计算机作为一个工具,计算机专业的学生在求职场上逊色于熟悉计算机的其他专业的学生已经是一个普遍现象。作为纯计算机专业的学生来说,现在就业的渠道大大减少了。

因此,信息技术与其他学科的整合,作为其他学科的辅助学习手段,会更有效地发挥作用。教师应当在课程设置中加大这方面的力度,强化其他学科在计算机专业的融合,虽然不可能做到面面俱到,但可以通过选修课的方式提高学生在其他方面的认知能力。对于学有余力的学生,还可以鼓励他们学习第二专业。

参考文献: