欢迎来到天天文库
浏览记录
ID:13494955
大小:31.00 KB
页数:9页
时间:2018-07-22
《c语言课程的教学改革与实践》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、C语言课程的教学改革与实践 程序设计课程在计算机科学(ComputerScience,CS)专业新生的教学中起着相当基础的作用,CS专业包括计算机科学与技术、软件工程和网络工程。尽管近年来涌现了很多新的程序设计语言,如java,C#,Python和Ruby等,但C和java语言从2002年以来一直是两种最流行的语言[1]。C语言经常名列软件界知名的“TIOBEProgrammingCommunityIndex”(TIOBE程序论坛指数)排行榜首位。所以,我们依然选择了C语言这种非脚本语言作为一年级新生的必修程序设计课程的语言。 随着信息
2、技术日新月异的发展,社会需求越来越多的CS专业毕业的学生。Internet已经渗透到人们日常的工作、学习和生活当中,一年级CS专业的学生与上世纪90年代相比也发生了很大的变化。在我们学校,2001年到2003年计算机科学与技术专业的学生入学平均成绩在全校几十个专业位居第一;然而,10年之后的2011年,已经降至第28名。PC机和Internet的普及和十年前相比不可同日而语。这些新的变化迫使任课老师必须采用新的方法以应对入门程序语言课程教学的新需求变化。 本文其它部分组织如下:在第二节分析了教学过程中存在的问题之后,将在第三节提出一些方法
3、来解决这些新出现的问题,最后第四节进行小结。 一问题分析 在过去几年的教学中,我们发现,把这门课程安排在一个学期内完成学习,很多学生感觉吃力,在后续课程学习过程中会表现出遇到实际问题编程能力较弱。甚至有少数一些学生不知该如何下手写一个新的程序。本节我们从教和学两个方面挖掘分析其中存在的问题。 1对计算机科学缺乏兴趣 C语言安排在一年级,很多学生在入学前对这个专业认识很肤浅。可以说入学前,几乎所有学生对今后的计算机职业生涯规划都一无所知。换言之,只有相当少数的学生对CS专业有他们自己的爱好兴趣,曾经学习过编程,他们对专业或程序的兴趣可
4、使得以后的学习是自我驱动式的。然而,总有一些学生在C语言课程的初始阶段是毫无兴趣可言。据我们经验来看,很大程度上,课程结束时考试成绩差进一步导致他们对后续专业课程学习缺乏信心。兴趣才是最好的老师。任课老师应该从课程一开始就激发学生的兴趣,才能在后续教学过程中使学生的潜能得以发挥。 2缺乏编程的调试能力 编程新手经常苦于如何像挤牙膏似的写程序开始的代码段,而且,在好不容易写出程序后,不知道如何找出隐藏在其中的错误和漏洞,不知道如何分析程序找出错误。特别是对于成绩较差的学生,即使写很简单的程序,他们也看不出程序到底是错在哪里或者为什么得出不
5、正确的结果,不知从哪里开始排查和定位错误。这样的情况在我们每一届每个班的教学中都会遇到。实际上,即使是熟练的程序员,调试程序的能力都是必不可少的,特别是在开发复杂软件程序的时候。 3优秀生和差生之间的差距问题 在我们计算机学院,招生人数从2001年的359人翻一番到2011年的790人。学生来源于从大城市到农村等不同地区。在第一次课时,我们都会做过简单调查,发现只有少数一些学生在高中学习过程序设计,一般学习BASIC或PASCAL语言,有的学生曾经参加过国家奥林匹克信息学竞赛(NOI)等相关课外活动;大多数学生并没有学习过程序设计。在一
6、年级第二学期,将会有优秀的学生能在ACM广东省赛区比赛中获得奖励。再看成绩较差的学生,在第一次上机课时,他们连键盘的布局都不知道,不知如何开机关机和基本的操作,因为以前从未使用过PC机。这样,优秀生和较差生的差距比十年前扩大了。如果我们教学过程较多顾及后者,前者将不能充分利用好课堂时间发挥他们的潜力。这就会任课老师带来新的挑战。 二改革教学方法 1在课堂教学中提高学生对计算机科学的兴趣 通过和本课程相关的故事,让学生了解计算机科学技术发展史的同时,激发他们对计算机技术的热爱和对科学执着追求及探索精神,逐渐培养兴趣。例如,在第一课时,在
7、讲C语言历史时将介绍C语言之父丹尼斯?里奇(DennisRitchie)的故事,他虽然不是像比尔?盖茨那样为大众所知,但他和肯?汤普逊(KenThompson)对C语言和UNIX操作系统做出了杰出贡献。在C语言和这两位著名计算机科学家互相交织的历史故事当中,学生将体会到什么是科学精神,什么是对计算机科学的贡献和创新。当然,在课程的后续教学过程中仍然会花几分钟加入一些相关故事活跃课堂气氛。学生乐于在课堂中听到这些一般不为人知的故事,潜移默化地增加了兴趣。 另外一个途径是介绍和C语言关联密切的应用实例。虽然C语言被用于开发操作系统和嵌入式系统
8、,但是,这些应用不易于新手所理解。所以,在讲到相关知识时,我们选择一些简短的应用程序演示其运行甚至浏览一下源代码,有些有趣的应用就作为实验课的任务,让学生完成编程。曾做过2个班级
此文档下载收益归作者所有