1教学内容
在教学过程中不能以是否将C语言所有知识点都讲授完为教学目标,而应该转向以培养学生“分析问题和解决问题”的能力为核心,淡化语法细节,让学生建立完整的程序设计思想。针对不同专业的教学需求和学时数的区别,制定不同的教学大纲,注重能力培养为主,以C语言基本体系结构为基础,覆盖C语言基本语法集。信息工程学院各专业侧重于基本命题的求解和编程,将构造类型和文件的读写作为选讲内容。而计算机学院各专业则侧重于综合性和设计性问题的求解和编程,特别强调指针的应用,动态内存分配以及链表的基本操作,重点培养算法设计能力。
2编写教材
现有C语言教材中,大多数追求大而全,注重语法细节,测试用例多为纯数学问题,这与我校的C语言教学现状有较大的偏差。为此,C语言教学组结合当前我校的实际情况,组织人力根据教学大纲的需求编写了一本适合我校师生的C语言教材。2012年8月,教材《C语言程序设计》在清华大学出版社出版,该教材介绍了程序设计的基本概念和基本方法,不拘泥于语法细节,注重解题思路、算法实现和程序设计思想,在保证概念清晰、准确的前提下力求做到语言通俗易懂,引导学生真正进入程序设计的门槛,为后续专业课程的学习与计算机技术的实际应用打下良好的基础。该教材率先在我校2012级和2013级学生上投入使用,每年使用数大约1300本,普遍受到了好评,同时从出版社反馈回来的信息,除我校学生自用外,其他一些高校也使用了该教材。
3教学手段探索
常规的C语言课堂教学,都遵循语法规则的讲解,然后讲解例子,最后在集成开发环境中实现。这种教学思路有其固有的优点——严谨,然后存在以下几个问题:方式比较枯燥,学生很难长时间保持学生兴趣;学生上课听得明白,而实践时对题目无从下手;导致学生产生误解,认为学习语法知识是为写程序而学,而不是为解决问题而学。因此,对传统的教学模式进行改革就成为必然。在课堂教学过程中,以一个较大的案例为主线主导整个教学,将其按教学知识点分割成小模块,在教学时,从日常生活中常见的例子着手,结合C语言的语法来讲,这样令学生更易理解,且不会觉得枯燥,然后讲解案例的实现,如此整个学期下来,一个较好的案例自然就完成了,达到培养学生“自顶向下、逐步细化、自底向上、逐步积累”的能力。在每个知识点的教学实例讲解中,不直接给出正确的代码,而是主动设置一些错误,引导学生去思考并解决存在的问题,让学生掌握排查程序代码中错误的方法。构建C语言自主学习网站,延伸学习的时间和空间。
4考核模式改革
以往总评考试主要分为平时成绩和期末考核成绩,一般的比例为30%:70%,且期末考试为笔试,以理论知识点为主,侧重客观题,设计性等程序操作题所占比例极少,这种考核方式主要的缺点在于忽略了C语言的实践操作性,会导致即使通过了考试但仍然不会编写程序的现象。针对这个问题,对考核方式做了较大的改变,一是将总评成绩的组成分为三部分:平时、上机实践和期末考试,比例为10%:30%:60%,强调平时上机实践成绩,让学生重视上机实践,而不是简单的交差了事。二是将传统的笔试改革为机试,自主开发了一套考试系统,实现自动评卷,试卷大幅度提高程序操作题所占的比例,题型的设置也多样化,包括程序改错、程序填空和程序设计题,着重考核学生的实际应用能力。
5实践反馈
经过2011至2013三个年级的教学实践,课堂教学效果情况逐步变好,学生也能跟着老师的思路来思考问题,学习效率得到了提高。上机实践时一碰到问题就等待老师来解决的现象减少了,说明学生也初步掌握了如何排查程序中的错误以及调试程序的方法。从后续课程的学习情况来看,普遍反映这批学生较前届的学生有更扎实的编程基础,实践动手能力增强了不少。这些好的转变说明了对C语言教学进行的改革是有效的。本文来自于《软件工程师》杂志。软件工程师杂志简介详见
6结论(Conclusion)
本文叙述了20世纪90年代以来国内外高校计算机入门编程教育语言的变迁,分析了当前C语言程序设计的教学现状以及存在的一些问题,并以五邑大学为例,对C语言程序设计课程教学进行了一些探索和实践。结合五邑大学工科专业(主要以信息工程学院和计算机学院两院各专业为主)C语言程序设计课程的实际教学情况,有针对性的制定不同专业的教学大纲,组织C语言教学组编写合适教材,在课堂教学的过程中探索一些新的教学手段,开发了一套C语言考试系统代替传统的笔试,实现无纸化考试以及自动评分,大大提高了效率,构建了C语言自主学习网站,延伸学习的时间和空间。通过这一系列的教学改革,使C语言的教学效果得到了大幅度的提升,取得了良好的效果。
作者:刘兴林 单位:五邑大学计算机学院
相关专题:化学分析计量 小木虫 明清小说研究