- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
普通高校C程序的设计基础课程教学的改革初探
普通高校C程序的设计基础课程教学的改革初探
摘要:C程序设计基础课程是许多普通高校计算机和非计算机专业开设的首门高级程序设计课程,这门课程教学效果如何对于学生进一步学习后续课程有着非常重要的影响。为了提高教学质量,本文从理论教学、实践教学和考试评价方式三个方面对C程序设计基础课程教学改革进行了探讨。
关键词:C语言;程序设计;教学改革
中图分类号:G642 文献标识码:A
引言
C程序设计基础课程是许多工科类普通高校计算机和非计算机专业公共基础必修课,多为大学一年级新生开设的首门高级程序设计课程。通过这门课的学习,学生不仅要掌握C语言本身的基本概念和语法规则,更要掌握程序设计的思想、方法和技能,为后续课程的学习和本专业应用打下较扎实的理论和实践基础。通过以往的教学实践,我们发现很多大学新生认为C程序设计基础课程是一门比较难学好的课程,由于内容多、课时紧、知识与高中相比跨度大,使得一些学生在学习过程中有畏难情绪,学习兴趣不够浓厚,往往出现教师教的累,学生学不会的现象。所以提高这门课程的教学质量,激发学生的学习兴趣,对于培养学生程序设计能力、灵活的思维方式以及较强的动手能力都是非常重要的。
1 理论课教学改革
1.1 教学内容的改进
C程序设计基础是一门理论和实践紧密结合的课程,而实践必须要在理论的指导下才能正确进行,所以对于理论课教学内容的设定和调整是提高教学质量的前提。传统的教材基本上是以一门语言的自身体系的脉络来展开,过于注重语句语法的细节,没有把编程解题思路放在主体地位[1],使得部分学生学完后有种“只见树木,不见森林”的感觉,遇到本专业领域的实际问题时,不知道如何去分析和解决,学以致用的能力没有得到很好地培养。
对于教学内容的改进可以从以下两个方面来进行:其一,内容的精简与整合。具体而言就是对于一些过多过细的语法点要进行精简,而对于一些前后联系比较紧密的内容可以不按照教材上的书写顺序来进行整合。例如,输入输出函数中对于格式控制符的介绍很详细[2],在教学中,我们可以将一些不常用的格式控制符的使用说明作为精简的内容,学生在使用时可以通过查阅资料方式来获得。又如,还可以将预处理命令部分作为精简内容,因为这部分内容易于理解可以留给学生进行自学,使得学生在自学过程中提高了独立分析和解决问题的能力。另外,对于指针[3]的学习一直是本门课程教学的重点和难点,由于数组和指针这两部分的教学内容联系紧密,可以将其进行整合。例如,可以在一维数组的讲解中引入指针的概念,使得学生更容易理解什么是指针,从而为进一步应用指针打下良好的基础。
其二,内容的补充与扩展。为了提高学生的程序设计能力,在以C语言本身知识作为教学内容的基础上,还要补充一些数学建模、算法设计、程序设计风格以及软件工程等方面的知识,使得学生在学习过程中不局限在对于一门语言本身的掌握,而是能从更高角度来认识和感受程序设计的精妙之处,做到“既见树木,亦见森林”。另外,随着互联网技术的飞速发展,还可以指导学生充分利用网络来获取书本之外的宝贵学习资源,例如,一些优秀的程序设计论坛,免费的视频学习网站等,从而扩展学生的视野,激发学生主动学习的内在动力。
1.2 教学方法的改进
传统的“填鸭式”教学方法存在的弊端已经越来越明显,为了更好地实现教学内容的组织思路[4],应该采用能够激发学生学习兴趣和主观能动性的教学方法,对传统教学方法进行改进,具体的改进方式主要有以下两方面:其一,基于问题的启发式教学。也就是说在教学中,要围绕所要解决的问题,以学生为主体,教师为“协作者”逐步引导学生掌握解决问题的方式方法。例如,在讲解“冒泡排序”算法时,教师可以在介绍该排序算法思想的基础上,以一组具体的数据为例,引导学生来模拟计算机完成排序的过程,并启发学生如何从程序设计的角度来实现模拟的排序过程,进而由具体数据排序过程扩展到对任何N个数据进行冒泡排序规律的寻找,最终得到整个排序算法的代码框架。在这一过程中,将学生作为解决问题的主体,教师作为辅助者,在一个个问题获得解决的过程中,可使学生获得学习的成就感,从而提高学习兴趣。
其二:适当进行角色互换。在课时允许的情况下,可以事先选择一些内容,让学生自学,然后学生采取自愿原则作为教师讲解这部分内容,而教师则扮演学生角色。待学生讲解完毕后,师生一起以讨论方式对该生所讲解的内容进行点评和补充。例如:在学生学习完一维数组的基础上,就可以选择二维数组作为教学内容进行角色互换,在这一过程中不仅可以提高学生的自学能力和表达能力,激发学习的主观能动性,而且在角色互换的过程中还能让学生体会到教师备课的辛劳,从而在学习过程中能更尊重教师的劳动成果。另外,教师在角色互换过程中,还可以从学生身上获得一些教学
原创力文档


文档评论(0)