《C语言程序设计》教学改革的
- 格式:pdf
- 大小:623.22 KB
- 文档页数:3
(作者单位:平顶山学院信息工程学院)管理科C语言程序设计课程教学改革谢丽明时合生◎一、引言随着高校的大规模扩招,高等教育由原来的精英教育逐渐转化为大众教育,让更多的年轻人能够进入大学深造,给普通人提供了接受高等教育的机会,以期逐步提高我国的国民素质。
高等教育功能的转换,促使高等教育也进行了相应的分化,高等教育由培养高素质的研究型人才进入到研究型、应用型人才培养两种形式。
应用型本科院校旨在培养面向地方经济发展的应用型人才,应用型人才的培养更注重应用性。
应用型本科院校的计算机专业更加强调学生应用性技术的培养,应用性技术是学生未来职业的需求,如何打造扎实的应用性技能是学校和学生关注的焦点。
C语言是计算机应用诸专业的基础课程,旨在培养学生的基础编程能力,为学生之后的专业学习打好基础,基础编程能力的建立是计算机专业教学的基础,如何更好地提高教学水平,使C语言程序设计课程更适合应用型本科学生的接受水平,平顶山学院信息工程进行了多方位的探讨。
二、课程教学改革1.教学改革的背景。
应用型本科院校学生的入学层次相对于研究型院校学生比较低,学生的学习习惯普遍低于研究型院校学生,学习的主动性比较弱。
学生的大学学习很多时候后还要依靠教师的多方监督才能顺利进行,不能进行有效的自主学习。
传统的C语言程序设计课程教学是教师课堂进行知识点的讲授,学生被动的接受,然后学生通过上机实践验证教师的教学实例和根据老师要求编制程序。
应用型本科院校学生情况不适应这种教学模式,学习容易放任自流。
如何调动学生的学习积极性,提高学生的学习主动性,是应用型本科教学亟待解决的问题。
2.教学改革实践。
(1)课堂教学、实验教学一体化。
改变传统的教学模式,C语言程序设计教学不区分课堂教学和实验教学环节。
每周安排六个学时教学,两个学时联排一个大课,教学采用理论和实践紧密相连,边讲边练的教学形式。
每周前两个大课进行教学讲授和实践练习,第三个大课时间安排学生进行讨论和小组编程展示。
《C语言程序设计》教学改革与实践摘要:C语言是计算机专业的基础课程和先导课程,C语言学得好不好,将直接影响到后续其它课程的学习。
因此,在计算机专业课程的学习中,一定要打好基础,学好C语言。
C语言这门课有它自己的特点,在教学过程、方法上要区别于其它课程,要积极改革教学过程及方法方面与教学不相适应的地方,提高C语言教学的效果,让学生学得更扎实。
关键词:计算机;C语言程序设计;教学改革;教学实践0 引言C语言是一种结构化语言。
它层次清晰,便于按模块化方式组织程序,易于调试和维护。
C语言的表现能力和处理能力极强。
它不仅具有丰富的运算符和数据类型,便于实现各类复杂的数据结构,还可以直接访问内存的物理地址,进行位(bit)一级的操作。
C语言在很多方面都可以应用,不仅在软件开发上,而且在各类科研工作中都是需要用到C语言的。
C语言是入门的课程,也是非常重要的课程。
目前,计算机专业的基础课都会有《C语言程序设计》,可见这门课程的重要性。
学习这门课程,可以培养学生的逻辑思维能力以及形成一种程序化的思想。
这门课程在内容上并不是很难,但在现实中却发现,教学效果并不是很理想,很多学生都觉得这门课程枯燥乏味。
在这样的情况下,能学好C语言的学生很少。
但我们却必须要学好这门课程,不然后续的课程会更加难学,或者说几乎就听不懂也不会写。
下面我们先分析现实教学中存在的一些问题。
1 C语言教学中存在的问题一般来说,教学中存在的问题都是包括几方面的,因为教学是教师和学生共同的活动,即有教师方面的问题,同样也会有学生方面的问题、教学方法上的问题、教学过程中的问题、水平评价中的问题,还有学科本身特征所导致的一些问题,同样。
硬件设备、教学环境等外在的条件也是教学中存在问题的因素。
正确认识存在的问题,把问题找出来,再根据不同的问题寻找出每一个问题背后的真正原因,然后对症下药,就可以把问题解决好。
在教学过程中,笔者发现C语言教学主要存在以下几方面的问题:(1)在教学的过程中,主要体现为教学方法上的问题。
《C语言程序设计》教学改革与探索根据高职学生的特点,在教学过程中不断进行教学改革的尝试:采用了体现学生自主学习的任务驱动教学模式,同时运用多种教学方法,把理论教学和实践教学紧密结合,使学生逐步学会分析问题、解决问题的方法,并建构对知识点的理解及解决问题的方式,在实训中重点培养学生的开拓精神及团队意识。
实践证明,该教学模式及相应的教学方法对于提高学生的学习积极性及自主学习能力方面有了显著的进步,教学效果比传统教学方式明显提高。
教学改革教学模式教学方法教学内容c语言是计算机专业学生的入门语言,学好这门语言可以为后续语言和《数据结构》的学习打好坚实的基础。
c语言除了学习必须的基础知识,如:概念、方法和语法规则之外,还要通过实训提高学生的动手和编程能力,这才是学习语言的最终目的。
本人结合多年来的教学经验,根据学生的学习情况,在教学过程中不断进行教学改革,并取得了一些效果,具体如下。
1.教学模式——任务驱动与建构主义教学模式相结合对于c语言程序设计的基本语法知识以任务驱动模式引导学生进行学习,通过精心设计的案例牵引理论教学,以课堂实训任务对课堂讲授内容进行应用,以综合实训任务及课程设计提高理论知识在实践中的综合应用。
在任务驱动教学模式下进行理论教学和实践教学的同时,教师提供给学生相关的资料,引导学生主动学习。
并且在综合实训与课程设计阶段,鼓励并要求学生通过c语言课程网站及丰富的网络资源,查阅有关的资料,逐渐养成自主学习的习惯。
这一模式充分体现了教师的教学目的:培养学生综合利用各种信息资源及自主学习能力。
建构主义教学模式体现在整个教学过程中。
第一,学生通过教师设计的案例逐步学会分析问题、解决问题的方法,并建构自己对理论知识点的理解及解决问题的方式。
第二,为配合案例教学的进行,精心设计了15个实训题目和4个综合设计题目,这些题目学生以小组讨论的形式进行,在互相学习的过程中建构对问题的认识,取长补短,形成自己的想法,培养了学生的开拓精神及团队意识。
机电技术 2012年12月172《C语言程序设计》教学改革的研究*冯 林 付志坚(东华理工大学,江西抚州 344000)摘 要:就如何提高C语言程序设计课程的教学质量,激发大学生在C语言教学中的兴趣,熟练掌握教学内容,开拓大学生的创新意识,文章从教学思想、教学内容、教学模式、教学方法、考核方式等几方面探究了C语言教学改革。
关键词:C语言;编程能力;教学方法;教学质量;教学改革中图分类号:TP312文献标识码:A 文章编号:1672-4801(2012)06-172-03C语言是贝尔实验室的Dennis Ritchie 在B 语言的基础上开发出来的,并逐渐被用于UNIX操作系统的系统软件和应用软件的开发。
不少高校不仅在计算机专业开设了C语言的课程,而且在非计算机专业也开设了C语言课程。
但是由于授课对象都是初次接触程序设计的大学低年级学生,大一上学期开设《大学计算机基础》,下学期就接着开设《C语言程序设计》。
在每学期都要召开期中教学质量检查座谈会上,了解到同一年级不同专业的大部分学生都认为C语言比较难。
根据多年的教学经验,本文分析问题存在的原因,从几个方面探究了改善C语言教学效果的方法,并通过改革取得了一定成效。
1 教学思想的改革传统的教育思想是以知识传承为中心,自然而然培养出的人才大多欠缺研究能力和创新能力,难以适应21世纪社会的需求。
在教学过程中,许多同学经常问:我学了以后到底有什么用呢?会不会过时呢?所以明确学习目的,培养学习兴趣,培养独立思考问题是头等要事,教师在第一堂课上要花一点时间说一说C语言的重要性:1)目前市场上各类工业及民用电子产品和测控系统及测试设备的基础设计与开发多以C/C++、Visual C++语言为工具。
2)DBASEⅢPLUS、DBASEⅣ、PC-DOS、UNIX操作系统、WORDSTAR、各类游戏软件、数据库、聊天室,编制PHOTOSHOP、FLASH、3DMAX等图像设计软件都采用C语言编写。
3)C 语言对后续课程也有很重要的作用,《嵌入式系统原理与设计》、《虚拟仪器》、《DSP技术与应用》都是以C语言为基础。
4) 全国计算机等级考试(二级)C程序设计考试、北京地区普通高等学校非计算机专业学生计算机应用水平测试考试、许多招聘C语言编程人员的就业考试的要求,电路与系统研究生考试也将C语言作为复试科目。
近年来C语言已成为国内外广泛流行的一种通用的计算机程序设计语言。
总之,一定要让学生正确认识C 语言这门课程的重要性,以提高他们学习的热情。
由整体到局部,具体训练、培养学生对C语言的兴趣及正确的思维方式、思维模式、思维习惯,在教学过程中,应该先给出一个比较完整的程序例子。
在这个例题中包含了C语言中的主要语句,让学生对C语言轮廓有一个大致的了解。
整个教学过程中应该把“解题思路、方法、步骤”当作讲课的重点,注重算法是灵魂、是重点、也是难点,而语言只是表现形式。
2 教学内容的改革目前,学生使用的教材是谭浩强《C程序设计》,教材内容包括语法基础、控制结构、数据类型、数组、函数、指针、结构体与共用体、文件等。
总体来说难点比较集中,跳跃性比较大。
在传统的教学过程中,教师们大都按照以下方式进行教学:先讲数据类型及运算符、表达式,接着介绍语法和例题,最后上机做实验,这种教学方法比较单一呆板,缺少灵活性。
本着从易到难、深入浅出的原则,将知识点分解成许多单元,一个单元为一章或一节,将知识点和案例放在同一章或一节中,不要把复杂的概念集中在一起或放在某一章中,每一章都引入新的概念,而每一章的台阶都不是很高。
例如:在讲完算术型的数据类型,运算符及相关的表达式后要求学生编写最简单的实用程序1到100求和,然后借此机会介绍基本输入、输出函数。
这样做台阶小,结合演示系统,师生一起编写程序一起调试,增强他们的自信心。
又如由“教师工资纳税”问题引入*江西省教改项目(JXJG-11-8-12)作者简介:冯林(1971-),男,硕士,副教授,主要研究方向:嵌入式技术。第6期冯林等:《C语言程序设计》教学改革的研究173选择结构,由“猴子吃桃”问题引入循环结构,课后请学生思考“水仙花数”等有趣的问题。
3 教学模式的改革采用“理论课堂与实验课堂相结合,理论教学与实验教学相融合”的全新教学模式。
将课堂理论教学搬到机房,打破传统的讲授和实验分离即计算机类课程理论教学与实验环节独立排课、独立授课的传统模式,将实验和讲课融合在一起,采用老师讲解知识点、演示相关程序、学生动手验证三者结合递次推进的方法。
这样更好地保障了各个知识点在老师讲完之后更快地为学生消化吸收,多种需要训练的技能尤其是实践能力可以即时得到培养,有效地解决了理论教学与实验教学相互脱节,进度不一致的问题,提高了课堂效率。
具体授课模式为:1)老师边讲解边提纲挈领地在txt文件中书写各个知识点,其中主要包括定义、原理、说明、注意事项等,这相当于传统授课方式中的板书。
采用这种方式,一方面避免无板书学生抓不住重点,另一方面避免了简单对照PPT课件讲课而造成的不生动。
2) 用WORD或者其它软件讲解程序算法,而后在txt文件中直接书写程序,之后在TC中演示程序。
采用这种方式的优点是:在WORD中讲解诸如排序等算法时,利用表格可以很方便地表示数组;在txt文件中书写可以根据需要调整字体大小;当堂写程序演示给学生,一方面让学生更深刻地体会写程序的过程以及注意事项,比如空行、缩进、注释等,编程风格的培养直接受老师熏陶,另一方面在老师写程序的过程中,学生随时可以就不清楚的问题提问,可以更好地互动;在TC中演示当堂写的程序,一方面可以让学生学会调试程序的方法,诸如单步运行、观察运行过程中变量值的变化等技巧,另一方面可以让学生学习如何修改出现的错误。
3) 学生动手实践。
在老师演示完程序后,马上要学生操作,此时的操作分几种情况:①学生操作的和演示程序完全相同。
这种情况是在学习新的知识点、或者仅仅是为了训练学生的操作时使用的。
实践证明,这种方式学生对新的知识容易接受,操作容易掌握,而传统的讲解和实验分离的教学,由于讲课后到实验间有一段时间,经常是课堂上老师讲完了到实验的时候学生忘记了,因此这种方式特别有利于学生快速学习新知识和提高动手能力。
②学生操作的和演示程序大致相同。
这种方式的目的是训练学生运用所学知识的能力,通过这样的方式,让学生掌握如何使用所学知识点去觖决类似的问题,经过大量练习后,学生可以初步学会用什么模式解决某一类问题,这样学习的效果是学生很快会举一反三,真正掌握所学知识点。
③学生操作的是需要完全重新编写的程序。
这种训练旨在培养学生独立运用所学知识解决新问题的能力,所给出的问题需要运用以前学过的多个知识点,打破部分学生墨守成规,只会模仿的不良习惯,提高学生综合运用所学知识,解决以前没有遇见过的问题的能力,而这才应该是教育的核心。
“教是为了不教”,只有培养好学生独立解决问题的能力,教育才算成功。
4 教学方法的改革C语言之所以能够生存和发展到今天,完全依赖于不同于其他语种的独特优势,因此主讲老师要充分利用多种教学方法和手段,在教与学的互动过程中培养学生的自学能力,提高独立解决问题的能力。
4.1 采用启发式授课方法启发式是指主讲老师在全面掌握和熟练掌握授课内容的基础上,在讲解介绍新的内容之前,对上一堂课所学知识进行回顾、归纳和总结,希望同学们能用一两句话把上节课的内容高度概括抽象出来,然后引出本节课的内容。
例如,在讲解“数组”一节时,首先提出一个问题,“求8个数中的最大值”。
让学生思考3分钟之后,简要地讲解本节需要掌握的知识——一维数组的定义和初始化,再回顾之前讲过的“三个数求最大值”的方法,让学生依据现在的知识点完成课初提出的问题。
实践证明这种方式能充分调动学生的积极性。
4.2 运用比喻式授课方法比喻式是打比方,通过实际生活中的实例,将抽象复杂的问题简单化、具体化。
例如用“往返跑”解释说明循环,用“区队长和班长”解释二维数组的行指针和列指针,用“房间的号码”解释指针,等等。
4.3 采用探究式授课方法机电技术 2012年12月174所谓探究式教学法是以探究为主的教学。
具体说它是指教学过程是在教师的启发诱导下,以学生独立自主学习和合作讨论为前提,以现行教材为基本探究内容,以学生周围世界和生活实际为参照对象,为学生提供充分自由表达、质疑、探究、讨论问题的机会。
让学生通过个人、小组、集体等多种形式的解难释疑尝试活动,将自已所学知识应用于解决实际问题的一种教学形式。
在理论教学过程中,引导学生以主人的姿态投入到教学和创新过程中,鼓励学生以课题组的方式进行研究性创新性学习[1]。
比如在讲解算法时,可以采用“小组探究式”教学,每一个小组作为一个独立的任务单位,然后给出一系列由浅入深的题目。
让每一小组采取讨论的方式从最简单题目入手用N-S 结构流程图将算法表示出来。
通过这种方式,学生在两小时的学习中很快掌握了算法的表示,学习效率得到了很大的提高。
通过这种方式,学生在学习过程中不但体验到获得知识的乐趣,而且增强了集体参与的能力及与他人沟通合作的能力。
5 考核方式的改革为了检验学生学习的效果,传统的方式是通过期末考试的方式在“纸上谈兵”,即用试卷笔试答题的方式来进行。
然而针对C 语言这种实践性很强的课程来说,传统考核并不全面。
根据该课程的特点,打破传统的考核模式,将考核分为平时实验和期末考核两部分。
期末考核又分为笔试考核和上机考核两部分。
平时实验成绩占总成绩的20%,具体包括平时听课考核情况、上机实验、课外作业、参与问题讨论的情况;期末考核占总成绩的80%,其中笔试考核和上机考核各占一半。
笔试部分重点考察学生的程序阅读、分析、设计能力;上机部分重点考察学生的综合编程能力、调试能力。
6 结束语两个学期的教学实践结果证明,采用以上的教学方法的改革,丰富了教学内容,同时也调动了同学们的学习积极性,改变了学风,教学效果有了明显的提高。
本改革方法对其他计算机程序设计课程的教学也有一定的参考和借鉴意义,值得推广。
(上接第162页)[4] 张 烁,徐爱功,孙贵博.基于移动GIS 的GPS 定位导航系统的设计与实现[J].计算机系统应用.2012,19(7):34. [5] 刘飞,周琳琳,益建芳.GPS 大地坐标向地方坐标转换的实用方法研究[J].华东师范大学学报.2005,3(1):76-77. [6] 陈则王,袁信.一种实用的GPSP 电子地图坐标转换算法[J].南昌航空工业学院学报.2003,17(1):74-75. [7] 张庆全.基于GPS/GIS 车辆监控系统的设计与实现[D].哈尔滨:哈尔滨理工大学,2007:7-8.参考文献[1] 徐洪珍.李茂兰.大学生科技创新能力培养的探索与实践[J ].东华理工大学学报,2009(3) [2] 谭浩强.C 程序设计(第二版)[M].北京:清华大学出版社,2002. [3] 严蔚敏,吴伟民. 数据结构[M].北京:清华大学出版社,2007. [4] 冯林.浅析C 语言程序设计教学[J ].机电技术,2010(1). [5] 沈阳.心理学[M].桂林:广西师范大学出版社,1995. [6] 冯博琴.C 语言大学教程[M].北京:人民邮电出版社,2008.。