教育学理论在C语言程序设计教学中的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
教育学理论在C语言程序设计教学中的应用
摘要:C语言程序设计是非计算机专业的一门重要的公共课程。
文章从C 语言程序设计课程的特点出发,提出运用知识迁移、案例教学、课堂互动和差异教学等教育学理论对课程的教学方法进行改进。
实践证明,在实际教学中应用教育学理论,很大程度上增强了学生对程序设计课程的兴趣,提高了学生采用程序语言解决实际问题的综合能力,取得了显著的教学成效。
关键词:程序设计;教育学理论;教学方法
掌握一门高级程序设计语言是高等院校学生利用计算机解决实际问题的基本要求。
计算机科学的发展日新月异,不断有新的程序设计语言被设计出来,集成化的快速开发工具也层出不穷,而高校中非计算机专业主要采用C语言作为程序设计课程的学习语言。
C语言是现今应用广泛、最具影响的程序设计语言之一,具有概念简洁、数据类型丰富、表达能力强、使用灵活方便、代码质量高等特点。
非计算机专业C语言程序设计的课程教学中,教师往往专注于理论的讲授,而学生由于知识结构的原因处于“被动”的接受地位,因此教学效果通常并不理想。
教育学理论归纳和总结了教育活动中的科学理论与实践,探索解决教育活动产生、发展过程中遇到的实际教育问题,从而揭示出一般性的教育规律和理论。
运用教育学理论指导高校的教学活动,能够使教学过程更加科学和合理化,从而提升教学的质量和效率。
教育学理论,如知识迁移、案例教学、课堂互动和差异教学等已经广泛被应用于各种课程的教学中,取得了显著的教学成效。
如何采用教育学的理论提高C语言程序设计公共基础课的教学效果,是大学计算机课程教育思考和探索的问题,需要有针对性的进行探讨和研究。
1结合专业特点,促进知识迁移
程序设计不仅仅是考察学生对程序语法的掌握,特别需要培养学生采用算法程序解决问题的能力,因此,知识迁移的训练显得尤为重要[1]。
知识迁移是“一种学习对另一种学习的影响”。
学习是一个连续过程,任何学习都是在学习者已经具有的知识经验和认知结构、已获得的动作技能、习得的态度等基础上进行的。
这种原有的知识结构对新的学习的影响就形成了知识的迁移。
迁移是普遍存在的现象,但迁移的发生却不是自动的,它需要我们创设条件,采取有效的方法,才能更好地促进学生所学知识的迁移,从而提高记忆与学习效率,发展学生处理问题的能力。
程序设计教学的第一堂课应该让学生对程序的学习有个宏观的把握,因此教
师需要向学生讲解编程的基本步骤。
具体包括:
1) 反复阅读题目;
2) 规划解题方案;
3) 测试;
4) 实现上述设计方案,并修改错误;
5) 制作文档。
如果直接给学生讲述该过程,学生会觉得非常枯燥,不好理解。
因此,在讲解的过程中,需要创造条件,让学生能够实现知识的迁移。
比如教育技术专业的学生中女生比较多,女生对抽象概念的理解往往不如男生,但对小动物等新鲜事物比较感兴趣。
因此,可以借鉴给猫洗澡一个例子[2],分析洗猫的流程(如图1所示)。
该例子学生很感兴趣,通过具体事例的讲解,学生很快明白了编程的基本步骤。
模块化程序设计的概念对C 语言的教学也很重要,在教学过程中可以根据学生所学专业知识的特点进行迁移。
例如,在给土木工程专业学生讲解模块化程序设计的时候,针对该专业的特点,进行专业知识方面的比较。
通过比较建筑工程和软件工程之间的相同之处来进行讲解。
该专业的学生对建筑中的结构很熟悉,对比程序中的结构,就能够很快的理解程序中模块化的意义、函数的作用以及空函数的概念。
2案例教学,激发学生学习兴趣
程序设计是一门非常重视实践性的课程,因此案例教学的方式能够帮助学生理解所学知识、建立编程思想和提高实践动手能力[3]。
案例教学法是一种以案例为基础的教学法,案例本质上是提出一种教育的两难情境,没有特定的解决之道,而教师在教学中扮演着设计者和激励者的角色,鼓励学生积极参与讨论。
案例教学法是以对案例的分析解决为主线,通过对案例中的问题进行分析,激发学生的求知欲,调动学生的积极性,使学生自觉主动地学习案例,掌握原理和方法,实行科学的教育思想观念的一种教学方式。
程序设计的教学中有很多生动有趣的例子可以给学生进行演示,但如果每次只是讲解一些抽象的数学公式的例子,学生并不能很快地理解和消化。
教师应该设计合适的案例,使其能够引起学生的兴趣,循序渐进的对学生进行引导,并且使学生每次学习了新的知识就能够逐步完善原有的程序。
例如,课堂上往往需要对学生进行随机选择提问,因此,可以设计一个随机选择学生的学号或姓名输出的程序。
学生对这样一个用C语言实现的实例很感兴趣,而且该程序中包括了
数学库函数、数组、循环结构、选择结构,还有随机数产生的算法等多个C语言的知识点,是一个综合性的例子。
在学生所学知识有限的情况下,先讲解程序的原理,并采用最简单的语法来实现程序的基本功能。
当新的知识增加了以后,再逐步细化讲解,循序渐进的对程序进行改进,使新的知识逐步被学生所接受。
这样每一堂课,学生都可以通过这个程序了解到新的知识点,在程序逐步完善的过程中也对新的方法以及应用实例有了更直观的了解。
3课堂互动,重点难点讲解循序渐进
课堂互动是新课程倡导的重要理念之一。
课堂互动,是师生双方或学生之间在教学过程中相互交流思想和情感、传递信息并相互影响的过程。
课堂教学中的互动,就其形式而言,主要有两种:师生互动和生生互动。
师生互动是指在教学过程中,教师和学生改变传统的教师控制课堂、学生被动听讲的局面,师生共同探讨、共同研究,在这一过程中,教师给学生以指点,学生给老师以启发,相互促进,共同发展。
生生互动是指学生间摆脱了“各自为战”的学习方式,在学习活动中,互相推动,从而共同提高学习效益。
程序设计中采用师生互动的方式可以促进学生对知识的主动学习,往往能取得较好的教学效果[4]。
程序分析和流程图的绘制是程序设计学习的难点和重点。
学生刚开始学习程序的时候,都喜欢拿到题目就直接编程,并不习惯分析题目,更不会主动的绘制流程图。
因此,需要在课堂上有针对性地设计练习,通过师生互动使学生学会绘制流程图,这样对程序的学习会很有帮助。
具体做法如图2所示。
首先,由教师在课堂上给出程序代码,然后让学生根据该程序绘制出流程图,教师在针对流程图的绘制进行点评,这个过程学生比较容易接受。
其次,教师绘制好流程图,让学生写出程序代码,教师再对代码进行修改和讲解。
最后,进一步提升学生的理解,让学生拿到题目先绘制流程图,再根据流程图编写出程序,教师对这一过程进行讲评。
通过这种互动的过程,学生比较好的理解了流程图和程序之间的关系,并能够主动根据题目进行分析,养成良好的编程习惯。
实验操作和习题练习也是C语言教学中很重要的组成部分。
程序的调试能够帮助学生理解程序的流程并自觉的进行程序的改进,如果能够在调试的过程中实现师生互动,对学生的学习会很有帮助。
因此,首先由教师在课堂上具体讲解程序调试的方法,特别是复杂的程序,让学生学会通过调试了解程序的算法。
学生在课后练习经常会出现程序出错的问题,直接给出题目的正确答案往往并不能让他们很快理解问题出在什么地方,而程序调试能够很好的激发学生的灵感。
因
此,可以让学生对自己编写的程序进行逐步调试,教师对调试过程进行指导,这样很快能够找到错误的原因,并且印象深刻,在今后的学习中也会有意识的避免。
4差异教学、根据学生层次水平有针对性的进行指导
传统的教学方法较多地侧重于学生的共性,对学生的差异研究不够,重视学生认知结构的形成,忽视学生在共性条件下个体差异的发展,按照统一尺度要求学生,这样不仅淹没了学生的兴趣爱好和鲜活个性,而且对学生的知识增长和发展来说也有不利的影响。
而差异教学就是将学生个别差异视为教学的组成要素,从学生不同的准备水平、兴趣和风格出发来设计差异化的教学内容、过程与结果,最终促进所有学生在原有水平上得到应有发展。
差异教学是在班集体教学中立足学生差异、满足学生个别需要、以促进学生得到充分发展的教学。
程序设计是非计算机专业都开设的一门公共必修课。
学生的专业种类繁多,学习的动机、兴趣、能
力也就存在较大差异,因而更应该因人制宜,采用差异教学的方法[5]。
对大多数学生,着重讲解最基本、最常用的内容,掌握最基本的程序设计方法,打好基础,通过考核。
而对部分学习能力强的学生,可以结合所学专业,加宽加深学习内容,切入实际应用,培养创新能力,适当的介绍一些难度深的考级或考证书籍给学生练习。
5结语
通过教育学理论的指导,程序设计课程取得了较好的教学效果,学生的考试成绩都比较理想,对教师的评教结果也很好。
在今后的教学过程中,还应根据C 语言程序设计课程的特点,充分运用新的教学理念,不断探索提高教学质量的方法,培养高素质的大学生。
同时,也希望本文进行的实践和探索能够为计算机程序设计教育方法提供一些借鉴。
参考文献:
[1] 冯潇,甘玲. 用解析教学法改革程序设计类课程的教学[J]. 计算机教育,2007(24):120-122.
[2] Barbara,Johnston. 现代C++程序设计[M]. 北京:清华大学出版社,2005:17-18.
[3] 祝胜林,邢仲璟,林丕源. “C 程序设计”专业基础课程中三种能力培养的
教学探索[J]. 计算机教育,2009(20):79-80.
[4] 李明,李永贤. 浅析“自主互动”教学模式在职校计算机课堂中的应用[J]. 科技促进发展,2009(9):255.
[5] 刘亚军,杨永战. 差异教学在高校计算机教学中的运用[J]. 保定学院学报,2009(4):112-113.
Application of Educational Theory on the Research and Practice of C Programming Language Course
CHANG Shan, CHEN Yan, XU Dong-feng, TIAN Xu-hong
Abstract: C programming language is an important and public course of the non-computer major. In this article, based on the characteristic of C Programming Language course, we apply the educational theory, such as the knowledge migration, the case teaching method, the classroom interaction and the differentiating instruction, to improve the teaching method. It is proved that the application of educational theories in the actual teaching enhanced the interests of students in the programming course, raised the abilities of students to resolve an actual problem by the programming language and obtained the great teaching effect.
Key words: programming language; educational theory; teaching method。