王竹云
(浙江财经大学 信息管理与人工智能学院,浙江 杭州 310018)
“C语言程序设计”是计算机专业及相关专业重要的专业基础课。C语言功能丰富,表达能力强,使用灵活,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又兼有低级语言的特长。因此C语言既适用于应用软件开发编写,同时也适用于系统软件研制的编写。该门课程主要培养学生的程序设计理念,使学生掌握程序设计的基本方法,为后续专业课程(数据结构、C++、C#、Java等)打下坚实的基础,并培养学生利用C语言解决实际问题的能力。同时,该课程也是全国计算机软件资格与水平考试、浙江省计算机等级考试的程序员必考课目,在计算机专业及相关专业中是一门举足轻重的课程。但在“C语言程序设计”课程教学中,许多教师和学生都认为C语言涉及的概念比较复杂、规则繁多、容易出错,教师教学和学生学习都感到有一定的困难,并产生不同程度的畏难心理。特别是我们大多数高校将C语言作为计算机专业进校后首先接触的第一门专业基础课,这种现象尤为明显。在教学过程中,笔者根据多年来的教学实践,积极地进行了教材选择以及教学内容、教学方法、教学手段和考核方式的改革,取得了一定的成效。
对学生来说,教材不只是学习的起点和基础,它还应该是学习的一条线索。笔者认为,“C语言程序设计”课程的教材应具有如下特点:理论上讲解清晰,实践上有章可循,循序激进,深入浅出;有习题可供实践、有问题可供思考,例题要精选。按上述思路,我们选定了由电子科技大学出版社出版、王希杰主编的《C语言程序设计》教材[1]。该教材根据建构主义思想设计,形式新颖,采用梯度结构,层次分明,目标明确;在每一章节里都设置足够多的例题、疑点、问题,让学生带着问题看书、学习,能充分调动他们学习的主动性;通过做习题使学生自己知道对学习内容的掌握程度,以便调整学习时间和学习进度,实现学完一章掌握一章。
“C语言程序设计”课程教学内容围绕两个目的进行组织:一是打好程序设计基础,为今后从事软件开发提供必要的学习支持;二是培养学生形成良好的逻辑思维能力,提高分析问题的能力。该课程重点在于培养学生C语言的基本应用和编程能力,弱化部分难、偏的内容。因此,应研究每块教学内容的教学目标、重点、难点及案例,认真分析实验内容,使教学内容重点突出,难点分散,能启发学生思维、培养学生能力和引导学生创新。
由于计算机技术发展相当迅速,作为教师,应该认真分析专业需要,不断地更新课程体系和教学内容,补充先进知识。在教学内容的安排上,突出课程中的重点难点,淡化不重要的内容,突出3大结构化程序设计内容(顺序、选择、循环),要求讲精、讲细、讲深;突出3大应用模块(数组、结构、文件),要求举一反三、实例巩固。同时,加大算法分析内容,将部分计算机经典算法引入课堂中,增加程序编写的趣味性与灵活性。
一是在课堂中运用启发式、任务式、案例式的教学方法,始终让学生带着问题思考、带着任务做题,以案例驱动教学,激发学生学习兴趣,发挥学习的主动性和创造性。
二是采用现代化教学手段进行辅助教学,实施多媒体课件与板书相结合的教学模式。从学生反映看,课件画面清晰,内容简练,不但上课时能获得重要知识点,同样适合课后复习用。同时改变了原来“教室讲课,机房实验”的单一形式,加大了课堂教学内容,对一些特定要求的章节,安排到机房教学,通过边讲边练习开展教学活动。
C语言程序设计是一门实践性很强的课程,既要掌握概念,又要动手编程、上机调试运行,教师应重视实践环节,多指导学生编制程序和调试程序。
该课程实践环节以提高学生独立解决实际问题的能力为目标,进行问题分析、选定算法、编制程序、上机调试、文档资料收集等程序设计过程的训练,使学生在巩固书本理论知识的基础上,加深对程序设计基本概念和编程思想的理解和掌握。实践内容分为上机实践和课程设计两部分,有统一实验大纲和课程设计大纲,并配有教师自编的实验指导书。实验内容按照由浅入深的认知过程进行设置,每个实验项目均设置验证实验和设计实验两个层次。
在上机前,弄清上机实验的指导思想和要求,编写好程序,认真检查、反复思考。上机时,输入程序并完成语法检查,再运行程序,检查运行结果。实习结束,完成实验报告,重点是调试程序的过程及经验总结。
C语言上机是把自己的智慧在电脑上实现运行的过程,同时可以提高实践能力和培养兴趣,对进一步理解C语言具有很好的促进作用。通过调试程序,暴露和发现编程过程中的习惯性错误,也有利于培养良好的编程习惯。教师在指导实验时,应让学生独立解决问题。在学生解决问题和探索的过程中遇到困难不能独立完成时,教师给予及时的指导与解答。这样既锻炼了学生独立调试程序的能力,又增强了学生解决困难调试程序问题的信心。
同时,对学生的实验课当堂考核,对实验报告及时批改,大大提升了实验教学效率和教学效果。此外,为提高学生的综合设计能力,增加了综合设计内容,很好地锻炼了学生的编程能力和独立解决问题的能力。
C语言程序考试的基本要求是:掌握程序设计的基础知识;掌握基本数据结构和常用算法,熟悉算法描述工具——流程图的使用;熟练使用C语言编写完整的程序;掌握程序调试方法并进行程序调试。
C语言统一考试的试题多为标准题(选择题、填空题)、上机编程及改错形式。然而,标准题主要为了便于大规模统一考试的组织和判分,不应该认为能正确答出标准题,就等于深入掌握了程序设计的全部知识和具有很好的编程能力了。所以课程考试还应以掌握C语言程序设计编程方法和提高程序调试能力为目的。上机编程及改错题是对动手能力和程序调试能力的测试,只有通过平时程序调试能力的训练,不断积累调试方法才能获得良好的效果。
考试方式改革:一是改革以往的考试由任课教师自己命题并且考核成绩为平时成绩(30%)+考试成绩(70%)的模式,实现教考分离,建立网上考试系统,把平时测验和期末考试有机结合起来;二是严格按教学大纲要求建立高质量的试题库,并根据教学发展积极探索考试内容和方法的改进,不断充实和完善试题库。
“双师型”的教师,要求教师既要能将课上好,又要能将实际应用带入课程,使教学活动从实践中来,又服务于实践。随着教学改革的深入,现代教育技术和成果的深入应用,以及应用型人才培养的需要,对老师素质提出了更高要求。将实验平台搭建在课堂上,由于需要在课堂上编写程序,而不是已编写好的程序的展示,这就要求教师具有良好的计算机编程工具使用能力、字符输入能力和程序设计能力及调试过程中程序出错时的快速定位查错与及时订正、修改能力。对此,我们要求教师在日常工作中狠下苦功,勤练基本功,积极参与到教学改革实践中,通过参与社会工程项目实践、与IT企业合作、到企业中锻炼以及与企业合作开发等方式,不断积累项目开发经验,按“双师型”要求提高自己,以项目、案例式教学为主,满足了教学的需要。
C语言是计算机编程中最实用的一门程序设计语言。在教学中正确地掌握好教与学的环节,相信一定能将“C语言程序设计”这门课程教好,使学生学好这门课。
教学实践证明,本着教学内容突出基础理论知识应用和实践能力培养的原则,紧紧围绕着应用型人才培养的主线,培养学生程序设计的思想,提高学生程序设计能力,培养学生应用C语言开发软件的能力,并在认真分析和研究的基础上设计并实践教改方案,以应用为目的,以“必需、够用”为度,加强课程教学的针对性和实用性,效果显著。