浅论C语言教学方法

时间:2022-07-16 02:10:15

浅论C语言教学方法

摘要:本文根据C语言的教学重点和目的,探讨如何提高C语言课程的教学质量,使学生更好的掌握C语言的基本语法和程序设计算法,培养和提高学生的编程能力。

关键词:C语言;教学方法;多媒体教学

中图分类号:G642文献标识码:A文章编号:1009-3044(2007)04-11160-03

1 引言

C语言是国内外广泛使用的计算机语言,它兼顾了高级语言的易用性、可移植性好等优点,又具有低级语言效率高、可直接对硬件进行操作等大部分功能,是计算机应用人员应掌握的一种程序设计工具,同时也是高校计算机专业的一门重要的专业基础课。通过C语言教学可以帮助学生掌握程序设计的基本方法,其教学效果的优劣直接影响到学生对后续专业课程的学习以及在计算机方面的应用能力和水平,因此,必须加强C语言的教学效果。下面根据教学实践讨论如何进行C语言教学。

2 改进教学方法、激发学习热情

《C程序设计》这门课程一般是在低年级开设,学生对程序设计没有完整的概念,学习C语言的目的不清楚,加上在以往的教学中大多数都是教师讲学生听,学生处于被动的学习状态,课堂气氛沉闷,久而久之学生就会感到厌烦,对学习失去热情。要改变这种状况,在C语言教学中应明确教学目的,加强师生交流,充分发挥教师和学生的主观能动性,激发学生学习的热情,使学生能独立思考,勇于创新,善于解决实际问题。

2.1 改变教学方法,培养学生兴趣

针对初次涉及程序设计的学生,教师在讲课前应先介绍C语言的用途,例如计算机类考试都要涉及到C语言;可用C语言编写各种系统软件(如Windows)和应用软件以及一些小游戏;《C程序设计》是专业课的基础等等,使学生明白学习C语言的目的和目标。

《C程序设计》一开始就介绍了一些程序代码和函数使用规则,而学生对语法、函数一无所知。如果按照书本顺序进行讲解,学生一开始理解起来很吃力,就失去了对C语言的学习兴趣。而学生一般对上机比较感兴趣,在第一节课可以先介绍C语言的上机步骤,然后调试一些现成的程序,甚至可以是一些小游戏,这样可以引起学生的好奇,从而使其对程序设计产生兴趣。

2.2 充分利用多媒体,提高教学效果

多媒体辅助教学能够化静为动,寓教于乐,培养和激发学生的学习兴趣,能将抽象的问题形象化,便于学生对知识点的理解和运用,还能节约传统的板书时间,使课堂讲解时间相对增加,增大课堂信息量。

2.1.1 合理制作教学课件

制作课件的目的是为了提高教学质量,如果课件内容安排不当就会达不到预期的效果,反而会分散学生的注意力,影响课堂的学习质量。如何制作课件可从以下几个方面考虑。

首先,在形式上要朴实大方而不花哨。适当的视觉效果和音频效果能吸引学生的注意力,但不能过于注重。如果屏幕弄得花花绿绿的或者每次出现新内容都有响声,这虽然从心理上刺激了学生的视觉和听觉,但会使学生主次不分,分散了学生的对知识点的注意力。

其次,在内容上要充分利用课件的优点,化抽象为具体。C语言具有高级语言和低级语言双重特点,有些语句和算法非常抽象,学生难以理解。在制作这部分内容的课件时,可以利用图形或动画效果模拟程序执行时计算机内存单元数据状态和变化过程,增强学生对程序的直观感觉。《函数》中一个难点就是对递归算法的分析。递归程序的执行过程分为两个阶段:回推和递推。学生对回推过程分析起来很容易,但对递推过程的分析容易出错,这时教师可借助图形来分析递归程序。以河内塔为例:

图2中每一个椭圆表示调用一次函数hanoi,程序按照箭头所指方向执行。通过这张图,学生可以看清楚程序执行时调用和退出一个函数时参数的变化和返回的结果。

还有在《指针》这一章中,对指针的操作非常抽象,学生理解起来比较困难,教师可以利用PPT中的动画效果简单动画,模拟程序执行时对指针的操作及相关数据的变化。

2.1.2 综合运用多种教学模式

在教学中,课件是起辅助作用的,不能单纯的演示课件,仍然要发挥教师的主导作用。在演示课件的同时要凭借自身的丰富教学经验和生动的讲解,来调动学生的积极性。对于例题中的算法,在讲解完以后,还可以现场调试程序,得出结果,加强学生对程序设计的直观感受,这可以培养学生学习程序设计的兴趣和主动性。

由于使用课件节省了板书时间,造成学生没有时间记笔记,这时可让学生集中精力听课,课后教师将课件放到机房的共享文档中,供学生拷贝。在使用课件后节约了很多课堂时间,使得课堂讲解内容增加,速度加快,这要求教师要把握好课件的播放速度,使学生更好地接受教学内容。另外,现代多媒体教学方式并不能完全取代传统的教学方式,应该将二者恰当地结合起来,发挥各自的优势,这样才会收到令人满意的教学效果。

2.2 精讲算法,培养学生好的编程思想和方法

语言只是程序设计的形式,而算法才是灵魂。没有正确的算法,计算机解决不了任何问题,因此,要将分析算法作为教学重点。有一些学生对C语言的语法和句式掌握的很好,但一面对问题就一片空白,不知如何运用所学知识来解决,这就要求教师在讲程序设计前要先介绍如何分析问题、设计算法并将算法正确表示出来。

例如利用函数调用来解决问题时,很多学生不知怎样来设计形式参数。教师在讲解这部分的例题或习题时应先引导学生回顾形式参数的作用――用于接收被调函数需要主调函数传给它的数据――然后分析被调函数需要主调函数传给它什么类型的数据,有几个。有的可通过全局变量传递,有的就需要通过实际参数传给形式参数,这样就设计出了形式参数的数目和类型。

在讲解解决某一个问题的算法时,可将多种算法联系起来分析,通过对一个问题提出多种解决方案,来开阔学生的思维,培养他们的编程技巧和方法。

例:猴子吃桃问题:一只猴子采了很多桃子,第一天吃了一半加一个,以后每天都吃了头一天剩下的一半加一个,直到第十天还有一个桃子,问猴子采了多少个桃子?

这个问题可以用循环结构解决:

2.3 恰当设计问题和作业,增加师生交流

在教学过程中,教师既要按教学计划的要求组织学生系统的学习,也要按照学生在学习过程中遇到的问题有针对性的重点施教。这样不仅能系统的学好基础知识和技能,提高学生分析和解决问题的能力,激发学生的积极性,而且能增加师生交流,使教师了解学生的具体学习情况,不断改进教学方法,做到教学相长。要达到这些效果以下方法可供参考。

首先,教师可根据教学计划和要求,在每次上新课之前利用几分钟时间,就前面课程的知识点向学生提问,以了解学生对所学知识的掌握程度,并对学生的回答作简短的点评。对回答正确的给予表扬,错的不直接否定,只要有理就给予肯定,以培养学生的自信心。这种方法可以促使学生课后温习,提高学生的自学能力,调动学生学习的主动性和自觉性,对教师的教学也有帮助。

其次,教师还可以通过分析作业与学生交流。每次课后可适当布置一些小作业,每章结束后集中讲解,并鼓励学生对同一问题提出不同的做法,这样不仅能活跃课堂,还能培养学生的创新意识。另外,为了加强学生对编程的练习,教师可根据教学大纲布置几个贯穿几章内容的编程作业。这样可以使学生将前后所学的知识连贯起来,更有利于他们对知识的理解。

3 重视实践,提高学生的应用能力

C语言程序设计课程的实践性很强,学生只听不练根本达不到学习该课程的目的,因此,在C语言教学中应加大程序设计方法方面的内容。

3.1 合理设置课程,增强学生的实践能力

为了增加《C程序设计》的实践内容,可增设《C语言课程设计》课程,用以提高学生在程序设计方面的能力。在《C语言课程设计》教学中教师引导学生参与程序的编制过程,去设计程序、分析程序,并优化程序,实现“实践――理论――实践”的循环,使理论与实践达到紧密的结合。

课程设计题目可分为基本题和综合题,基本题与《C程序设计》章节内容同步。在设计题目时,前面章节的基本题尽量能为后续章节的基本题作铺垫,这样,学到后面时能前后贯通,有利于学生对前面知识的理解。综合题是对整本书内容的总结和运用,应与现实生活相贴近。例如设计一个学生学籍管理系统,要求能实现插入、删除和查询等功能。学完数组时,要求学生用数组来实现。随着学习的深入,要求学生用结构体数组和函数实现,最后用动态存储分配和指针实现。每经历一次修改,学生不仅可以将所学的知识运用于实际,而且通过不断优化程序,可以提高他们分析问题和解决问题的能力,激发学习兴趣。这种有一定规模的设计题可让学生分组分工合作,以培养他们分析解决问题的能力和团队合作精神。

《C程序设计》教给学生的是运用概念解决问题的方法,学生学到的是现成的理论知识。而《C语言课程设计》则教会学生去思考、探索,寻找解决同一问题的其他答案,并综合运用所学知识解决问题。这样不仅能记牢所学知识,还能从反复的练习中获得成就感,并主动去学习,从而培养了学生自主学习的能力。

3.2 明确上机任务,培养学生动手能力

学习C语言的目的除了是要掌握一门程序设计语言,更重要的是培养动手能力。而动手能力的培养则依赖上机实验。在上机之前,教师应先研究上机内容并布置明确的上机任务,同时要求学生编好要调试的程序,为上机做好准备。上机内容除了调试程序外,还要要求学生分析程序算法结构。调试成功后要求学生根据所学知识优化算法,这样可以提高学生的实际应用能力。实验结束后,要求学生写好详细的实验报告。

上机实验除了能提高学生的动手能力,还能加强学生对C语言中细节性问题的理解。例如变量要“先定义,后使用”、变量不能与关键字同名等等,这些都很容易被忽视,但通过上机调试自己编写的程序,可以加深对这些细节性问题的印象。

4 结束语

良好的C语言教学效果不仅可为学生学习后续专业课做好准备,还能为学生学习其他高级语言奠定良好的基础。在实际教学中还有很多问题需要注意,这要求教师不断探索积累,总结出更好的教学方法,提高C语言的教学质量。

参考文献:

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

[2] 谭浩强. C语言程序设计上机指导[M]. 北京:清华大学出版社,2000.

[3] 唐建国. 浅谈C语言的教学[J]. 福建电脑,2006.

本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文。

上一篇:当前计算机泄密的主要途径及预防措施研究 下一篇:基于GPS的地图匹配方法的研究与实现