C语言程序设计课程教学思考

2017-09-18 07:39韦萍萍崔忠伟
计算机时代 2017年9期
关键词:教学尝试参与式教学C语言

韦萍萍 崔忠伟

摘 要: C语言程序设计思维的养成需要教与学双方的配合。文章讨论了教学中存在的问题,给出参与式教学方式下的教学尝试、教学评价及教学反馈,实践证明对学生的学习具有一定的促进作用。

关键词: C语言; 程序设计; 参与式教学; 教学尝试

中图分类号:TP311.1 文献标志码:A 文章编号:1006-8228(2017)09-64-02

Abstract: The formation of C language programming thinking needs the cooperation between the teaching and learning sides. This paper discusses the problems existing in the teaching, and gives the teaching experiment, teaching evaluation and teaching feedback under the participatory teaching mode. The practice has proved that it can promote the students' study.

Key words: C language; programming; participatory teaching; teaching experiment

0 引言

C 语言程序设计课程是高校計算机专业及部分非计算机专业必修的一门计算机基础课。它通过C语言的语法规则、结构化程序设计方法的学习,使学生了解程序设计的总体思路,掌握程序设计的基本算法,借助上机实践操作,逐步培养学生掌握程序设计的思想和方法,使其具备一定的程序设计和程序调试的能力、问题的求解能力和探索创新能力。

由于C语言是学生可能接触的第一门程序设计课程,对于抽象的程序逻辑无法正确理解,以致于造成程序设计思想错误。传统的教学方法通常在内容上从浅到深,层层递进,配以实验实训,理论上来看是符合教学要求的,但往往学校课堂教学效果并不理想,还比不上培训学校的教学成果。

1 常见教学改革方法

由于传统教学方法已不适应当今的教学环境,所以不断涌现出新的教学方式,主要的教学方法有以下几种。

⑴ 任务驱动教学[1]

教师对每个知识点设计相应的任务,学生自主选择任务,围绕任务展开学习,以任务的完成结果检验和总结学习过程,教师根据学生学习情况补充课堂知识,它改变了学生的学习状态,使学生主动建构探究、实践、思考、运用、解决高智慧的学习体系。

⑵ “翻转课堂”

翻转课堂是教师提前创建视频,学生在家中或课外自由观看视频,在课堂上师生共同交流并完成作业的一种教学形态[2]。

⑶ 参与式教学

参与式教学是一种以学生为教育教学主体,教师组织、设计”活动”的形式,全面调动学生积极参与、创造性学习与发展的教育理念、教育模式,它改变了传统教学模式以教师为核心的模式,加强了师生之间的讨论和交流,充分调动了学生的积极性与主动性,有效地提高了教学质量。

⑷ 慕课[3]

慕课作为一种新型教学模式,以高清晰度的微视频、高质量的教学文本为核心,辅以交流、答疑等机制,近年来在高校中得以实施,将传统的课堂向网络学习迁移,给学生提供了自主选择的学习途径。

⑸ “雨课堂”[4]

2016年6月,学堂在线与清华大学在线教育办公室推出共同研发的教学工具,将PowerPoint与微信结合,课外:使用雨课堂,教师可以将带有MOOC视频、习题、语音的课前预习课件推送到学生手机,学生提前预习;课堂上:学生凭借微信加入教师班级,PPT推送到终端,教师实时答题、弹幕互动,为传统课堂教学师生互动提供了沟通桥梁。

2 教学存在问题讨论

新的教学模式的出现弥补了传统教学模式的不足,但从学生的学习态度、自身基础等角度来看,其实也存在一些问题。

⑴ “听得懂,不会做”

掌握C语言,必须从其抽象的程序逻辑入手,只有将基本的程序逻辑弄懂,才能谈得上灵活运用,但这恰恰是初学者的一大障碍,相比于模仿、背诵程序段,掌握基本程序逻辑是事半功倍的办法。若教师的课堂、微课或PPT课件在讲解逻辑上不够透彻,而学生的基础不够好,好似听懂了内容,但真要做题做却无头绪,反而需要在课堂下多花时间,重新学习,那课堂的“教”就没有产生良好效果。

⑵ 学生厌学,无兴趣

C语言程序设计是大学生新进校就接触的计算机课程,通常都以简单枯燥的运行方式呈现,学生并没有感受到它的作用,对于非计算机专业的学生,更是觉得难以理解为什么要学,因此学习不积极,作业没按时完成,或是敷衍了事。

⑶ 缺乏关注

由于班级多数是大班制,课堂时间有限,无论是传统教学的教师主导地位,还是其他分组讨论、实施项目的情形,总有一些学生不能表现自己,得不到想象中的关注,课堂的积极性就会降低。

3 教学思考

“教”和“学”是两个相辅相存的部分,随着社会的发展,人类文明的进步,教学重心已慢慢从“教”迁移到“学”,“教”的比重在减少,它的主要任务应着重于基本逻辑讲解、重点和难点讲解。所有的教学改革都是为了能更好地学,更快地学,理论、实际措施具有科学性,但不能忽略的是,具体实施中每一环节学生的学习效果。因此学生的学习效果评价是教学过程的重要组成部分。

下面讨论几个具体实施环节。

⑴ 夯实基本程序逻辑基础

以“学”为主的课堂需建立在学生基础知识良好,具有一定的自学能力情况的基础之上,而初接触程序设计的学生,还需要在“教”上下功夫,做好引导。endprint

对于比较抽象的程序逻辑,如分支、循环语句的嵌套,可以采用微课讲解或课堂上讲解方式。课堂上讲解可采用参与式教学,将基本程序逻辑编排在游戏中,小剧本中,让学生完成、体验并总结。

游戏充满趣味,对于提高学生注意力、学习积极性有一定帮助,并且有很多游戏过程、小剧本就象程序执行过程一样,所以将基本程序逻辑编排在游戏、小剧本中,能让学生很快理解知识、掌握知识。

示例:讲解一维数组的两层循环结构。

游戏:将全班分成两个大组,每组选出三个人编号为1,2,3,然后,按编号对应组成三个小队,每队依次以三局的石头剪刀布定输赢,最终以赢的次数多的小组获胜。

⑵ 注重过程考核

语法枯燥、逻辑抽象、范例单调是学生失去兴趣的原因,期末考试已无法衡量学生学习效果,也无法促进学生的学习。只有将考核分发到一些固定阶段或固定的时间,才能起到督促的作用。

以某些需掌握的知识点为单元,以一定的周期如两个星期,一个月来进行定期、定量考核,能使学生正视当前需要完成的任务,及时解决存在的问题。

⑶ 科学的评价方式

传统的作业批改、阅卷方式均为手工操作,优点是能人为的发现学生未掌握的知识点,但是费时、费力。现在多数院校采用在线测试系统来进行试验、课程考核及评价,快速、便捷,学生能反复测试,但是程序设计答案并不一定是惟一的,在线测试系统并不能囊括所有答案,因此某些正确答案无法得分。这会使学生的思维成固定模式,抑制学生的创新,因此可考虑当出现系统里没有的更佳答案时,学生可以另外提交,由教师人工评分。

4 结束语

通常来讲,计算思维包括如何求解、计算机操作过程及机器实现方法三部分[5]。C语言程序设计课程是通过引导学生学习、掌握这种思维方法,有效地将其用于问题的求解,以达到培养他们的计算思维能力[6]。

面向过程的语言,相对于面向对象语言不直观,入门的知识枯燥难懂,因此普遍感到课程比较难学、编程思维难以转换,面对问题不知如何下手解决,如果没有大量的练习,学生的挫败感、畏惧感会打击学生学习的积极性。如何能帮助学生解惑、指引,激发学習兴趣、调动学习积极性是教师应该解决的关键问题。

传统的课程内容教学,学生对程序设计的全局意识不够,而引入CDIO思想将会帮助学生理解程序设计。对于不同专业学生的教学,可考虑引入其专业背景下的案例、问题。

参考文献(References):

[1] 郭银章,王丽芳.基于项目任务驱动的C语言程序设计课程

教学改革与实践[J].计算机教育,2017.2:41-44

[2] 孙延靖,王俊丽.《C语言程序设计》翻转课堂教学改革与实践[J].

价值工程,2017.8:216-217

[3] 陈娟,张长海,邓春燕,李河.高级语言程序设计课程的慕课建

设与思考[J].计算机教育,2017.1:9-13

[4] 曾晓晶,樊斌.“雨课堂”在《C语言程序设计》课程中的应用研

究[J].现代计算机(专业版),2017.3:14-17

[5] 梁川.探究C语言程序设计课程中的计算思维[J].信息与电

脑(理论版),2015.11:147-148

[6] 蒋宗礼.计算思维之我见[J].中国大学教学,2013.9:5-10endprint

猜你喜欢
教学尝试参与式教学C语言
基于Visual Studio Code的C语言程序设计实践教学探索
基于C语言的计算机软件编程
朗朗韵味话经典
文言文的阅读教学改革的一点尝试
高职高专院校C语言程序设计教学改革探索
普通生态学参与式教学模式的探索与实践
智能手机普及化时代高职院校思政课教学创新研究
参与式教学在“旅游与生活”植入式在线课程改革中的运用
作文启蒙教学要从一年级抓起
参与式教学法在初中生物教学中的应用