论文部分内容阅读
摘 要:文章叙述了国内外高校计算机入门编程教育语言的变迁,分析了当前C语言的教学现状及存在的一些问题,并以五邑大学为例,对C语言程序设计课程教学进行了一些探索和实践,针对性的制定不同专业的教学大纲、编写教材,探索一些新的课堂教学手段以及对当前的考核模式进行改革。从实际的教学情况来看,取得了较好的效果。
关键词:C语言;教学探索;教学实践;程序设计
中图分类号:G642 文献标识码:A
Abstract:This paper describes the abroad and domestic changes of introductory university computer programming language education,analyzes the current teaching situation and some exists problems of the C language,and makes an example by Wuyi University,carried out some exploration and practice on the C programming language teaching,made targeted syllabus for different professional,written textbook,explore some new classroom teaching methods and reform the current assessment model.From the practical teaching situation these reform measures achieved good results.
Keywords:C language;teaching exploration;teaching practice;programming
1 引言(Introduction)
国内外计算机编程入门教育经历了Pascal、Basic、C、C 以及Java语言的变化历程,就目前而言国外特别是美国高中和大学里以Java语言为首选编程教学语言,而国内工科院校则以C语言为计算机编程入门教学语言。
C语言程序设计是计算机相关专业包括通信工程等专业的必修课程,也是数据结构、C 程序设计、数据库原理等后续相关专业课的基础,在计算机相关专业的课程体系中起着重要作用,国内高校也在越来越重视该课程的教学[1-3]。
以五邑大学为例,1990年代中后期C语言是编程入门教育课程,学时数72学时,后续还开设了C语言课程设计(36学时)和C语言高级编程课程(54学时),总学时达到了162学时。21世纪初,受国内外的影响,我校的编程语言入门教育也转为C ,然而教学效果非常不理想,导致学生在高年级的专业课程学习中感到十分困难,普遍难以达到所需要具备的编程能力。当前,许多专家教授已意识到了这个问题,并达成了一个基本的共识,即要强调C语言在整个专业教学的重要地位,回归它的本质,作为编程入门教育课程。
2 C语言教学现状(Current teaching situation of the C language)
C语言作为一种面向过程的程序设计语言,其语法细节相对繁琐[4],集抽象性、逻辑性、实践性于一身[5,6]。大部分学生难于理解和掌握,导致学习积极性不高、学习效果不理想。但从重要性来讲,目前市面上的大部分软件都是采用C语言编写的,包括一些主流的操作系统,因此要想提高我国的整体软件水平,必须重视C语言的教学[7]。
2011年,五邑大学进行了较大规模的扩招,并举行了全校性的大规模2011版培养方案的研讨,还邀请企事业用人单位参与讨论,反复修改制订教学计划。计算机学院2011级5个专业(专业方向)8个班级明确以C语言为编程入门教育课程,而信息工程学院则将C语言程序设计作为院级平台课,从2011级9个专业(专业方向)18个班级开始执行,学校其他工科专业也相应的开设了类似的程序设计课程。2011版培养方案尽管强调了C语言的核心重要地位,但学时数却在减少,2011级、2012级和2013级计算机学院各专业《C语言程序设计》学时数为64(含18学时的课内实验),另开设16学时的课程设计,2011级信息工程学院各专业《C语言程序设计》学时数为32,同步开设16学时的课程设计,2012级和2013级调整为总48学时,其中含12学时上机实践,不再安排课程设计。面对当前五邑大学C语言的教学现状,如何在学时数减少的情况下保证教学质量,使学生建立完整的程序设计思想,系统的掌握C语言,就成为了我们迫切需要解决的问题,而继续沿用过去的教学方式、大而全的教学内容组织显然是不合适的,因此需要对C语言的教学进行改革,以适应新形势下的教学需要。
3 教学探索与实践(Teaching exploration andpractice)
3.1 教学内容
程序设计是一种具有创造性的工作,它具有一定的抽象性,而且需要使用数学的方法去描述一些问题[8]。这使得在C语言程序设计的课程教学中,必须打破原有的教学模式和知识体系,从注重语法细节和基本用例的讲解转变为注重能力的培养。在教学过程中不能以是否将C语言所有知识点都讲授完为教学目标,而应该转向以培养学生“分析问题和解决问题”的能力为核心,淡化语法细节,让学生建立完整的程序设计思想。
针对不同专业的教学需求和学时数的区别,制定不同的教学大纲,注重能力培养为主,以C语言基本体系结构为基础,覆盖C语言基本语法集。信息工程学院各专业侧重于基本命题的求解和编程,将构造类型和文件的读写作为选讲内容。而计算机学院各专业则侧重于综合性和设计性问题的求解和编程,特别强调指针的应用,动态内存分配以及链表的基本操作,重点培养算法设计能力。
关键词:C语言;教学探索;教学实践;程序设计
中图分类号:G642 文献标识码:A
Abstract:This paper describes the abroad and domestic changes of introductory university computer programming language education,analyzes the current teaching situation and some exists problems of the C language,and makes an example by Wuyi University,carried out some exploration and practice on the C programming language teaching,made targeted syllabus for different professional,written textbook,explore some new classroom teaching methods and reform the current assessment model.From the practical teaching situation these reform measures achieved good results.
Keywords:C language;teaching exploration;teaching practice;programming
1 引言(Introduction)
国内外计算机编程入门教育经历了Pascal、Basic、C、C 以及Java语言的变化历程,就目前而言国外特别是美国高中和大学里以Java语言为首选编程教学语言,而国内工科院校则以C语言为计算机编程入门教学语言。
C语言程序设计是计算机相关专业包括通信工程等专业的必修课程,也是数据结构、C 程序设计、数据库原理等后续相关专业课的基础,在计算机相关专业的课程体系中起着重要作用,国内高校也在越来越重视该课程的教学[1-3]。
以五邑大学为例,1990年代中后期C语言是编程入门教育课程,学时数72学时,后续还开设了C语言课程设计(36学时)和C语言高级编程课程(54学时),总学时达到了162学时。21世纪初,受国内外的影响,我校的编程语言入门教育也转为C ,然而教学效果非常不理想,导致学生在高年级的专业课程学习中感到十分困难,普遍难以达到所需要具备的编程能力。当前,许多专家教授已意识到了这个问题,并达成了一个基本的共识,即要强调C语言在整个专业教学的重要地位,回归它的本质,作为编程入门教育课程。
2 C语言教学现状(Current teaching situation of the C language)
C语言作为一种面向过程的程序设计语言,其语法细节相对繁琐[4],集抽象性、逻辑性、实践性于一身[5,6]。大部分学生难于理解和掌握,导致学习积极性不高、学习效果不理想。但从重要性来讲,目前市面上的大部分软件都是采用C语言编写的,包括一些主流的操作系统,因此要想提高我国的整体软件水平,必须重视C语言的教学[7]。
2011年,五邑大学进行了较大规模的扩招,并举行了全校性的大规模2011版培养方案的研讨,还邀请企事业用人单位参与讨论,反复修改制订教学计划。计算机学院2011级5个专业(专业方向)8个班级明确以C语言为编程入门教育课程,而信息工程学院则将C语言程序设计作为院级平台课,从2011级9个专业(专业方向)18个班级开始执行,学校其他工科专业也相应的开设了类似的程序设计课程。2011版培养方案尽管强调了C语言的核心重要地位,但学时数却在减少,2011级、2012级和2013级计算机学院各专业《C语言程序设计》学时数为64(含18学时的课内实验),另开设16学时的课程设计,2011级信息工程学院各专业《C语言程序设计》学时数为32,同步开设16学时的课程设计,2012级和2013级调整为总48学时,其中含12学时上机实践,不再安排课程设计。面对当前五邑大学C语言的教学现状,如何在学时数减少的情况下保证教学质量,使学生建立完整的程序设计思想,系统的掌握C语言,就成为了我们迫切需要解决的问题,而继续沿用过去的教学方式、大而全的教学内容组织显然是不合适的,因此需要对C语言的教学进行改革,以适应新形势下的教学需要。
3 教学探索与实践(Teaching exploration andpractice)
3.1 教学内容
程序设计是一种具有创造性的工作,它具有一定的抽象性,而且需要使用数学的方法去描述一些问题[8]。这使得在C语言程序设计的课程教学中,必须打破原有的教学模式和知识体系,从注重语法细节和基本用例的讲解转变为注重能力的培养。在教学过程中不能以是否将C语言所有知识点都讲授完为教学目标,而应该转向以培养学生“分析问题和解决问题”的能力为核心,淡化语法细节,让学生建立完整的程序设计思想。
针对不同专业的教学需求和学时数的区别,制定不同的教学大纲,注重能力培养为主,以C语言基本体系结构为基础,覆盖C语言基本语法集。信息工程学院各专业侧重于基本命题的求解和编程,将构造类型和文件的读写作为选讲内容。而计算机学院各专业则侧重于综合性和设计性问题的求解和编程,特别强调指针的应用,动态内存分配以及链表的基本操作,重点培养算法设计能力。