杨磊 马杰
摘 要:本文针对C语言教学中存在的若干问题,利用互联网技术,把C语言的学习和移动应用相结合,把学习中晦涩难懂的知识点通过微课视频的方式,让学生课后观看,用微作业的形式进行适当考核,检测观看和学习效果,培养自学能力。
关键词:互联网;学习兴趣;微课;微作业
中图分类号:TP312 文献标识码:A
1 引言(Introduction)
C语言程序设计作为大学新生的程序入门课程,它具有很强的实践性和应用性,集抽象性、逻辑性、实践性于一身[1]。C语言本身功能强大、应用范围广泛、数据处理能力强、目标程序效率高、可移植性好,适用于编写系统软件,已经成为计算机科学与技术、软件工程、网络工程等电气信息类专业的一门核心课程[1]。C语言本身语言结构清晰、逻辑强,有很好的结构化程序设计的思想,而且C语言对于数据的使用,可以很清楚的解释计算机采用二进制的设计思想,它与低端的硬件以及高端的应用都能很好的融合,非常适合作为教学语言。同时,对于学生理解计算机解决问题的过程和方法,培养学生解决问题的能力并进行逻辑思维能力的训练都非常有帮助。所以,各高校都很重视C语言的教学。然而,C语言的数据类型和运算符种类繁多、指针变化多端,语言规范难理解,对于初学者来说仍然是很困难的。随着互联网+时代的来临,需要教师改变传统的教育教学理念,利用现代教育技术改革现有的教学方法和模式,提高学生学习的兴趣,降低学习的难度,使C语言能得到广泛推广和应用。
2 C语言教学存在的问题(Problems in C language
teaching)
C语言程序设计的目标是培养学生的程序设计理念、掌握程序设计的基本方法,在对学生进行程序设计基本理论与技术技巧能力训练的同时,突出对学生进行解决实际问题的编程能力的培养,鼓励学生学以致用。但是从学生角度来说,学生学习C语言的目的不明确,学习的主动性和积极性不高,一味的逆来顺受,学校开什么课程就学什么课程,很少从本专业出发,考虑这门课程的学习对以后课程和工作的影响,没有一个全面和整体的认识,总觉得能及格就可以了。所以,对于当代的大学生而言,当他们面对既抽象又枯燥无味的C语言时,遇到了很大的困难,它不像office那么直观,效果明显,所以学生的学习兴趣不浓,学习效果不好,不能理解程序设计的思想,不能用计算机语言解决问题。而且从一线教学实践来说,很多学生每天都去上课,但是当出现一点问题以后就开始退缩,C语言课程又是一个循序渐进,环环相扣的课程,前面基础知识没有理解,后续的内容就听不懂了,所以就止步不前。以前在家长皮鞭下成长起来的大学生,脱离了家长的管束,学习的自觉性和主动性很差,课后的大部分时间都在玩手机,自我放纵。
对于教师,整个教学活动的主体,在整个的教学过程中,为了完成教学任务,采取的教学模式主要是以传统的讲授为主,老师讲,学生听,仅注重知识的灌输,不重视学生对于程序的理解,不重视学生学习的热情和积极性,缺少与学生之间的互动交流,主要是以纯数学的抽象案例讲述,为了完成教学任务,追求教学进度,内容讲的过多,学生来不及消化和吸收。由于有些班级学生多,很多同学有些问题没有及时解决,而程序设计本身各知识点的关联性很大,问题越积越多,直到后面像听天书一样了,学生由此产生挫败感和厌学心理。
3 互联网时代下的C语言教学改革(C language
teaching reform in the internet age)
随着现代多媒体技术、现代网络技术和现代通信技术的发展,互联网已经进入到社会的各个层面,作为新时代的大学生,手机成了必不可少的工具,如何使手机成为学习的一个重要工具而不仅仅是通信的主要手段,成为我们在互联网发展中要考虑的问题。现在网络上已经有了很多的关于C语言学习的网络资源,从网络精品课程到MOOC时代的来临,再到微课的制作[2]。微课是近几年来备受学生喜爱的一种学习方式。它时间短,主要以解决某个知识点为依托,内容具体实用,所以利用现代的教育教学工具,利用互联网技术,设计并制作出质量优良的微课,积极的推动和引导学生自主学习主动学习[3]。对C语言程序设计课程进行教学研究与实践的主要目的是要提高学生学习的主动性和自觉性,把教学的整个过程由被动学习向主动学习教转化,使学生能主动得将知识内化,举一反三,吸收利用。利用现代化的设备使学生可以随时随地在线或非在线学习。在教学过程中主要进行以下尝试。
3.1 提高教师自身素质
随着现代教学设备和教学理念的引入,传统的教学观念和教学方法已经跟不上形势的发展了,老师作为教学的主体将面临很大的挑战。如何将课堂教学由原来单纯的传授知识型向培养学生的知识能力型的转换,以提高学生学习兴趣和主动性,提高学生的竞争力。这对高校教师提出了新的要求和挑战。教师作为培养人才的主体,随着现代化教学理念的提出,随着反转课堂和微课的出现,使得教师也要不断的学习先进的教学理念,提高自身的素质,从实践出发,须对课程进行仔细的研究,要将社会实际需要与课程教学相结合。要密切关注学科和学生的变化,因材施教,因势利导,掌握好教学的内容和进度,不能一成不变。
3.2 培养学生学习兴趣
兴趣是最好的老师。如何培养学生的兴趣,通过一线的教学,笔者认为对于C语言程序设计的学习过程,主要是要让学生不断的获得满足和成就感[4]。而且学生对于课程的作用和应用领域了解较少,所以在实际讲授的过程中要根据专业的不同,针对本专业的特点,要跟后续专业课的老师进行沟通,让学生了解学完这个以后将来能做什么。除此以外,给学生展示一些他了解的知道的小游戏入手,直观的认识到C语言的主要作用。
在实际教学中,笔者能主动通过QQ群、手机、微信等和学生建立不间断的联系,鼓励大家提问,随时解决遇到的问题,让学生跟上节奏,不掉队。能提出问题的同学都是有学习主动性和学习兴趣的同学,要对他们进行语言和行动上的鼓励,不断建立他们的自信心。同时,在教学中让学生体会先模仿后创造的效果,以点带面,从已知到未知,学会用计算机的语言思考和解决问题。大家目前的主要状态是不愿意看书,所以要引导他们回归课本,先从改编书上的程序开始,当他们看到正确的结果后,他们的满足感和成就感就增加了一些,当问题解决以后,还要再不断的鼓励,增加题目难度,让学生适应程序的变化,不断地克服困难,增强学习信心,学会学以致用。
3.3 改革教学模式
当前通用的C语言教材中,通常先给出一般的语法格式,然后介绍语法规则,再进行语法要点的讲解,最后给出实例,这种模式有些抽象生涩,不利于学生理解。笔者认为讲解的主要模式是把生活中熟悉的案例最为引导,让学生思考解决问题的办法以及最后的结果,然后引出计算机解决问题的模式,计算机对于这个问题的解决方法和结果,通过对比,让学生有个深刻的体会和认识,当意识到计算机的便捷后,让学生有继续探寻的欲望,提高了学习的主动性。
在教授的过程中,无论如何组织,都免不了要介绍晦涩难懂的语言规范,需要学生记住理解,对于没有学过语言的同学不理解就不容易记忆,所以,在互联网时代,利用手机结合现有的微课技术,笔者将C语言难理解的知识点进行分解,一个视频片断不超过10分钟,利用生动的动画专题讲解小的知识点,主要讲解if分支结构、for循环语句、do-while和while循环语句。这个是后续所有学习的基础,让学生反复观看,同时看完视频后,后面还有相应的题目,检测观看的视频的效果。同时记录学生观看视频的次数,做微作业的次数以及分数,记录每题出错的概率,后台进行分析整理,然后在后续的课程中再次进行重点讲解。还可以让学生提交对本视频的修改意见。为了避免学生出现让别人替看的问题,在学生观看视频的过程中,随机的抓拍学生的头像进行保存,提高诚信,主要是让学生在手机上完成对所学知识的巩固。目前大多数的微课主要强调对基础知识点的讲解,笔者认为对于大学生而言,课前预习是很多同学都做不到的,课堂上能把基本知识深入浅出的讲解,布置任务,课后当在学习过程中遇到问题时,微课视频是一个很好的解决方法,它不像MOOC那么长,只有5—10分钟的时间,主要是解决一个知识点的问题,学生也能集中注意力去看,主要还培养了学生的自主学习的能力。学习效果如何,后面还有微作业支撑,让学生能够自我检测,发现问题继续学习。这样就充分发挥了手机的作用,用学习占据了学生看手机的时间,对课堂教学是一个有利的补充。
3.4 改革考核机制
考试是检验学生对知识掌握情况的重要方式之一,这是一直被认为比较公平的一种手段,但不是唯一的。笔者认为在C语言程序设计的整个考核过程中,应能充分体现学生对于程序设计思想的理解,而不仅仅是对孤立知识点的掌握。有了微课的支撑,有了微作业的出现,C语言程序设计课程考核体系由三部分组成,学生出勤和课堂表现占20%,微作业的完成情况占20%,期末考试占总成绩的60%。主要是让学生在课余时间通过观看微视频完成微作业,解决课堂上没有理解和解决的问题,达到学习目的。
4 结论(Conclusion)
目前社会的发展都离开计算机,各行各业都需要计算机程序设计完成深度开发和应用。所以C语言程序设计课程作为大部分理工科专业学生学习的第一种程序设计语言,如果学生能入门并掌握,并钻研下去,对其专业后续的发展将产生深远的影响。在整个教学过程中,老师应能因材施教,时刻关注学生的学习情况,即时调整教学内容和方法,不能一味的追赶教学进度,能够把提高学生学习的能力作为一切教学的设计与安排的出发点,帮助学生找到学习的动力,自主学习,为后续的课程打好基础。要让学生利用好现代化的通信工具,尤其是手机和电脑,要为了学习服务,要让学生遇到困难后,能通过手机观看微课视频,解决问题,不断地提高
学习的主动性和自觉性,达到教学的目的,所以微课中微视频的开发以及微作业的应用,对学生利用课余时间利用手机这种现代化的通讯工具,对学习的学习将起到很好的促进作用,要使学生能快乐地进行C语言的学习。
参考文献(References)
[1] 谭浩强.C 语言程序设计[M].北京:清华大学出版社,2000.
[2] 杨久红,王小增.互联网+时代背景下精品资源共享课建设
研究——以“C语言程序设计”课程为例[J].兰州教育学院
学报,2015.
[3] 宛西原,汪霞.非计算机本科专业计算机程序设计课程的改革
思考[J].计算机工程与科学,2014,36(01):57.
[4] 马杰,杨磊.C语言程序设计改革探索[J].软件工程师,2013,
17(07):27-28.
作者简介:
杨 磊(1979-),男,博士生,讲师.研究领域:网络安全,物
联网.
马 杰(1979-),女,硕士,讲师.研究领域:网络安全.