论文部分内容阅读
【摘要】随着学校培养的高技能人才不断增多,C语言作为一门专业基础课,学习C语言成为一个新的难点。针对多年来教学中发现的各种问题,应该对于非计算机专业的C语言教学作出相应的调整和改变。
【关键词】C语言;算法;非计算机专业;理论教学;上机实验
1 引言
近些年来,随着学校的不断发展,我校专业的发展也突飞猛进,学校的办学层次和规模也有了很大的变化。现在学校有了中专,高级技工,技师几个层次,每个层次都有计算机教学,特别是C语言教学又成为其中的一个难点。作为很多非计算机专业的一门必修课,其教学已历经几年,针对C语言的教学探讨从未停止过。然而与之伴随的是学生抱怨难学,教师抱怨授课效果不佳也从未停止过。针对这些新问题,新情况,我在近年的教学实践基础上,对C语言课程教学提出了如下的改进意见。
2明确学习的目的,激发学习动力
学习C语言的目的或许并不在于直接使用它编写功能强大的应用程序,这并不意味着C语言“没有用处”。在培养学生基本的逻辑思维能力、计算思想等方面,C语言充当着重要的角色。
首先,应当让学生明白C语言的历史,经历许多年成为学习的基础语言。
其次,促使学生树立C语言的普遍适用思想,根据各专业的不同特点,使其明白,学习C语言不但不是没有用处,而且是大有用处。C语言作为一门基础性计算机语言,对各专业后续课程的开设起着开路先锋的作用,比如说对于数控专业,C语言应该放在其《数控编程》这门课之前,还有电子类专业《单片机》的学习也是一样,应该首先学习C语言。
第三树立正确的动机,激发学生的兴趣,使其正确面对C语言学习。实践证明,在C语言教学中穿插应用程序实例,特别是一些典型的,有生活趣味的程序,会大大激发学生的学习兴趣。例如经典的百钱买鸡的例子:鸡翁一钱值五,鸡母一值钱三,鸡雏三值钱一。对于此问题,可以引导学生,如果通过人工解决,需要较长的时间,而且不定能完全解决问题。如果通过计算机的快速运算,将思路告诉计算机,那么这个问题将变得很容易。我们首先分析一下,此问题中有两类量:三种鸡的数量与三种鸡的价格;以及两个约束条件:三种鸡数量之和及三种鸡钱数之和都必须是100。为此设公鸡数为i;母鸡数为j;小鸡数为k。则必须满足:
i+j+k=100
5*i+3*j+(1/3)*k=100
通过授课教师的精心设计和搭配,C语言完全可以成为学生愿意听、愿意练、乐于探索其中的一门课程。
3针对不同专业不同层次调整授课模式
现阶段各类C语言教材在内容编排上,多数还是注重单个知识点的传授和语法规则的阐述为线索,辅以相适应算法的讲解,将重点放在了C语法上。这种安排固然有其优点,其对于计算机专业,这种安排无疑是有效的。但对于非计算机专业,C语言往往是他们接触到的第一個语言,还没有任何基础,容易进入误区,过分强调知识点和语法的掌握,容易导致学生在思考C语言问题时缺乏全局观念,不是为了解决问题而写程序,陷入为学语法而写程序的境地,与学习C语言的初衷相悖。
有鉴于此,我认为学习C语言的讲授方法应当以完成实际算法的需要为线索,引出单个知识点和语法。在算法的选择上,尽量多选择贴近实际生活的算法。例如在“选择结构”这一章,首先提出问题:判断一个年份是否闰年,要符合下面两个条件之一①能被4整除,但不能被100整除②能被100整除,同时能被400整除。根据以上规则,画出判断一个年份是否闰年的算法流程图。然后再问:如何在C语言中实现这样的算法。该算法的核心是选择结构,换言之,如何在C语言中实现选择结构,引出if语句进行讲解。
4运用多媒体教学
通过直观、形象的多媒体教学,使教师从复杂的推理论证中解脱出来,使学生在有效的时间内掌握更多的知识点,从而提高教学质量。就C语言来说,多媒体技术的优势在于能够展示程序的动态变化过程,能够深入表现程序执行过程中的输入输出和内存变化。多媒体技术的应用要适得其所。在算法的构建过程讲解等方面,师生交互至关重要,这个过程并不适合在屏幕上完成,应当尽量以共同讨论的方式完成算法的构建。对于需要使学生明晓其变化过程的一些内容演示,则适合通过直观的多媒体展现,如不同类型变量占用的内存大小,使用指针进行简介操作,参数的传递,内存变化等。
5着力提高上机课质量
上机实验是C语言课程的重要组成体。可以说,上不好上机课,就学不好C语言。如何提高上机课的质量,已成为提高C语言教学质量的当务之急。
首先,加强上机课和理论课的联系。首先,在理论课上将上机任务题目进行讲解。其次,指导学生建立编译错误档案。C语言运行过程中遇到的各种编译错误,有时会因为一个小小的错误而不知所措,耗费大量时间。总结经验,可以看出,诸如丢失分号,变量未定义都是常见的错误。实践证明,这种建立错误档案的方法可以大幅度提高C语言上机课效率。
综上所述,C语言教学作为一门专业基础课程,核心是培养学生的逻辑思维和计算能力。必须认识到非计算机专业的C语言课程存在着很多自身的特点,不能将专业教材和教学方法照搬过来。在教学中应当遵循“算法重于语法,语法重于编码”的原则组织实施授课,这是笔者得出的结论。也希望这些论述能有利于提高C语言的教学质量。
参考文献
[1]谭浩强.C程序设计.北京:清华大学出版社,2005.
[2]彭春意等.试论如何有效提高“程序设计”课程实验教学效果.计算机教育,2007(7)
【关键词】C语言;算法;非计算机专业;理论教学;上机实验
1 引言
近些年来,随着学校的不断发展,我校专业的发展也突飞猛进,学校的办学层次和规模也有了很大的变化。现在学校有了中专,高级技工,技师几个层次,每个层次都有计算机教学,特别是C语言教学又成为其中的一个难点。作为很多非计算机专业的一门必修课,其教学已历经几年,针对C语言的教学探讨从未停止过。然而与之伴随的是学生抱怨难学,教师抱怨授课效果不佳也从未停止过。针对这些新问题,新情况,我在近年的教学实践基础上,对C语言课程教学提出了如下的改进意见。
2明确学习的目的,激发学习动力
学习C语言的目的或许并不在于直接使用它编写功能强大的应用程序,这并不意味着C语言“没有用处”。在培养学生基本的逻辑思维能力、计算思想等方面,C语言充当着重要的角色。
首先,应当让学生明白C语言的历史,经历许多年成为学习的基础语言。
其次,促使学生树立C语言的普遍适用思想,根据各专业的不同特点,使其明白,学习C语言不但不是没有用处,而且是大有用处。C语言作为一门基础性计算机语言,对各专业后续课程的开设起着开路先锋的作用,比如说对于数控专业,C语言应该放在其《数控编程》这门课之前,还有电子类专业《单片机》的学习也是一样,应该首先学习C语言。
第三树立正确的动机,激发学生的兴趣,使其正确面对C语言学习。实践证明,在C语言教学中穿插应用程序实例,特别是一些典型的,有生活趣味的程序,会大大激发学生的学习兴趣。例如经典的百钱买鸡的例子:鸡翁一钱值五,鸡母一值钱三,鸡雏三值钱一。对于此问题,可以引导学生,如果通过人工解决,需要较长的时间,而且不定能完全解决问题。如果通过计算机的快速运算,将思路告诉计算机,那么这个问题将变得很容易。我们首先分析一下,此问题中有两类量:三种鸡的数量与三种鸡的价格;以及两个约束条件:三种鸡数量之和及三种鸡钱数之和都必须是100。为此设公鸡数为i;母鸡数为j;小鸡数为k。则必须满足:
i+j+k=100
5*i+3*j+(1/3)*k=100
通过授课教师的精心设计和搭配,C语言完全可以成为学生愿意听、愿意练、乐于探索其中的一门课程。
3针对不同专业不同层次调整授课模式
现阶段各类C语言教材在内容编排上,多数还是注重单个知识点的传授和语法规则的阐述为线索,辅以相适应算法的讲解,将重点放在了C语法上。这种安排固然有其优点,其对于计算机专业,这种安排无疑是有效的。但对于非计算机专业,C语言往往是他们接触到的第一個语言,还没有任何基础,容易进入误区,过分强调知识点和语法的掌握,容易导致学生在思考C语言问题时缺乏全局观念,不是为了解决问题而写程序,陷入为学语法而写程序的境地,与学习C语言的初衷相悖。
有鉴于此,我认为学习C语言的讲授方法应当以完成实际算法的需要为线索,引出单个知识点和语法。在算法的选择上,尽量多选择贴近实际生活的算法。例如在“选择结构”这一章,首先提出问题:判断一个年份是否闰年,要符合下面两个条件之一①能被4整除,但不能被100整除②能被100整除,同时能被400整除。根据以上规则,画出判断一个年份是否闰年的算法流程图。然后再问:如何在C语言中实现这样的算法。该算法的核心是选择结构,换言之,如何在C语言中实现选择结构,引出if语句进行讲解。
4运用多媒体教学
通过直观、形象的多媒体教学,使教师从复杂的推理论证中解脱出来,使学生在有效的时间内掌握更多的知识点,从而提高教学质量。就C语言来说,多媒体技术的优势在于能够展示程序的动态变化过程,能够深入表现程序执行过程中的输入输出和内存变化。多媒体技术的应用要适得其所。在算法的构建过程讲解等方面,师生交互至关重要,这个过程并不适合在屏幕上完成,应当尽量以共同讨论的方式完成算法的构建。对于需要使学生明晓其变化过程的一些内容演示,则适合通过直观的多媒体展现,如不同类型变量占用的内存大小,使用指针进行简介操作,参数的传递,内存变化等。
5着力提高上机课质量
上机实验是C语言课程的重要组成体。可以说,上不好上机课,就学不好C语言。如何提高上机课的质量,已成为提高C语言教学质量的当务之急。
首先,加强上机课和理论课的联系。首先,在理论课上将上机任务题目进行讲解。其次,指导学生建立编译错误档案。C语言运行过程中遇到的各种编译错误,有时会因为一个小小的错误而不知所措,耗费大量时间。总结经验,可以看出,诸如丢失分号,变量未定义都是常见的错误。实践证明,这种建立错误档案的方法可以大幅度提高C语言上机课效率。
综上所述,C语言教学作为一门专业基础课程,核心是培养学生的逻辑思维和计算能力。必须认识到非计算机专业的C语言课程存在着很多自身的特点,不能将专业教材和教学方法照搬过来。在教学中应当遵循“算法重于语法,语法重于编码”的原则组织实施授课,这是笔者得出的结论。也希望这些论述能有利于提高C语言的教学质量。
参考文献
[1]谭浩强.C程序设计.北京:清华大学出版社,2005.
[2]彭春意等.试论如何有效提高“程序设计”课程实验教学效果.计算机教育,2007(7)