程序设计基础课程教学内容设置初探

2013-04-29 20:05:17邵燕
新课程·下旬 2013年9期
关键词:教学内容

邵燕

摘 要:C语言程序设计是一门通用的程序设计基础课程,是学习其他程序设计语言的基础语言。但是由于C语言丰富的功能所带来的繁多的数据类型和复杂的语法结构以及枯燥难学的知识点,不适合高职院校的学生。而以C语言作为初学者工具,由程序设计基础课程代替C语言课程更符合高职院校的培养目标。围绕“如何设置程序设计基础课程的内容才能使学生有浓厚的学习兴趣并能培养学生基础能力”,分析了程序设计基础课程内容的设置。

关键词:C语言;程序设计基础;教学内容

一、高职院校计算机专业C语言课程的教学现状

C语言程序设计是一门通用的程序设计基础课程,是学习其他程序设计语言的基础语言。正因如此,C语言往往被许多高职院校采纳,作为学生学习计算机课程的入门课程。但是对于高职院校学生来说,由于基础较本科生薄弱一些,情绪化学习较为突出,对感兴趣的东西学习积极性较高,但对于比较枯燥的程序设计语言的学习,学生表现不出浓厚的学习兴趣和积极性,导致学生学完C语言这门课程后,虽然了解一些皮毛,但是如果要动手编写程序,却没有思路,不知从哪儿下手,教学效果极不理想。

二、原因分析

造成这种结果的原因主要有以下三个方面:

1.C语言丰富的功能所带来的繁多的数据类型和复杂的语法结构给初学者带来了不少困难,尤其对于高职院校的学生,学生在有限的课堂学习时间内很难熟练掌握这门课程。即使有的学生很用功,努力掌握了C语言中的数据类型和语法,但是后期的学习中,特别是开设面向对象程序设计课程时,C语言课程中学到的这些数据类型和语法几乎用不到,有用的是解题思路,也就是算法。

2.大多数C语言教材,都是按照先介绍数据类型,然后介绍语法格式、语句规则,最后给出实例的过程讲述,缺少针对例题分析解题思路的教材,导致课程内容枯燥,无法吸引学生的学习兴趣、调动学生学习的积极性。

3.C语言是专业基础课程,学生心里很清楚,也抱着要学好的心态。但是随着C语言课程的深入学习,知识点越来越多,难度也越来越大,尤其是指针,许多原本想学好C语言的学生想听却听不明白,越听不明白越不想听,越不想听越听不明白,形成了恶性循环,最终导致厌学的心态。

三、程序设计基础内容的设置

综上所述,单纯开设C语言作为计算机专业的基础课程,与高职院校培养学生应用型、技能型人才这一目标不符,因此,有必要进行教学课程的改革。依据高职院校的培养目标定位,在内容上以所学知识能够完成培养学生基础能力和提高学生学习兴趣为原则,对教学计划进行科学的调整,开设“程序设计基础”课程代替C语言课程。在程序设计基础课程教学中,突出C语言只是作为初学者工具的作用,在教学内容中多增加一些数据结构课程中常用算法以及面向对象程序设计中的内容,使学生在掌握C语言基本语法的前提下,用C语言逐步实现由简单到稍微复杂一些的算法,提高学生的学习兴趣,再增加一些关于面向对象的知识介绍,为学生下一阶段面向对象程序设计语言课程的学习打下基础。

具体内容设置如下:

1.掌握程序设计领域最基本的概念。基本概念是学生思考程序问题的基础,将来会形成学生学习和工作中思考程序设计工作的框架。作为计算机专业的学生,对程序设计中的基本概念必须有清晰的认识,例如,什么是程序、数据?数据在计算机内部是以什么形式存储的、怎样存储的?计算机的工作过程是怎样的?等等,程序设计基础课程的教学必须围绕着这些基本概念展开,在教学过程中帮助学生掌握基本概念,让学生在基于基本概念思考问题、使用具体程序语言解决问题的过程中学会程序设计。

2.C语言简单的数据类型、基本语法及顺序、选择和循环结构。C语言作为程序设计基础中算法实现的工具,有必要让学生掌握C语言的基本数据类型和基本语法,对C语言中学生较难理解的、对培养基础能力没有帮助的知识不讲或略讲,而对工程实际应用较多,对培养基础能力有较大帮助的部分可以进行适当的加强。例如,C语言教材中的输入/输出函数调用语句、条件语句、循环语句、数组等就是基础,学生比较容易理解,简单易学,掌握这些知识就可以满足完成培养学生基础能力的需求。

在教学过程中,教师可以引入项目流程规范和方法去分析程序,淡化语法,每个例题和作业都要求学生按照规范的项目流程进行,通过分析、设计、画流程图、编写程序并进行调试、测试几个步骤最终完成程序,让学生养成良好的编程习惯,为将来踏上工作岗位打下基础。

3.用C语言实现数据结构中的常用算法。算法是解题方法的精确描述。算法一方面具有具体化、程序化、机械化的特点,同时又有高度抽象性、概括性和精确性。因此,将解决具体问题的方法整理成算法的过程是一个条理化、精确化和逻辑化的过程,将有助于培养学生的逻辑思维能力。

计算机语言在不断地发展,但无论计算机语言怎么发展,其中核心的要素——算法却是一成不变的,变的是语法,也就是不同语言采用了不同的表达方法。IT是个肥沃而勃勃生机的生态圈,不断孕育着一代又一代的新技术、新概念。无论IT的浪潮是多么朝夕莫测、滚滚而来,计算机和软件发展背后的根基却岿然屹立、经年不变,算法便是基础之一。我国著名的计算机教育专家、信息学奥林匹克竞赛国家队总教练和领队吴文虎可谓桃李满天下,带过的学生包括张朝阳等,而在IT开发领域的学生更是不在少数。据他称,他的许多在软件领域的学生纷纷表示,在工作初期多会追随新潮和时髦的技术,但随着工作年龄的增加和编程技术的日臻完善,却发现阻碍技术深入的绊脚石不是具体的技术,而是算法这些基本的东西。由此可见,对于计算机专业的学生,应把算法的学习放在首位。

教学过程中,在学生具备了编程基础的前提下,教师将经常用到的一些简单算法给学生讲解,并指导学生自己动手实现编程,这样可以增加学生的成就感,继而吸引学生的兴趣,调动学生学习算法的积极性。学生有了兴趣和积极性,学习的主动性自然也就有了,学生就会主动自己找题目、找项目练习,拓宽自己的知识面,教师再一步步地深入讲解一些稍微复杂的算法,引导学生实现编程。一些经常用到的算法,要让学生反复练习,熟练掌握,这样将来运用的时候才能灵活自如。

4.面向对象知识介绍。面向对象方法学是最近几十年伴随着计算机软件开发技术而迅速发展起来的一个研究领域。面向对象方法学认为客观世界是由各种各样的对象组成的,复杂的对象可以由相对比较简单的对象以某种方法组成,甚至整个世界也可以从一个最简单的对象开始,经过层层组合而成。从这个意义上讲,整个客观世界可以认为是一个最复杂的对象。面向对象技术已成为计算机领域的主流技术,在计算机界,面向对象方法与技术已成为最受关注的研究热点之一。

目前高职院校计算机专业的课程设置中,大多都开设了Java或C#等面向对象编程的课程,而C语言是面向过程的编程语言,为了让学生在学完程序设计基础课程后能顺利地向面向对象编程过渡,有必要在程序设计基础课程中增加一些面向对象程序设计的知识,尤其是面向对象的一些概念。面向对象是一种思想理论,不深入理解面向对象理论就无法做到运用面向对象语言编写程序。在程序设计基础课程中加入面向对象的知识,可以让学生早接触、早理解面向对象,为后期的面向对象程序开发课程打下良好的基础。

参考文献:

[1]吴燕凤.C语言教学的现状与改革探析[J].大众科技,2012,7(14).

[2]张芹.浅谈C语言程序设计教学的现状及其改进措施[J].计算机光盘软件与应用,2011(18).

[3]宋海涛.高职院校C语言教学初探[J].今日科苑,2009(04).

(作者单位 山东商务职业学院)

猜你喜欢
教学内容
挖掘数学教学内容所固有的美
“启蒙运动”一课教学内容分析
等差数列教学内容的深化探究
谈音乐教学内容的有效利用
《我应该感到自豪才对》的本体性教学内容及启示
文学教育(2016年27期)2016-02-28 02:35:15
“清末新政”也可作为重要的教学内容
线性代数课程学—研—用教学内容及模式探索
精心设计教案 重构教学内容
中学语文(2015年18期)2015-03-01 03:50:47
西方经济学教学内容“中国化”的探索
对外经贸(2014年1期)2014-03-20 13:58:20
《内经》诊法教学内容简析及与中医诊断学的衔接