浅谈C语言教学的方法.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈C语言教学的方法

浅谈C语言教学的方法   [摘要]本文指出了学习计算机语言的目的是学习程序设计的一般方法,并结合C语言的特点,提出了高校教师在课程教学的过程中应重点讲授结构化程序设计的步骤的观点;分析了概念和算法相似性对比讲授的作用,以及采用“任务驱动”和“竞争”相结合的教学方法在C语言实验教学中的成功经验:提出了依托校园网构建C程序设计教学平台的一般要求。   [关键词]C语言 计算机教学 程序设计方法 任务驱动 竞争机制      C语言程序设计课程作为高校计算机技术基础课程体系和教学内容的核心,在高校计算机教育中有着十分重要的地位。通过对该课程的学习与实践,不仅要培养学生在今后的工作中利用计算机解决本专业实际问题的能力,为后续专业课程的理论学习和实践提供有力的基础支撑,还要拓展学生的思维模式,培养学生面向工程应用的意识,增强实践技能。   计算机程序设计语言多种多样,每一种语言都在发展完善中,因此高校教师在教学中除了要使学生能熟练运用C语言进行程序开发以外,更重要的是引导学生从C语言繁琐的语法枝节中解脱出来,真正掌握使用计算机语言进行程序设计的方法,做到举一反三、触类旁通。下面笔者结合几年来从事C语言教学的经验,谈谈在C语言教学中几个比较重要的问题。      一、重视程序设计方法的讲解      学习计算机语言最重要的是让学生在学习的过程中体会计算机语言的精髓――程序设计方法。因为计算机的发展日新月异,没有人保证现在很流行的语言将来就不会被淘汰。但是不论计算机语言怎么变化,基本的程序设计方法是不会有很大变化的。掌握了程序设计的方法就是掌握了程序设计的灵魂,再通过学习相关的语法知识,就能够编写出任何一种语言的程序。因此程序设计方法的讲解是C语言课程讲授的重点。   在教学的过程中,教师要让学生在短时间内领会结构化程序设计思想是行不通的。教师在教学中可以由浅入深、循序渐进地引导学生理解结构化编程的思想。譬如,可以先让学生尝试设计一个简单的四则运算器,要求将每个运算功能用独立的函数来实现,并把参与运算的对象作为函数的参数。当学生完成后,让学生计算不同的算术式,从中体会结构化程序设计易于调试、移植的优点。这个任务让学生对结构化程序设计方法有了感性的认识。   在后续的教学过程中,教师应该把结构化程序设计的思想贯穿在整个C语言的教学过程,体现在每一个具体的程序当中。但是很多时候由于时间和教学进度的关系,教师往往只能简单地分析题意,然后直接给出程序流程图和程序。这样的讲解过程割裂了题目、程序流程图和程序三者之间的推导关系,学生自己编程时仍会感到无从下手。因此教师在教学过程中,应该首先教会学生如何由题意分析出算法,进而对算法进行图形化描述,绘出程序流程图,再使用相应的程序控制语句实现它。教师的言传身教在C语言教学中不仅有利于培养学生良好的编程习惯,还能帮助学生提纲挈领地掌握各个知识点。      二、不同概念和算法的对比讲述      《教学论》认为:“知识的对比是调动学生注意力的好方法,知识之间对比得越清楚,学生的注意力越集中,越能加强概念的理解与知识的掌握。”C语言中的概念比较复杂,规则繁多,而且内容前后衔接得很紧。教学过程中教师将前后的概念对比起来讲述,将会收到事半功倍的效果。比如,指针这一部分有很多相关的概念,如指向变量的指针、指向数组的指针、指向字符串的指针、指向函数的指针等。这些概念很容易混淆,但是将这些概念对比起来讲解,学生就很容易理解了。这些概念的落脚点都在最后两个字――指针,表示它们是同一类型的变量。那么它们不同的地方在哪里呢?关键在于指针变量指向的不同,指针所指向变量的数据类型决定了指针变量的用法。通过这样的讲解,概念的定义就很容易理解,概念的用法也就可以统一了。   除了概念可以对比起来讲述,C语言中还有许多针对同一问题采用不同解决方案的算法。比如,数据的排序问题有冒泡排序法、选择排序法、插入排序法等,求解方程的根有迭代法、牛顿迭代法、二分法和弦截法。这些算法之间既有联系又有区别,讲清楚了算法的联系和区别,也就解决了整个问题。举个例子,用二分法和弦截法求方程f(X)=0的根,其原理都是在给定区间X1,X2内按照算法取得一个L值,用来替代端点X1或X2,从而循环形成新的区间,直到找到近似根为止。它们的算法大体相似,不同点就在于确定X0值的方法不同。所以这两个算法对应的程序结构完全相同,只是计算X0的表达式有所不同。这样的对比讲授大大提高了学生学习的效率。   通过对概念和算法的相似性进行对比讲授,帮助学生理顺它们之间的内在联系,指出异同,有助于学生对C语言中相关知识点进行横向和纵向的融会贯通,从而从整体上把握C语言的知识结构。      三、采用“任务驱动”和“竞争”相结合的教学方法  

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档