您好,欢迎来到爱问旅游网。
搜索
您的当前位置:首页C语言程序设计课程教学改革的研究与实践

C语言程序设计课程教学改革的研究与实践

来源:爱问旅游网


C语言程序设计课程教学改革的研究与实践

摘要:本文提出在教学过程中,采用分段、任务驱动的教学,培养学生对高级程序设计课程的兴趣及正确的思维模式,加强实践训练和项目设计,注重教学过程的设计,从而提高学生的综合素质。

关键词:分段教学;任务驱动;实践教学;教学过程 文献标识码:A

C语言是一门实践性比较强的课程,在课程设置上应该采取课堂教学和上机实践1:1,使学生在听了理论内容后立即能够自己进行实践,学习的目的在于应用,希望学生能够重视实践环节,不满足于“上课能听懂,教材能看懂”,而是自己去琢磨程序的思路和方法,鼓励创新。

在教学过程中,对该课程采用分段教学,即将本课程的内容按结构分为4个阶段,每个阶段学习与参加考试,目的是为了让学生在上一个阶段掌握大部分内容的基础上去学习下一个部分,直至全部内容系统地学完。我们将课程内容大致分成如下四个部分:

第一部分:

1. 概述

2. 数据类型、运算符和表达式

3. 最简单的C程序设计──顺序结构程序设计

第二部分:

1. 选择结构程序设计

2. 循环结构程序设计

第三部分:

1. 数组

2. 函数

3. 预处理命令

第四部分:

1. 指针

2. 结构体和共同体

3. 文件

第一部分授课时间很短,虽然将数据类型、运算符和表达式作为一个部分,但在实际教学过程中,应将一些基本的数据类型、运算符和表达式融入到了一些最简单的程序里面,即第一部分的2和3是融合在一起进行教学的。对学生来讲,实例教法更合理,更能让大家接受。如果单纯地讲数据类型,不仅比较枯燥,学生不易理解,而且一个一个去解释需要更多课时。通过第一部分的学习和测验,学生能够掌握一些最基本的程序编写方法。

经过第二部分的学习,一些高级的表达式等也都在选择和循环中学到了,而且对结构化程序设计有一个大概的了解。切记,在这一部分的最后应该注意一些经典算法的讲解,如阶乘(递归与非递归)、猴子吃桃子问题等,强调对算法的掌握,如枚举法、归纳法、迭代法等。第二阶段学习以后,学生应基本上能够编写简单程序了。

然后在第三部分对学生进行深入教学,数组和函数也比较重要,要求学生能够自己定义各种类型的数组,能够进行模块化设计的程序设计,在数组中融入一些排序、插入算法,在模块化程序中,将一些经典的算法放入其中。或者提供一些比较生动的函数(如简单图形、小游戏),可以是教师事先设计好子函数,要求学生插入主函数中运行,看运行结果,学习起来也比较轻松。第三阶段就要求学生要思考,学会编写程序。

最后一个部分也是比较难的一个阶段,指针是C语言的一个难点,但是有了前面三个阶段的学习和测试巩固,同学们能够顺利地接下来去学习。由实例引入,对学生讲明其重要性,不要过分强调其难度,否则会让学生望而生畏。

采取分段教学的实施,学生掌握知识的循序渐进的过程更加巩固了。

2以任务驱动加强程序设计课程的实践教学

2.1程序设计课程应强调实践性环节

程序设计课程是一门实践性很强的课程,包括课堂教学和实验教学两部分。实验教学是课堂教学不可缺少的补充,实验教学质量的好坏直接影响课程的整体教学效果和质量,只听不练是学不好的,因此必须多编程、多上机调试。只有经过上机测试,编写的程序达到了预期的目的,才能说是基本掌握了编程知识。因此,要加强实践性教学环节。我们认为:

(1) 在教学计划的安排上要增强实践性教学的学时,最好达到理论和实验学

时比例1:1。

(2) 在教学过程中,作为教学主体的教师除了讲述理论外,应尽可能地开设习题课,引导学生思考和给预学生自己分析问题的锻炼机会。

(3) 在有限的设备条件下,学校尽量提供好的实践环境和实践机会,尽可能地开放实验室和部分机房,鼓励学生进行工作,培养思考的能力和创新精神。

2.2以任务驱动法实施实践教学

在C语言程序设计课程的实验教学中引入任务驱动,教学过程如图1:

(1) 结合学生情况,精心设计任务

任务驱动实施实践教学模式,根据教学目标和学生实际制定具有真实性、整体性、开放性、可操作性、和适应性的任务,在设计任务时,必须考虑到学生现有的知识结构和能力水平,让学生调动原有的智力背景来构建新的知识体系。

(2) 分析任务、探索研究

提出任务后,让学生讨论、分析任务,根据实际情况提出问题,要采用先粗后细,逐步求精的方法,需要学生通过自主探索完成对问题的理解、知识的应用和意义的建构,在完成任务的过程中再去解决相应的问题。

(3) 边学边实践,完成自主学习任务

在任务的引导下,学生边学边实践。精心设计的任务贯穿整个学期,与理论教学进度相一致。边学边实践的过程中,学生始终处于主体地位。在教师的引导下,学生充分发挥主动性和创造性,不仅让学生亲身感受认知的过程,而且培养提高学生解决问题实际能力和创新意识。实际上任务的完成标志着学生实践能力的提高,学生也能体验到任务完成后的成就感,从而激发他们进一步学习兴趣和积极性。

(4) 协作学习,培养协作精神

由于C语言程序设计实践的学时数是有限的,每位学生完成C语言程序设计的比较大的题,在时间上不允许,而求解方法单一,因此采用协作学习的方式

来完成全部学习任务。

协作学习就是把学生分成小组形式,通过组内的合作讨论,相互交流信息,取长补短,共同完成任务,通过协作学习,学生能够相互启发、相互促进,驱动学生更加强烈的创作欲望。学生们的动手操作能力和提出问题、解决问题的综合能力在同学的交流合作、老师的启发引导的良性循环中逐步得到培养。同时,协作学习还可以促进学生间良好的人际关系,进一步培养学生的协作精神。

3强化教学手段,建立和有效利用网络辅助教学

采用良好的教学手段,可大大提高教学效果。C语言程序设计的教学可实现在多媒体教室进行教学,取代传统的粉笔加黑板的教学模式,采用与教材配套的多媒体课件(教学自行制作的课件),真正贯穿精讲多练的原则,图文并茂,从根本上改善教学效果,提高教学质量,激发学生的学习兴趣。

在网络技术高速发展的今天,开发基于校园网的多媒体课件,并以校园网为中心,进一步发展基于Internet的教育网络,才能更好地满足现代教育的需求。基于网络的多媒体课件的优势在与它突破了时空的,增加了学习机会,有利于扩大教学规模,提高教学质量、降低教学成本。学生可以在自己方便的时间、合适的地点,按照自己的需要和方式,运用更加丰富的教学资源来进行主动学习。为此应建立C语言教学网站,在够建网络教学平台时我们因注意以下几点:

(1) 有待进一步扩充网络资源

(2) 有待进一步提高教学课件制作水平

(3) 有待培养能创建、参与网络文化的师资队伍

(4) 有待创建多边互动教学机制

(5) 有待创新教学模式

4采用科学合理全面的考核方式,培养学生动手能力

4.1综合运用笔试、上机考试等多种考试形式

要想真正科学全面地考查学生是否建立了严谨的程序设计思想、是否具体有一定的上机编程能力,必须采用多种考试形式的结合,针对不同的知识类型采取不同的考试形式。如:考查学生的常识性知识可采用闭卷考试形式;考查学生知识转化能力、应用能力、实际解决问题能力、自学能力等,可采用开卷考试形式。一定程度上讲,开卷考试对学生的要求更高。而要考查学生上机实践能力,如程序调试、改错等可采用上机考试。一门计算机语言课程采用多种考试形式的结合才可以多方面、多角度让学生自己认识到本课程的学习中存在的问题,继而加以改进。

4.2引入多角度评定成绩的因素,建立客观、全面的考核机制

一张考卷决定学生在本门课程的学习中是合格还是重修未免失之武断,成绩的评定不能以一张试卷为准,要引入多方面的考核因素,如课堂作业、项目考核、期末考试等。项目考核是在学完一个单元或一阶段教学内容后,教师要求学生做一个能够表达自己已掌握该部分学习内容的项目。平时作业成绩、阶段性项目成绩、期末考试成绩三位一体的综合评定方式,能够比较客观地反映一个学生关于该门课程的掌握程度。

5结束语

以上是我们对高级语言程序设计课程教学改革的一些研究,通过对该门课程的建设与教学改革,从不同角度培养学生思维方式和应用能力,以提高学生的综合素质,培养学生的创新意识和能力,最终提高课程的教学质量。改革现行的计算机课程教学体系,打破旧的教学框架,形成一套教师教学方式、学生学习方式、考试方式等具有较高教学效果的教育方案,以适应人才培养的需要。

Research and Practice of Innovative Teaching of the course of C Language Programming

Abstract: The purpose of this study is to explore the impact and implementation of changes in teaching methods of the course of C Language Programming, which shall be deemed as the compulsory module for college level students who have undertaken a Computing degree program.

Keywords: Phase Teaching, Task Motivation, Practice Teaching, Teaching Process

参考文献

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

[2] 程奎文. C语言教学方法探析[J]. 科学时代,2006,(12):111-112.

[3] 谢娟英. 大学计算机专业C与C++程序设计语言开设探讨[J]. 计算机教育,2007,(50):22-23.

[4] 徐章艳. “C语言程序设计”实验教学的探讨[J]. 电气电子教学学报,2004,(26):84-.

E-mail:huangjunxy@163.com

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- awee.cn 版权所有 湘ICP备2023022495号-5

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务