C语言教学初探

时间:2022-07-23 08:33:45

C语言教学初探

摘要: C语言涉及的概念和规则较多,使用灵活,是一门难学也难教的课程。本文总结了C语言程序设计教学中应当引起注意的一些问题,提出了改进方法,以促进C语言教学水平的提高。

关键词: C语言 程序设计 教学研究

1.C语言的特点

C语言是计算机软件开发领域中流行的程序设计语言之一,它使用灵活、功能丰富、表达力强、生成目标程序质量效率高、可移植性好、语法简洁精妙,很便于描述算法,同时还可以方便直接地控制计算机的底层硬件,使我们能够深入系统底层进行编程,既可用来编写系统软件,也可用来编写应用软件,应用范围很广。其由于功能强大、效率高、简洁灵活和可移植性强的特点,在软件开发领域深受编程人员的喜爱。

C语言由于是理想的结构化语言,同样适合于程序设计教学,所以成为计算机语言教学的主流语言。通过对C语言的学习,可以使学生掌握基本的编程思想,为学习其他编程语言奠定基础。C语言掌握的程度,不仅能直接影响到学生对后继课程的学习,同时对他们以后的学习和发展也起着至关重要的作用。同时,它也是计算机等级考试的主要考试科目。大部分学校采用C语言作为非计算机专业学生计算机等级考试二级语言课程。

2.教学中存在的问题

然而,但从目前的教学情况来看,学生在学习C语言时往往存在着一定的问题,实际掌握的情况并不理想。由于C语言涉及的概念多、规则广、使用灵活,初学者很难掌握,容易出错。对于大多数的初学者,C语言灵活的语法结构使他们望而生畏,繁琐的细节使他们头晕脑张。同时由于缺乏对计算机结构的全面了解,缺乏对计算机硬件尤其是内存结合很紧密的一些概念,学生基本上很难理解和掌握C语言。

(1)课堂教学中没有突出语言本身的特色。C语言作为一门高级计算机语言,和其他计算机语言有很多相似甚至相同的地方,对于已经掌握计算机基础和其他语言的人,就不能再重复这些知识。一些教师对C语言本身的一些特有的概念,尤其指针、链表的应用,强调不够,既浪费了学生课堂上宝贵的时间,又使得学生对新知识理解不深。

(2)没有充分调动学生学习的积极性。在目前的课堂教学中,还是以教师讲授为主,没有充分发挥学生学习的主动性,启发式教学没有得到充分运用。教师不了解学生课前预习的情况,不了解学生的真正需求、难点和问题所在,挫伤了学生学习的积极性和热情。

(3)对于实践教学环节重视不够。C语言是一门实践性很强的计算机语言,但目前的实践课教学存在很多弊端。例如:学生不明确上机实验的目的,实验的内容不清楚,想干什么就干什么,没有相应的实验要求,考核中上机没有一定的比例。这样,语言课就成了单一为了考试的一门课,其结果有的学生连最基本的实践操作也不会做。

3.教学内容及方法的改革

学习程序设计不仅是为了掌握一种开发工具,更重要的是用计算机解决问题。因此在教学过程中,教师应改革传统的语法学习内容,将算法教学融入到语言教学中,通过实例由浅入深,使学生在解决具体问题的过程中掌握算法的精髓[2]。

在实践教学过程中,要对《C程序设计语言》教学内容进行调整和整合。首先,对书上的主要内容――I/O格式、控制结构、指针等内容,采用讲、练结合的方法让学生掌握精华部分,对结构体、公用体、文件等内容采用以学生自学为主、答疑为辅的方式让学生掌握这部分内容。其次,针对学生对语言课程学习的单调性和枯燥特点,采用多种教学方法,并在重点内容的教学上辅以大量的课内习题课和课外练习方式,让学生牢牢掌握基本内容。再次,让学生做针对性很强的练习来加强学生的理解。最后,对学生在作业过程中暴露的主要问题集中解决、个别问题单独解决,以此来弥补个体差异,同时兼顾到大多数学生的利益。

在教学过程中,要坚持“结构化程序设计”原则。所谓结构化程序设计,是组织人的思维,以便在合理的时间里,将计算任务用较容易理解的方式表示出来。结构化程序设计方法的基本思路是,把一个复杂的问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。因此,在学生初学程序设计时,这一方法可以养成良好的思维习惯。在教学中,应当向学生强调这样的几点:第一,程序质量的优劣首先取决于程序模块结构的清晰度,要按照一定的标准、一定的原则、一定的风格设计。第二,结构化程序的三种基本结构:顺序、分支、循环,它们是构成程序的基本单位。如果在程序中,所有的模块都只使用这三种单入口、单出口的基本控制结构,那么,不论程序包括多少模块,也不论一个模块包含多少个基本控制结构,整个程序仍然能够显示清晰的流程,这就实现了程序语言的“结构化”。第三,结构化程序设计的基本方法是自顶向下、逐步细化、模块化设计、结构化编码。逐步细化总是和自顶向下结合使用,一般也把逐步细化看作自顶向下的具体表现。

4.加强实验环节,注重学生动手能力的培养

C程序设计是一门实践性很强的课程,要把学生在课堂上所学的知识在计算机上用程序设计反映出来,必须加强实验环节的教学,强化实验能力和学生的动手能力[3]。为此要做好以下几点:

(1)编写符合学生实际情况的实验讲义,注重学生综合实验能力的培养。

(2)每一堂实验课前,检查学生的实验预习报告,了解学生的预习情况,并对本次实验内容提出具体的要求,在实验课结束前对实验中存在的问题进行总结。

(3)加强实验环节注重学生动手能力培养。

在实验教学过程中注意培养学生的动手能力、独立科研能力及合作精神,绝不允许“一人动手大家看”这种“放羊式”现象出现。学生在做完实验后都由教师检查其结果,打分后方可离开,凡无结果或结果不理想者,必须补做或提供条件让其重做,促使学生在实验中勤动手,也使学生们具有成就感。对于部分综合型的实验尤其强调分工合作,实行小组长负责制,争取小组成员一起协调配合完成。

5.改进考核方式

采用书面考试、上机考试、课程设计相结合的方式全面考核。计算机语言课的实践性决定了它不要求学生死记硬背各种语法规则和语句格式,而是要求学生在解决实际问题的过程中掌握程序设计方法,提高逻辑思维能力。因此,计算机语言课的考核宜采用书面考试与上机考核相结合的方式,辅之以对课程设计情况的考查。书面考试可以侧重对基本概念的理解和掌握方面,编程题目的涉及面可以较宽,以考查学生对基础知识的掌握情况。上机考核可以让学生在规定时间内对给定的程序设计题目编出程序,并在机上调试通过,题目可以是基础知识的综合运用,这样可以考查学生的综合应用能力和快速编程能力。课程设计的具体做法可以结合实验课,将学生分成若干小组,每组布置一个稍大的有实际应用背景的程序设计题目,组内分工各人完成一部分,再由其中一个人负责完成联合调试任务。通过对课程设计情况的考查,了解学生运用语言解决实际问题的能力和协作编程的能力。

6.结语

以上是本人在C语言教学过程中的几点体会,现总结出来,谨供各位同行参考,不当之处,敬请指正。教师需要在教学过程中不断总结,在教学方式、教学方法、课题设计等方面进行探索,为C语言课程建设积累经验,促进计算机语言教学学科的建设。

参考文献:

[1]谭浩强.C程序设计[M].北京:清华大学出版社,2001.

[2]张敏霞.程序设计语言课程教学方法改革的探索与实践.中国高教研究,2004,(2).

[3]掌明,王经卓.C语言教学改革与学生动手能力的培养.淮海工学院学报,2004,(2).

上一篇:数字图像处理技术案例教学法探讨 下一篇:排球课教学中产生运动损伤的相关调查与研究