徐扬
摘要:该系统是为了配合该校计算机基础课程平台中“C语言程序设计”的教学而开发的辅导学习系统。从功能上,系统提供了教师管理模块、教学辅导模块、阶段测试模块等几个模块,实现了试题管理、用户管理、课程学习、测试评分,强化了课堂练习环节和复习环节的可操作性,既可作为学生自主学习的工具,也可以协助教师进行课堂教学效果监测,提高了教学效率,丰富了教学手段。
关键词:C语言程序设计;辅导学习系统
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2012)34-8225-03
在我校计算机基础教学课程平台中,“C语言程序设计”是工科非计算机专业开设的公共基础课,课程具有理论理解难度大、实践操作要求高的特点。在教学中,不难发现,有引导性的、适量的理论理解识记习题,以及能够举一反三的编程操作练习是增强学习效果的有效手段。
本系统则是为满足C语言程序设计的教学而开发的辅导学习系统,通过总结多年的教学经验,考虑了我校教学机房的实际情况,在有效利用现有资源的基础上设计,有助于增进学生的理论理解、提高编程实践的能力。从功能上,系统提供了教师管理模块、教学辅导和测试评价模块两个子系统。一方面提供教师用户管理登录用户、管理试题库、编辑学习内容的功能;另一方面,面向学生登录用户,在分解为小单元的教学章节中,提供浏览教学内容、通过练习学习常用算法和编程技巧、参加相应阶段测试的功能。整体上实现了试题管理、课程学习、测试评分,强化了课堂练习环节和复习环节的可操作性,既可作为学生自主学习的工具,也可以协助教师进行课堂教学效果监测。
1开发工具的说明
考虑到系统的兼容性和可维护性,也为方便师生使用,系统选用了MicrosoftVisualBasic6.0作为开发工具,采用MicrosoftOfficeAccess2003作为数据库工具。我校现有教学机房机器均安装了VB6.0,而Access数据库便于安装与维护,支持SQL命令以及文本、数字、二进制等数据的存储,完全可以满足本系统的要求。
2体系结构的说明
系统设计为两个子系统:“教师管理系统”、“教学辅导和测试评价系统”。
2.1教师管理系统
该系统面向教师用户,主要通过“单元学习内容管理”、“单元测试题库管理”、“阶段测试题库管理”、“常用算法内容管理”、“期末模拟测试题库管理”几个基本模块,实现教师对章节学习内容的录入、更新等操作,还要实现各级习题和试题的录入和管理。如图1所示。
2.2教学辅导和测试评价系统
本系统面向学生用户,是系统实现教学功能的主要的部分。主要实现了“单元学习”、“单元练习”、“阶段测试”、“常用算法”以及“模拟上机测试”等功能。如图2所示。
2.3单元学习辅导单元
将教学内容依据教学进度划分为小单元,对各单元的学习内容进行概述,对重点、难点及典型题目进行解析,引导学生有步骤地通过阅读和思考展开预习和复习,学生则可以根据自身学习情况选择浏览,有效地开始自主学习。
2.4单元练习
这个部分提供上述单元的配套练习,题目内容上与各单元学习内容一一对应,形式上以知识点识记和基础上机操作训练为主,主要目的是帮助学生及时巩固本单元的学习内容同时检验学习效果。全部习题均提供文本参考答案,其中基础操作题目还提供直观的操作视频,以强调操作性技能的实践性学习。
2.5阶段测试
单元练习中多是针对单元内容彼此相对独立的习题,而C语言程序设计的学习必须将所学的编程理论和技术进行整合,因此,在每若干单元之后就可以进入阶段测试,进行相关的综合题目的训练。本部分的题目设置以阶段性综合操作题为主,参考答案以分析讲评的方式出现,可以促进引导使用者对阶段性教学内容的进行综合思考和运用。
2.6常用算法
在这个部分里,将C语言中的常用编程思想和算法进行总结,便于学生理解和掌握。例如:“递推法—以序列求和为例”、、“穷举法—以素数判断为例”、“冒泡法排序”等。在举例中启发学生举一反三地掌握编程的基本方法。
2.7模拟上机测试
系统提供与期末考试题型相同和难度相当的模拟题,既方便学生进行考试的复习,也同时检验学习的理解程度和综合效果。题型分为“选择题”、“程序填空题”、“程序改错题”和“编程题”。学生根据各类型题目的具体要求,在规定的时间内完成答题。系统将根据学生提交的程序文件评出分数并给出参考答案及题目的解析。
3系统开发的技术实现
3.1数据库的连接
在模块文件中设置一个全局变量cn,在启动窗体的load事件中写入:
cn.Open"Provider=microsoft.jet.oledb.4.0;datasource="&App.Path&"c_study.mdb;PersistSecurityInfo=False;"
3.2题目的录入
首先引用MicrosoftActivexDataObjectslibrary,再定义一个ADO记录集变量rs,就可以将题目的题干、程序文件、参考答案以及解析等内容保存到数据表中。部分代码如下:
3.3题目的释放
根据学生选择题目,将题目内容显示于系统界面,同时将本题的程序文件写入一个文件内,并名为扩展名为“.c”的文件。这样,学生可以一边浏览题目内容,一边编辑提供的C程序文件,部分代码如下:
3.4评分功能的实现
“选择题”、“填空题”和“改错题”属于标准化试题,在录入试题时,标准答案均作为一个字段被写入数据库。在测试完毕选择“提交”按钮后,评分模块提取学生在“选择题”四个选择答案中的点击结果,在数据库中查找相应的字段值进行对比;“填空题”、“改错题”的评分则读取学生在C程序文件中由/*****found*****/指示的程序行,与数据库中的标准答案群进行字符串比对;“编程题”则是依据编译原理,在答案中设定所涉及到的语法规则,标明各语句的分值;如本题涉及到“if”语句,则标明其语法规则,同时标注该语句的分值。在具体评分后,会提供参考答案和内容点评。
4总结
本系统已应用于我校2010级、2011级和2012级三届学生的C语言教学过程中,教师在教学实践中可以随时调用该系统为学生讲解有关教学内容,学生则既可以在实验室内使用该系统进行相关的练习和测试,也可以安装在自己的计算机中进行学习辅导。通过不断的改进和调整,如今已基本达到预期效果,提高了课堂练习的效率和综合的教学效果。
参考文献:
[1]黄迎久,郝长胜.“VisualBasic程序设计”网上测试系统的设计与实现[J].兰州大学学报:自然科学版,2010(46):152-154.