时间:2024-05-19
曾莹
【摘 要】培养大学生的计算思维能力是C语言程序设计课程的重要任务。通过对当前课程教学中存在的问题进行分析,阐明了面向计算思维的教学理念,提出了基于计算思维的案例教学法,并详细介绍了该教学方法的教学实践过程。实践表明,基于计算思维的案例教学有助于挖掘算法的思想内涵,从而使学生对知识的理解更加深入,同时有利于培养学生的计算思维能力,并提高其分析问题和解决问题的能力。
【关键词】计算思维;C语言程序设计;案例教学法;教学理念
计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为[1]。与传统的数学思维不同,计算思维不关注逻辑推理、演算的精准程度,而是注重问题分析和解决的实践过程。作为我国高校非计算机专业必修的计算机基础课程之一,C语言程序设计课程的教学目标就是培养学生运用计算机的思维和方法进行问题求解,这需要通过强化计算思维训练来实现。
1 课程教学现状分析
多年来,我国高校的计算机基础教育一直奉行“实用主义”,强调计算机应用技能的训练,而忽视对学生的思维力及创造力的培养。受这种教学理念的影响,非计算机专业的学生们普遍对程序设计类课程不重视,片面的认为程序设计与专业学习没有关联,不是必备的基本技能,因此学习缺乏主动性。同时,C语言本身语法结构比较复杂,对逻辑思维能力要求较高,而传统的C语言课程教学手段、形式比较单一,大部分时间是老师一个人在台上讲,学生只能被动接受,课堂枯燥乏味,教学内容则偏重于基本概念和语法规则,与专业学习联系不紧密,因此,对于初学者来说,学习和理解起来比较困难,容易产生畏难情绪,有甚者干脆放弃学习。
2 树立以计算思维为导向的教学理念
计算思维能力是大学计算机基础课程教育工程中一个重要的培养目标[2]。近些年来,随着计算机技术的飞速发展,大学生的计算机应用能力普遍提高,因此在计算机基础教学过程中,应打破“计算机工具论”的局限,加强训练学生的实践能力和创新能力,教学重心应由原来的知识和技能培养逐渐转变为计算思维能力培养,这意味着程序设计类课程在计算机基础教育课程体系中的地位要显著提升,这样学生才能真正认识到该类课程的重要性。另外,在第一节理论课时,教师要让学生明确学习程序设计的目的,让他们认识到课程的学习不仅为掌握编程语言,更重要的是培养令之终身受益的计算思维能力。所谓“磨刀不误砍柴工”,学生只有在课程学习之初明确学习目的,端正学习态度,才能更加积极主动进行后续学习,才能自发的加强对自身计算思维的培养。
3 融入计算思维的案例教学法
所谓案例教学法是指利用已经发生或将来可能发生的问题作为个案形式让学习者去分析和研究,并提出各种解决问题的方案,从而提高其解决实际问题能力的一种教学方法[3]。传统的C语言程序设计教学方法是以教师讲授为中心,只告诉学生怎么去做,而且其教学内容在实践中可能不实用,且非常乏味无趣,学生的主观能动性及创新性难以得到发挥。面向计算思维的案例教学法以培养学生计算思维能力为目标,通过精心设计包含知识点的案例,为学生创建问题情境,引导学生对案例进行分析和讨论,在解决问题的实践中增强对算法的理解,掌握相关的理论知识;在教学过程中,没人会告诉你应该怎么办,而是要自己去思考、去体会知识中所蕴含的方法之巧妙,使得学习由枯燥乏味变得生动活泼,也培养了学生主动思考和积极探索的习惯。 4 基于计算思维的案例教学实践
4.1 案例设计
大多数C语言教材都是按知识的逻辑结构体系进行编排的。一开始介绍数据类型、表达式等比较抽象的概念,这样不仅有悖于学生的认知规律,而且容易挫伤学生学习编程的积极性。因此,在第一堂C语言理论课时,可以针对学生的兴趣点,演示一些诸如贪吃蛇、打地砖等C语言开发的小游戏,为学生开设轻松愉悦的学习情境,让他们充分感受到C语言程序设计的魅力,认识到C语言的实用性。
案例质量的好坏直接影响到课堂教学的效果,因此,在教学过程中,教师应根据特定的教学内容谨慎选择教学案例。通常,设计的教学案例应具备以下特点:
(1)相关性。案例是为教学目标服务的[4],因此所选案例首先要注意紧扣教学内容,能够合理地反映所对应的理论知识点,这样,通过后续的案例分析来使学生加深对所学理论知识的理解并能运用到实践中。
(2)针对性。案例不求多而求精,每个知识点或者相关联的多个知识点选用一个具有代表性的案例即可。
(3)可拓展性。选用的案例既要涵盖当前要学的知识点,也可以涉及到后续的学习内容,具有举一反三、触类旁通的作用。后续知识虽然还没有学习,但教师可先做简单介绍以埋下伏笔,让学生先尝试自学,然后带着问题进入新的知识。
(4)趣味性。教师们在设计案例时,应针对当代大学生的特点,尽量选择贴近生活且具有一定趣味性的案例,以激发学生的学习热情。
4.2 课堂实施
课堂实施是基于计算思维的案例教学法的关键。例如,在讲一维数组时,本文设计案例:求20名学生某门课程成绩的平均分,并统计高于平均分的人数。
案例分析:首先定义变量分别存储20名学生的成绩及平均分,那么要定义多少个变量呢?按照前面学过的知识,至少定义21个变量,这样程序中涉及的变量是不是太繁多了?如果学生人数增至200名,难道要定义200个变量保存其成绩吗?显然这种方法不可行,进而教师引出新的知识点——数组。通过这一系列的提问,学生很容易理解数组在程序设计中的意义。接下来详细介绍数组的基本概念及一维数组的定义方法,启发学生如何运用一维数组编写算法。
编程实现:得到了问题的求解思路之后,接下来就要鼓励学生使用C语言编写程序,并进行调试运行。由于本案例还涉及之前学过的选择、循环结构等知识,所以在案例实现过程中,教师可根据学生对这些知识点的掌握程度,适当的进行复习巩固。
总结与拓展:举一反三,提出类似的问题,鼓励学生独立思考,应用一维数组编程实现。对案例进一步拓展:如果每名学生有三门课程,如何统计呢?从而引出新的知识点——多维数组。
5 结束语
C语言课程中处处蕴含着计算思维,笔者在教学过程中运用了融合计算思维的案例教学法,引导学生自主探索,积极拓展思路解决问题,大大提高学生的计算思维能力和创新能力。通过对课程的学习,学生不仅掌握了C语言编程技巧,更重要的是从中领悟到“何谓计算思维,怎样运用计算思维解决实际问题”,并能在实践中自主构建自己的计算思维,从而为将来的学习、工作和研究具备创新思维和创新能力奠定基础。
【参考文献】
[1]Wing J M.Computational thinking[J]. Communications of the ACM,2006(3):35.
[2]劉红霞.基于计算思维的C语言程序设计教学模式改革[J].大学教育,2015(8):22-23.
[3]靳玉乐.案例教学原理[M].重庆:西南师范大学出版社,2003:56-61.
[4]张旭红.案例教学法在VB程序设计教学中的应用[J].科技信息,2008(27):578-592.
[责任编辑:张涛]
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!